1樓:匿名使用者
i++,sum+=i這裡麵點問題。
應該是i++;sum+=i;吧。
上面那個迴圈前sum的值是0,經過一次迴圈sum+=i,此時i的值是1,sum的值變成1
i++變成2了後,退出迴圈,所以i的值就是2 了,輸出i++是2是因為這個必須等到printf()函式之後才能變成3
下面這個就不一樣了,迴圈的是i++;與sum+=i;無關。
所以當i加到2時,sum+=i;sum的值就是2了。
所以輸出3個2
沒看懂的話請追問。
2樓:匿名使用者
首先說一下,輸出時,那個i++,輸出的時候是先輸出i的值,然後執行i++
第二個程式迴圈體中,那個逗號沒錯,因為沒有大括號,必須用逗號保證為一個語句,但結果應該是複製的時候少了個分號。
第一個迴圈執行過程。
1、 i=1,i<=1,執行迴圈。
2、sum=0,然後,sum=sum+i=13、i=i+1=2
4、i=2>1,迴圈結束。
所以結果輸出為i=2,sum=1, i=2,然後執行i++第二個迴圈執行過程。
1、 i=1,i<=1,執行迴圈。
2、i=i+1=2
3、sum=0,然後,sum=sum+i=24、i=2>1,迴圈結束。
所以結果輸出為i=2,sum=2, i=2,然後執行i++通過分析,輸出結果不一樣的原因一目瞭然。
3樓:l老
很簡單,沒樓上那麼複雜上面i 在for內,只是迴圈下一次加1而程式只執行了一次所以不加1而第二個在迴圈體內,所以加1
c語言的幾個問題,請高手指教
4樓:張三**
分類: 電腦/網路 >>程式設計 >>其他程式語言。
問題描述:1.在c語言中,char型資料在記憶體中的儲存形式是___
a)補碼 b)反碼 c)原碼 d)ascii碼。
答案是d,但是在某些資料中說到「資料在記憶體中是以補碼形式存放的」,這使我有些迷惑不解,請各位不吝指教。
2.表示式18/2*sqrt(的資料型別為___
a)int b)float c)double d)不確定。
答案是c,我不清楚,為什麼不能是b選項。
3.已知 int k=7,x=12
求:1. x%=(k%=5)
2. x%=k-k%5
3. x%=(k-k%5)
4. (x%=k)-(k%5=5)
4.設變數n為float型,m為int型,則以下能實現將n中的數值保留小數點後兩位,第三位進行四捨五入運算的表示式是___
a) n=(n*100+
b) m=n*100+,n=m/
c) n=n*100+
d) n=(n/100+
答案是b,請問a,c,d錯在**。
謝謝各位前輩指教,後輩謝謝了。
解析: 1 概念模糊。補碼,反碼,原碼; 在彙編書上稱為機器數的「碼制」,大部分機器使用補碼制。
ascii碼其實是一種字元**,通用的。一臺計算機的碼制是不能改變的,他是計算機的硬體屬性。ascii碼是軟體屬性,在ascii碼中,32h代表的是空格鍵,你也可以設計一種介面程式,讓32h代表別的字元。
c語言中,char的儲存型別是:「佔用一個位元組的型別」(就叫位元組型吧),機器數的碼制是補碼,儲存的數值所代表的字元符合ascii規則。
2 sqrt()函式的儲存型別是double型。(可檢視數學函式表)
3 這個沒營養哦,(1)x=0 k=2 (2)x=0 k=7 (3) x=2 k=7 (4) error!
4 建議你複習資料型別一章吧,a 的效果僅僅是數值加大了,b 的正確,輸出n仍然有六位小數點,但是,充千分位開始,後面的都是零。
c 明顯錯誤,數值n很明顯的加大了100多倍。
d 數值加大了。
功夫呀。
求助,c語言問題
5樓:鹹魚君的學習館
請把題目資料貼完整。比如隨機的這六個數字的範圍是多少。以及彩票中獎號碼會不會重複這些。
假設數字範圍是1~10 且號碼要求不重複。那麼**如下。若範圍不一致請自行修改。
**截圖。執行截圖。
手打不易,望採納~
請教c語言的問題
6樓:紀景明枚書
既然sum_power(n,k)=pow(n,k)+sum_power(n-1,k)
你至少要定義sum_power(0,k)及sum_power(1,k)兩個初值。
另外你的k是什麼?好象沒有意義喲。
求助一個c語言問題
7樓:
a+k<=i+k 是一個布林值(邏輯值)
若 a+k<=i+k,則 i=1;否則 i=0;
當 i 為數值變數,i = 布林值,布林值自動轉換為 0 or 1
a 沒有錯。
c 錯a=a++,i++;
作為賦值語句,逗號「,」應為分號「;」
作為變數定義,a++未知。
求助,一個c語言問題!!
8樓:壽飛達聽筠
選d給你說一下三目運算子的實現,你就清楚了:
條件運算子要求有三個操作物件,稱為「三目運算子」。
三目運算子條件表示式的形式:
表示式1?表示式2:表示式3
說明:條件運算子的執行順序:先求解表示式1的值,若其為真,則求解表示式2的值,且整個條件表示式的值等於表示式2;若表示式1為假,則求解表示式3的值,且整個條件表示式的值等於表示式3。
所以表示式1的判斷方式是判斷表示式1的值是否為真,所以應該選d,判斷w!=0
為真的條件是表示式1的值不為0,但是不一定就必須為1,所以a不對。
請教C語言學習問題,C語言的幾個問題,請高手指教
死記硬背學c語言是不可能的。c語言是程式設計師和計算機交流的語言,所以要把它當一門語言來學習,好在c語言的大部分單詞跟英語差不多,比如你分不清 什麼時候用printf什麼時候用scanf 那你知道print 和 scan的意思吧?現在如果有人告訴你一個是列印資訊到螢幕,一個是獲取使用者的輸入,你現在...
關於c語言的幾個問題,關於C語言的幾個問題?
1 不用詳細看,參見 2 getch 從標準輸入裝置 鍵盤 讀入一個字元,不回顯在顯示器上.例碼 include include include int main getche 從標準輸入裝置 鍵盤 讀入一個字元,並回顯在顯示器上.例碼 include include include int mai...
c語言簡單的一個問題,c語言的幾個問題
第一個x y是假,所以是0.而z y y x都是真,所以與完後為真,是1.1 z y x 計算機是從左往右計算的z y成立反回值為1,不成立為零。在與後面的比較。1 以為z y為真結果為1 然後比較1 z 結果為假 所以為假 就是0 z y為真 y z為真 真與真還是真 所以為1 所以是 d2 首先...