c語言 判斷一個數的位數

代碼如下:

#include<stdio.h>

int main()

{

int a,b;

int i;

printf("請輸入一個數字:");

scanf("%d",&a);

b=a;

for(i=0;a>1;i++)

{

a=a/10;

}

printf("%d是%d位數 ",b,i);

}

(1)c語言個位數擴展閱讀:

思路詳解:

在C語言中,經常會用到以整數相除來確定一個整形數字的每一位的具體數字是多少,同理,此處可用整數相除來判斷一個數的位數。

首先,使用scanf函數獲取這個數字的值,且賦給變數b,作一個備份。

接著,確定核心思路為,當一個數整除10,第一次結果為1時,這個數是一個個位數。因而,以其作為循環內的主體。

得到了for(i=0;a>1;i++) a=a/10; 這樣的代碼,最後,輸出結果即可。

㈡ 用c語言編程(輸入一個四位數,求出它的個位、十位、百位、千位)

1.int i=2123 .
2.int one,two,three,four.
3.one=i%10;//個位.
4.two=(i/10)%10;//十位.
5.three=(i/100)%10;//百位.
6.four=(i/1000)%10; //千位.

㈢ 怎樣用c語言實現取一個數字的個位

取一個數字的個位,可以分為取整數的個位,和浮點數的個位兩種情況:
1)取一個整數的個位,可以直接求余
例如 變數 int num=127;
num%10 就可以得到個位的7
2)取浮點數的個位
因為%是不能對浮點數直接運算的,因此需要強製取整之後執行
例如變數 double num=27.83;
((int)num)%10 就可以得到個位的7

㈣ C語言中怎樣判斷一個數是幾位

思路:因為整數除以整數的結果是整數,所以一個數每除以10,位數就少1,所以可版以採用while循環權依次除以10,直到結果為0,每除以10位數加1。

㈤ c語言 求個位數

a%10就可以了.
%是求余數,
用10求余數一定是被除數的個位數
如123%10結果是餘3