-
你的程式邏輯顯然是錯誤的,兩個如果判斷條件是一樣的,最後列印的是變數c,c的值從頭到尾都沒有改變。。。
我猜你正在尋找最大值,我會幫你改變它:
max = a;
if(maxmax = b;
if(maxmax = c;
printf("max=%d",max);
-
房東是要找到三個數字的最大值,上面的程式有以下幾個小問題:
1)printf()和scanf()後面的分號是錯誤的,你應該用英文輸入它,並將c改為max,因為你想輸出最大值。
修改後的步驟如下:
#include
void main() 是給 main 函式寫乙個返回值型別的好習慣,沒有返回值的地方就是 void。
int a,b,c,max;
printf("請輸入三個數字 a、b、c:");分號是錯誤的,應該用英文輸入。
分號是錯誤的,應該用英文輸入。
max = a;
if(max test,例如:9 3 7,結果如下:
-
有三個主要錯誤:
printf("請輸入三個數字 a、b、c:");
scanf("%d %d %d",&a,&b,&c);
有兩行“; “改成英文”; ”
if(maxmax = c;
此更改為 if(maxprintf("max=%d",c);
這裡的 C 改為 max,因為程式最終將輸出 max 的值。
這就是你所看到的,如果還有錯誤,請問;
-
主要問題是穿插漢字。
-
1 全部 i=10, j=6
運算子的優先順序低於 + 運算子。
所以:i%=j+1 實際上可以寫成:i=i%(j+1) 所以:i=3
-
說實話,你的**寫得“很臭”。
1.變數太多了,但名稱是隨機選擇的。
2.資料輸入和資料處理同時進行,雖然這樣可以“略微”提高效率,但就你的程式而言,你根本不需要考慮效率,你應該更多地考慮“邏輯體現**”方面的問題!
3.請確定您要輸入的“一行文字”是否不超過 80 個字元,或者您是否確定它是 80 個字元! 另外,請把它作為字串給結尾的那個'\0'也留個位置!
4.你的**問題是在嵌入式for迴圈的判斷條件下,你寫了j<=79||j!='0'問問自己為什麼你有j!='0'???
-
選擇 C 條件表示式:如果表示式為 true,則值在冒號的左側,否則值為冒號右側的 char a='\76'錯了,原因如下:
是乙個轉義字元:
在 C.
DDD(DDD 是三個枕部的數字)。
xhh(hh 是 2 個十六進製數)。
例如:123(合法,表示十進位數123,十進位為73)128(不合法,八進位中沒有8)。
例如:x2a(合法,十六進製表示 2a,十進位為 42)x2g(不合法。 十六進製系統由數字 0、9 和 f 組成。
C語言用法:
1)應用軟體。Linux作業系統中的應用軟體是用C語言編寫的,因此這樣的應用軟體非常安全。 >>>More