1樓:匿名使用者
main()//程式入口
printf("各位數之和s=%d\n",s);
printf("其反序數=%d\n",a);
}整個程式就是為了得到輸入的數的逆序排列數以及所有數字之和
2樓:章鑫彬
#include
main()
printf("各位數之和s=%d\n",s);
printf("其反序數=%d\n",a);}如:
輸入:123
輸出各位數之和s=1+2+3=6
輸出反序數a=321
3樓:匿名使用者
//我想關鍵就是這個位置吧
while(n)
以n=1032為例:
m=n%10-->2-->m=2 //最後一位數字n=n/10-->n=103 //這裡是整除(也可以理解為去掉最後一位數字)
s+ =m-->s=s+m(0+2)-->s=2;//統計各位數字之和(個位-->十位-->百位......)
判斷n是否為0,n=103!=0
接著執行迴圈;
m=3n=10
s=2+3=5
依次類推,當n=1時,m=1,n=0,s=2+3+0+1=6 此時n=0迴圈結束
//逆序
while(n)
//三次 a=23*10=230,m=0,a=230//四次 a=2300 ,m=1,a=2301//也可以這樣不用a ,當然這樣沒儲存逆序數while(n)
你可以自己除錯,看每個變數的變化情況.(不會的話學習一下,很簡單)
c語言問題,求大神解釋以下程式ret,getchar有什麼作用,最好能夠詳細點,謝謝,我是小白,初學者。,。
4樓:匿名使用者
ret這裡是用來接收scanf語句的返回值的。
scanf是個讀取輸入資料
的語句,返回值是成功讀取的資料個數。例如ret=scanf("%d,%d,&a,&b");這句,如果成功讀取了a和b,那麼scanf會返回2表示讀入了兩個資料。
下面的迴圈就是表示如果讀取的不是兩個數,就重新提示使用者輸入a和b。
至於getchar()是讀入一個字元,getchar()可以讀入包括換行符在內的ascii碼字元,使用者在輸入完a和b後一般會按一次回車,這個getchar就是用來讀取這個回車符的。
C語言問題,求解答,C語言問題,求大神解答
f函式中的a每次使用外面傳入的2,b是區域性變數,後每次都是1,c是靜態變數,函式每次執行會在上次值 1 所以最後執行三次,輸出為789 程式的輸出是 789 c語言問題,求解答 執行abc a 1 首先進行巨集代換過程,是把 a 1去替代 定義的巨集函式 x x 中的x,即得到式子 a 1 a 1...
c語言,程式問題,求大神解釋。謝謝
i 可以寫在switc語句裡面,但是如果寫在switc語句裡面,就要在每一個case default中都加上i 你可以用很簡潔的方式解決問題,也可以用很繁瑣的方式解決問題,就是這個區別。什麼意思du?當然可以啊,上面的zhi 等價於 daowhile sym 回if flag 0 i用來標識執行的動...
c語言遞迴求逆序,求大神解釋。求解釋下這樣遞迴的思想,不明白為何
由於題目中限定了遞迴 又禁止使用了那麼多的輸入輸出函式 那麼能用的 只有getchar 和putchar了要逆序輸入 比如有3個字元。那麼輸入輸出的順序就應該是 getchar getchar getchar putchar putchar putchar 也就是 最後一個get到的,要最先輸出。這...