1樓:匿名使用者
你分析程式,首先看main函式,輸入兩個數字~
進入for迴圈,迴圈次數是你輸入兩個數字的差~
進入一個判斷就是90-120之前的i是否等於 rsum(i)的返回值~
那麼看rsum函式:sum=0,進入while迴圈~
sum=sum*10+(j%10);(sum是0,%是代表的取餘,就是除法裡的餘數,比較相近~)
那麼就拿兩個數來舉例,90和99:
90:sum = 0 * 10 + (90 % 10)其實還是0~j = j/10就剩下是90/10=9對吧,!=0成立~
再一次進入while迴圈~sum = 0 * 10 +(9% 10); 這時因為不夠除,所以餘數就是本身。所以sum=9~
j = j/10,因為不夠除,所以它變成0,不滿足while的條件,跳出while迴圈,return出9~90等於9嗎~不等於,所以for迴圈的if不滿足,進行下一輪,執行91~
99:sum = 0 * 10 + (99 % 10)得到sum = 9~j = j/10就剩下是99/10=9對吧,!=0成立~
再一次進入while迴圈~sum = 9 * 10 +(9% 10); 這時因為不夠除,所以餘數就是本身。所以sum=99~
j = j/10,因為不夠除,所以它變成0,不滿足while的條件,跳出while迴圈,return出99,那麼這時候i也是99~所以條件成立,列印出99~
2樓:腦筋急轉
rsum函式的作用就是倒序 比如 rsum(56) = 65main()迴圈裡
從90到120 之間 尋找正序反序一樣的數字 只有三個for (i = n; i < m; i++)if (i == rsum(i))
printf("%d ", i);
//遇到 正序 == 倒序的就輸出
3樓:匿名使用者
此題求的就是 一個數是否左右對稱。
99 = 十位 9 * 10 + 個位 9 = 個位 9 * 10 + 十位 9
101、111 類似
int rsum(int j) 函式所完成的就是從右獲取每個整數的值,然後再逐步反向計算數值。
請高手解答c語言問題,謝謝!
4樓:苦孩子
003.14 0000
3.142
%m.n, 其中m表示佔幾列,n表示保留到小數點後幾位,一般在預設的情況下保留到小數點後六位,
第一個為預設的情況,
第二個為保留到小數點後三位
5樓:喬納森
1. false
2. 0
3. 3.14,3.142
在機子上試試就可以出結果的呀?要勤奮呢。。。還得動腦子思考
c語言二級小問題,急求高手解答,謝謝
6樓:惲潤
a=123.1234 printf("%3.3f",a);
輸出 :123.123
3 取前三整數 0.3 後3位小數
求高手解答c語言問題,考試急用,謝謝!
7樓:曾夢辰
照c++來看除了b全錯,c呢就是c、d。
c語言的問題,請解答下疑問,謝謝
include string.h void sort char name,int n void print char name,int n main int n 5 省略 在c中你所用到的函式必須提前跟系統打個招呼,只有這樣系統才會根據你的函式原型做相應的正確性檢查,一旦發現的函式呼叫有不對的地方,...
c語言問題,C語言問題,謝謝!!!
按照你的要求編寫的c語言程式如下 整型 int 字元型 char 單精度型 float 雙精度型 double 整個程式 6陣列的首地址 主函式main 3strcmp malloc等 c exe c語言問題,謝謝!這樣簡單的 復問題,按照制書上的舉例。套出一bai個來就行了,就是du一個迴圈語句,...
c語言問題詳細解答一下謝謝C語言問題,詳細解答一下,謝謝
輸出結果是 cdeab 函式move char str,int n 的作用是把長度為n字串的尾字元,前移到串首。在main 函式中連續呼叫了n次,即把字串末尾的n個字元前移到串首。輸出結 果 cdeab 分析 只要你理解了move函式 的作用你就能明白整個過程 第一次迴圈呼叫move char st...