3 回答

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊
設(shè)一個(gè)數(shù)為n,則在C語言中其個(gè)位、十位、百位、千位依次這樣計(jì)算:n/1%10,n/10%10,n/100%10,n/1000%10
代碼如下:
#include<stdio.h>
int main(){
int n = 123456;
int unitPlace = n / 1 % 10;
int tenPlace = n / 10 % 10;
int hundredPlace = n / 100 % 10;
int thousandPlace = n / 1000 % 10;
printf("個(gè)位:%d\n十位:%d\n百位:%d\n千位:%d\n", unitPlace, tenPlace, hundredPlace, thousandPlace);
getchar();
return 0;
}
運(yùn)行結(jié)果如圖:
擴(kuò)展資料
C語言的運(yùn)算符包含的范圍很廣泛,共有34種運(yùn)算符。C語言把括號(hào)、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C語言的運(yùn)算類型極其豐富,表達(dá)式類型多樣化。靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語言中難以實(shí)現(xiàn)的運(yùn)算。

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊
1 設(shè)一個(gè)數(shù)為n,則在C語言中其個(gè)位、十位、百位、千位依次這樣計(jì)算:n/1%10,n/10%10,n/100%10,n/1000%10
2 示例
123456789101112 | #include<stdio.h> int main(){ int n = 123456; int unitPlace = n / 1 % 10; int tenPlace = n / 10 % 10; int hundredPlace = n / 100 % 10; int thousandPlace = n / 1000 % 10; printf ( "個(gè)位:%d\n十位:%d\n百位:%d\n千位:%d\n" , unitPlace, tenPlace, hundredPlace, thousandPlace); getchar (); return 0; } |
3 運(yùn)行結(jié)果

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊
假設(shè)那么數(shù)為x,不知道是多少位的.
你可以使用下面的表達(dá)式:
個(gè)位:x%10;十位:x/10%10;百位:x/100%10;千位:x/1000%10。
C語言有以下幾種取整方法:
1、直接賦值給整數(shù)變量。如:
int i = 2.5; 或 i = (int) 2.5;
這種方法采用的是舍去小數(shù)部分,可以用于你的問題。
2、C/C++中的整數(shù)除法運(yùn)算符"/"本身就有取整功能(int / int),而下面介紹的取整函數(shù)返回值是double。整數(shù)除法對(duì)正數(shù)的取整是舍去小數(shù)部分,但是整數(shù)除法對(duì)負(fù)數(shù)的取整結(jié)果和使用的C編譯器有關(guān)。
3、使用floor函數(shù)。floor(x)返回的是x的整數(shù)部分。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函數(shù)。ceil(x)返回的是不大于x的最小整數(shù)。如:
ceil(2.5) = 2
ceil(-2.5) = -2
floor和ceil對(duì)于正數(shù)沒有區(qū)別,但是對(duì)于負(fù)數(shù)結(jié)果不同。floor()是向負(fù)無窮大舍入,floor(-2.5) = -3;ceil()是向正無窮大舍入,ceil(-2.5) = -2。
添加回答
舉報(bào)