一道c語言的小題目跪求解答,一道C語言的小題目,跪求解答!

2021-04-30 14:33:53 字數 3293 閱讀 6619

1樓:匿名使用者

問題在於表示式c=(getchar()!='\n')注意這裡的的括號

c= (getchar()!='\n')本質上是把子表示式getchar()!='\n'的值賦給變數c,換而言之c的值必然是表示式getchar()!='\n'

注意,這裡子表示式getchar()!='\n'是一個關係表示式,即判斷輸入的字元是否是'\n',也就是說其值不是真(1)就是假(0),沒有第三種情況了

也就是說c的值不是1就是0,但是ascii碼值表中碼值為0或1的必然不會是字母數字字元

2樓:匿名使用者

for (;(c=getchar())!='\n';) printf("%c",c);

你應該講c賦值之後再判斷是否不等於換行,你的程式括號加錯位置了,請對比你的和這裡給出的就能看出來了

abcdef

abcdef請按任意鍵繼續. . .

c語言的一道題目,跪求大神每一步詳細解答 30

3樓:可靠的雲朵

定義幾個變數;

外層for迴圈是n是100~200間的各數;(因為只有奇數才有可能是素數,所以n每次增2)

變數k是這個數的開方(為了簡便減少計算次數)內層for迴圈i是從2~這個數的開方k;

如果這個數n能夠整除這個數,那麼這個數n肯定不是素數,跳出內迴圈,外層n累加2,繼續進入內迴圈。。。如此計算下去,如果內迴圈結束了,還是不符合if這個判斷條件,那麼說明這個數肯定是素數,即輸出這個素數,m的作用是6個素數一換行

4樓:匿名使用者

首先main函式不用說了吧?

main函式第一行中定義了四個整形變數:n, k, i, m。

從1處可以得知,n的含義是n依次儲存從101到200的所有數字,以便程式判斷這些數字是否為素數。

在1處的for迴圈體中,將k定義為了n的平方根。從後面我們也可以看出,該程式檢驗n是否為素數的方法是依次用2, 3, 4, ..., k去除n,如果有一個數能整除n,就說明n不是素數。

那麼為什麼是一直除到k而不是除到n-1呢?這是因為:

如果我們已經證明在區間[2, sqrt(n)]之間沒有數字能夠整除n,那麼對於任意一個大於sqrt(n)的整數,要使這個整數能夠整除n,則n必然能夠找到另外一個小於sqrt(n)的因子,但是這卻與我們已經證到的結論矛盾,因此此時任意一個大於sqrt(n)的整數都必定無法整除n,因此判斷一個數是否為素數,只需要從2一直除到sqrt(n)就可以了。

那麼那個2處的i >= k+1是什麼意思呢?

從第二個for迴圈可以得出這樣一個結論:如果n為非素數,則肯定有一個整數i能夠整除n,那麼那個break語句肯定就會被執行一次。一旦執行了break語句,則i變數則永遠不可能大於k(因為最後一個i++這條語句肯定得不到執行),也就是i永遠不可能大於或等於k+1。

反過來說,如果n為素數,則執行完第二個for迴圈後,i的值必定為k+1,因此if判斷語句塊內的內容就肯定能夠被執行,從而輸出素數n的內容,並且將輸出控制變數m的值遞增1。

那個m和d我估計應該是控制輸出的格式,就是輸出來以後每一行都是d個數字。

一道c語言題目,求解答!!!!!!!

5樓:花落へべ若相惜

scanf()函式中沒有精度控制。

如: scanf("%5.2f",&a); 是非法的。不能企圖用此語句輸入小數為2位的實數。則排除c

b,d沒有%排除

6樓:與子如初見

格式輸入嚴格按照格式輸入就好了,如果是c的話輸入得是

6.2283.1900

6.2在輸出的時候有作用,再輸入的時候沒作用。

求一道c語言題目解答

7樓:戈壁與清潭

pow() 函式原型是 double pow( double, double)

n=pow(1+rate,year); 這句裡year 是int 型,改為double

另外輸入函式

將%f 改為 %lf

8樓:匿名使用者

這句話的意思是 你輸入的時候要用這種形式:

money=1000.0,year=2.0,rate=0.5money 這些單詞要你自己輸入

9樓:雨夜

#include

void main()

你只要兩位小數用float吧!因為float跟%f搭配,另外就是scanf()裡面別寫money=%f之類的。因為你輸入時也要這樣輸。其他的也就沒什麼啦!!

10樓:匿名使用者

你這個需求是要按照複利計算還是按照單利計算呢?

11樓:匿名使用者

你的呼叫的數學函式沒有函式說明和函式定義

一道c語言的題目,求大神解答

12樓:匿名使用者

#include

#include

int main()

else

break;

}printf("%f\n",y); //列印y的值return 0;}

13樓:匿名使用者

// 不太明白你要幹什麼,條件不怎麼全啊

#include

#include

#include

int main()

else

break;

}printf("y=%f\n",y);

}return 0;}

14樓:匿名使用者

這個沒什麼可寫的啊?就是一個實現開方的功能模組,你要怎麼寫啊?

15樓:匿名使用者

y=z平方

前提必須是x>y

16樓:暗夜公爵

算個結果就可以了,謝謝大家

17樓:義燁定元魁

intpalindrome(char

*string)

if(i

return

0;else

return1;}

一道題c語言題求解答,一道c語言題,求解答

要注意以下幾點 要求pi的精度是0.0005,那麼在最後返回值運算到乘以2的時候精度會增加一倍。因此程式中精度的判斷值減半,變成0.001 雙精度型的變數跟整型變數之間運算的時候,建議將整形的資料強制轉換成雙精度型的,以免計算機位數差異產生誤差。3.使用整形i來計算迭代,建議使用長整型型別 long...

一道c語言題目,一道C語言題目

就是個斐波那契數的列遞迴解法啊,k項 k 1項與k 2項的和。你可以函式慢慢算。fib 0 0,fib 1 1,fib 1 1,fib 3 fib 1 fib 2 0,1,1,2,3,5,8,13.fib 7 fib 6 fib 5 fib 5 fib 4 fib 4 fib 3 fib 4 fib...

求高人解答一道c語言題目,求高人解答一道C語言題目

include include int crypt int decrypt void main int crypt if fp1 fopen file2.txt w null while 1 else break printf d n i fclose fp fclose fp1 return 0 ...