新聞中心
C語言中如何將一個數(shù)字的各個位上的數(shù)分別提取?
1、方法一:
創(chuàng)新互聯(lián)公司于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站制作、成都做網(wǎng)站網(wǎng)站策劃,項目實(shí)施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元古縣做網(wǎng)站,已為上家服務(wù),為古縣各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108
我的做法是先將整型轉(zhuǎn)為字符串,再將轉(zhuǎn)后的字符串取需要的字符轉(zhuǎn)為整型,過程說起來復(fù)雜,但是寫起來只要兩行代碼就行了~
#include ? stdlib.h ?
#include ? stdio.h ? ?
int ? main(void) ?
{ ?
int ? number ? = ? 12345; ?
char ? string[25]; ?
itoa(number, ? string, ? 10); ?
printf("integer ? = ? %d ? string ? = ? %s\n", ? number, ? string); ?//將整型轉(zhuǎn)換為字符創(chuàng)
printf("%d",(int)string[0]-48); ? //將字符串轉(zhuǎn)為整型 ? ?
return ? 0; ?
}
2、方法二:
int a[100];
int i;
假設(shè)x為INPUT的數(shù)
a[100]用來存放各個數(shù)位(0用來存放一共有幾位,1用來存放個位,,依次)
i=0;
{a[++i]=x % 10;
x/=10;}while (x);
a[0]=i;
有沒有大神能指點(diǎn)c語言如何用自定義函數(shù)求一個數(shù)的位數(shù) 謝謝大神
#include?stdio.h
int?wei(int?num)
{
int?n=1;
while(num/10)
{
n++;
num?=?num?/?10;
}
return?n;
}
int?main()
{
int?a=100,b=1000,c=10000;
printf("%d:%d\n%d:%d\n%d:%d\n",a,wei(a),b,wei(b),c,wei(c));
return?0;
}
C語言怎樣提取一個數(shù)的十位個位百位千位?
設(shè)一個數(shù)為n,則在C語言中其個位、十位、百位、千位依次這樣計算:n/1%10,n/10%10,n/100%10,n/1000%10
代碼如下:
#includestdio.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("個位:%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語言把括號、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C語言的運(yùn)算類型極其豐富,表達(dá)式類型多樣化。靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級語言中難以實(shí)現(xiàn)的運(yùn)算。
參考資料:百度百科--C語言
怎樣用c語言實(shí)現(xiàn)取一個數(shù)字的個位
取一個數(shù)字的個位,可以分為取整數(shù)的個位,和浮點(diǎn)數(shù)的個位兩種情況:
1)取一個整數(shù)的個位,可以直接求余
例如 變量 int num=127;
num%10 就可以得到個位的7
2)取浮點(diǎn)數(shù)的個位
因?yàn)?是不能對浮點(diǎn)數(shù)直接運(yùn)算的,因此需要強(qiáng)制取整之后執(zhí)行
例如變量 double num=27.83;
((int)num)%10 就可以得到個位的7
網(wǎng)頁名稱:c語言取個位數(shù)的函數(shù) c語言如何取位
文章鏈接:http://fisionsoft.com.cn/article/dddiihi.html