1樓:匿名使用者
#include
void main()
改錯第一個,scanf後要有&,for迴圈裡的是分號,其餘的不想做,太多了
2樓:匿名使用者
樓主,太多了吧
(3):
int a;
if(ch=' ');
else a=0;
printf("%d",a);
3樓:匿名使用者
改錯第4個
sum應定義為float
#5 i #10 if前加else 4樓:喜羊羊 #include "stdio.h" int main() int sum=0,i; for (i=2;i<=100;i=i+2)sum=sum+i; return 0; #include "stdio.h" #include "string.h" int main() char s1[6]={}; char s2[6]=; int i; printf("輸入字串: \n"); gets(s1); for (i=0;i<5;i++) if(s1[i]!=s2[i]) break; if(i==5) printf("this word is water\n"); else printf("this word is not water\n"); return 0; c語言基本問題 5樓:岔路程式緣 一、c語言規定總是從main()開始執行的(這個函式也叫“主函式”)。因此,你發來的題目中的(1、6、8)敘述都是錯誤的,都應該選擇f。 二、第2題中,c語言對其資料在記憶體中所佔用的實際位元組數,隨著程式中宣告的資料型別以及資料的多少而變化,c語言本身並沒有明確規定。這題應該選f。 三、第3題,c語言中強制型別轉換,僅對轉換的語句有效,而不會改變所轉換變數的原有資料型別,這是正確的,應該選t。 四、第4題,i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++);實際上是一個程式執行類題目,執行這一句時,先取得ij變數的值,其中有一個++i(先自增),一個j++(後自增),先自增的i先加上1,也就是i=8+1=9,而後自增的j在列印之後再加1,所以列印時仍是j=10。所以列印出來是:9 10 9 10。 這是正確的。 五、第5題“c語言中放在“”之間的內容都被視為字串的一個構成部分,都可以在螢幕上原樣顯示”的說法是錯誤的。舉一個例子就可以了:print("%d",8);是列印不出來%d的,它只能列印出來8。 所以它是錯的。 六、第7題,設x、t均為int型變數,則執行語句"x = 10;t = x && x >10;"後,t的值為,這個題目好似沒有寫完,成了填空題了,現在來看計算過程,t = x && x >10,根據計算的優先順序,>號是6級,&&是11級,先計算x >10,因為x=10,故x>10是不成立的,所以它的值是0,第二步再計算x && 0=10 && 0=0。t的值最後應該是0。 希望對你有所幫助。 6樓:匿名使用者 第一題:f,是從主函式的第一條語句開始執行的。 第二題:t,每一種資料型別在c語言中都佔用固定的位元組數。 第三題:f,強制型別轉換會改變資料型別。 第四題:f,輸出結果為8,10,9,10。 第五題:f,不能被原樣顯示的有預處理命令中被包含檔名(如"stdio.h")、printf函式的轉義字元(如"\n")。 第六題:f,程式執行是從主函式第一條語句開始,執行到主函式最後一條語句結束。 第七題:t的值為0,因為x>10的值為0。 第八題:f,c程式執行從主函式開始。 7樓:匿名使用者 f( t )c語言程式是從原始檔的第一條語句開始執行的。 //c語言程式是從主函式中的第一條語句開始執行的 2. f( t )c語言對其資料在記憶體中所佔用的實際位元組數是有明確規定的。 //c語言對其資料在記憶體中所佔用的實際位元組數沒有明確規定,比如:整型資料在turbo c中佔2位元組,在vc中佔4位元組 3. t( f)c語言中強制型別轉換不會改變原變數的原有資料型別。 //強制型別轉換不會改變原變數的原有資料型別,得到的結果是轉換後的型別資料 4. t( f )程式段:i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++);其結果9,10,9,10. //先執行j++,輸出10 再執行++i,輸出9,然後輸出i和j的值,分別是9,10 5. f( t )c語言中放在“”之間的內容都被視為字串的一個構成部分,都可以在螢幕上原樣顯示。 //c語言中放在“”之間的內容都被視為字串的一個構成部分,前半句是正確的 //都可以在螢幕上原樣顯示。不一定,比如有些轉義字元,換行符\n,退格\b等等 6. f( t )c程式的執行是從程式的第一行開始,一直到程式的最後一行結束。 //c程式的執行是從主函式的第一行開始,一直到主函式的最後一行結束 7. t( f)設x、t均為int型變數,則執行語句"x = 10;t = x && x >10;"後,t的值為。 //執行語句"x = 10;t = x && x >10;"後,t的值為0 8. f(t )c程式的執行從程式頭開始。 //c程式的執行是從主函式的第一行開始,主函式可以位於程式中的任何地方,不一定是程式的開頭 8樓:匿名使用者 1經常程式執行是由啟動**開始的,而啟動**一般都是彙編寫的,2.不確定的,資料型別定義的時候是確定的,執行的時候根據硬體多不同會有所不同 3.毫無疑問肯定會了,要不還說什麼強制呢,對吧4.應該是8,10,9,10吧。 因為printf語句就執行了一次,所以第一個i是8,第二個i是先+後輸出應該是9,第一個j是9,第二個j是先輸出後++,而程式只執行了一次,所以還是沒有+,等於10。 5.雙引號是c的字串格試符,所以是對的。 6.同第一題 7·沒有看明白 8.同第一題 9樓:匿名使用者 1、假,從main開始執行。 2、假,int的長度不明確。 3、真。 4、假,從左向右計算,8,10,9,10 5、假,有轉義字元。 6、假,見1 7、t=0 8、假,見1 10樓:蹉燦紫婉娜 ("a/1000>=1") 你這句寫錯了,應該是 (a/1000>=1) 把引號去掉 11樓:狂雲德潮鶯 1·c語言程式的基本單位是(b函式)a過程b函式c子程式d標誌符2·如果a=5<<2,為什麼a=20? a=5<<2相當於a=a*2的平方 即a=5*4=20 3·不能正確對字串賦值的是(a 二維陣列不應該這樣賦值)a char st[4][5]=;b char *s;scanf("%s",s); cchar *s;s="abcde";d char s[5]=; 4·正確輸入字元組a的是(d)a gets('a'); bscanf("%c",a); cscanf("%s",a);d gets("a"); 5·如果c=35,為什麼printf("%d\n",c&c)的值為35?那個c&c是什麼東西。&在這裡是“按位與”運算 c&c化為二進位制的比較,都為1 則為1,否則為0.再化回10進位制數 12樓:淦菀歐陽陽冰 if("a/1000>=1") 這句應改為 if(a/1000>=1) 不然永為真 我先把運算符號解釋一下你就會做了 讀作 邏輯或。屬於二元運算,當且僅當兩個運算量的值都為 假 時,運算結果為 假 否則為 真 對於邏輯或運算,如果第乙個運算元被判定為 真 系統不再判定或求解第二運算元。讀作 邏輯與。屬於二元運算,當且僅當兩個運算量的值都為 真 時,運算結果為 真 否則為 假 對於邏... 變數要定義為全域性變數,就是要在函式體外面定義變數,同時不能加關鍵字static靜態的,靜態全域性變數只能在本檔案內使用,你先在乙個檔案中定義變數,比如 include int a int main 在另外的檔案中,如果你想要使用變數a,那麼首先要extren int a extren關鍵字的意思是... 三天打魚 是三元運算 條件?成立返回這個 不成立返回這個x大於10條件不成立所以返回x 10 結果是0w z 或運算 由於前面的w不為0 所以直接返回結果1 而後面的z 不執行 z值不變 w z w取反大於z 的優先順序高 所以先取反w w不等於0 所以取反結果是0 而0不大於z所以返回0 w z ...C語言的問題,C語言基本問題
c語言基礎問題,C語言基本問題
關於c語言的基礎問題,C語言基本問題