C程式 兩個相似程式的不同結果

2022-06-12 04:50:12 字數 760 閱讀 7348

1樓:匿名使用者

上邊的程式原因在於 陣列b沒有初始化。其結果是不確定的。

可在定義b的時候初始化,即 char b[100] = ;

而這樣還會出現一個問題,也就是scanf輸入的問題,它只會保留空格之前的字串,也就是如果輸入 i love you ,僅是將i儲存到了陣列b中,若想達到第二個程式的效果,可以用 gets函式。

2樓:紫翼魔狼

#include

int main()

printf("the length of the string is %d",l);

system("pause");

}還有,%s用scanf輸入的時候,空格認為字串結束。

for(i=0;i<100;i++)

else break;//注意這裡

}這個迴圈,如果沒有else break。那麼當迴圈內部條件不符合的時候,仍然會繼續外部的迴圈。 所以導致l還在繼續增加。

3樓:匿名使用者

你的第一個結果應該是隨機的,一次和一次不一樣,因為你沒有初始化,在陣列中沒有佔用的空間中是上次應用程式執行過的垃圾值,所以字元`\0'是隨機的!輸入字串用gets函式,會忽略空格!

4樓:

第一 沒初始化 第二字元用gets函式

5樓:大連醜男

我靠加個 break;好不好

if(b[i] == '\0')

C語言問題為什麼兩個程式相同的思路結果不一樣

兩段程式,在i的迴圈裡,只有i 1取到的值是一樣的。i 1時,資料已經不相同了。主要是正負標誌變數flag,導致的。建議你兩個程式都除錯一下,你就知道了。第一次迴圈 i 1的時候是一樣的.當i 2的時候就不一樣了.這時你的程式,sum sum d c flag flag是 1,世紀是 sum sum...

兩個不同的省,辦結婚證程式

春節七天假一般民政局也休息 在你們雙方任何一方的戶籍地的民政局辦結婚手續,要雙方的戶口本 身份證 一 結婚登記條件 1 男女雙方必須自願結婚 自主把握 2 結婚年齡 男年滿22週歲 女年滿20週歲。3 雙方均無配偶 未婚 離婚 喪偶 4 雙方沒有直系血親和三代以內旁系血親關係 自主提示 二 結婚登記...

c如何實現同時啟動兩個窗體程式

1 同時啟動多個視窗類,首先輸入 using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.windows.f...