❶ c語言 編寫一個程序,輸入一個正整數,求出它是幾位數。
思路:求一個正整數n的位數可以先定義一個變數num,並初始化為0,依次把該整數n除以10,直到其為0為止,並且每除一次10,變數num的個數就自加1,最後num的值就是該整數n的位數。
參考代碼:
#include<stdio.h>
intmain()
{
intn,num=0;
scanf("%d",&n);
while(n){
num++;
n/=10;
}
printf("%d ",num);
return0;
}
/*
輸出:
123456
6
*/
❷ C語言中怎樣判斷一個數是幾位
思路:因為整數除以整數的結果是整數,所以一個數每除以10,位數就少1,所以可以採用while循環依次除以10,直到結果為0,每除以10位數加1。
❸ C語言求一個數是幾位數
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{int x,w,i;
cout<<"輸入一個數不多於5位";
cin>>x;
if (x>=99999||x<0)
{cout<<"error";
return 0;}
else if (x>=10000)
{w=5;cout<<x<<"是5位數";}
else if (x>=1000)
{w=4;cout<<x<<"是4位數";}
else if (x>=100)
{w=3;cout<<x<<"是3位數";}
else if (x>=10)
{w=2;cout<<x<<"是2位數";}
else
{w=1;cout<<x<<"是1位數";}
//////////////////////////
int a[5];
for (i=1;i<=w;i++)
{a[i-1]=x%10;
x=x/10;}
for (i=1;i<=w;i++)
{cout<<setw(5)<<a[w-i];}
cout<<endl;
//////////////////
int sm=0;
for (i=1;i<=w;i++)
{sm=sm*10+a[i-1];}
cout<<sm;
return 1;
}
❹ c語言怎麼算整數的位數
輸入一個不多於4位的正整數,求它的位數,並按逆序輸出各位數字,可以參考下面的代碼:
#include<stdio.h>
intmain()
{
intn,ans=0;
scanf("%d",&n);
printf("逆序輸出:");
while(n!=0)
{
int廳漏t;
t=n%10;
n/=10;
ans++;
printf("%d",t);
}
puts("");
printf("位數為:%d ",ans);//位數
return0;
}
(4)c語言求一個數幾位數擴展閱讀:
C語言函數列舉:
C語言asin()函數:求反正弦
C語言atan()函數:求反正切
C語擾扮言atan2()函數:求x/y的反扮李爛正切值
C語言cos()函數:求餘弦
C語言cosh()函數:求雙曲餘弦
C語言log()函數:返回x的自然對數(以e為底的對數)
C語言ldiv()函數:求兩個數的商和余數(針對long類型)
C語言isupper()函數:判斷一個字元是否是大寫字母
C語言isspace()函數:判斷一個字元是否是空白符
❺ C語言怎麼計算一個數有多少位
C語言怎麼計算一個數有多少位的方法:
輸入待計算的數x
定義一個數位的變數int
n=0;
循環,x每次縮小10倍,n=n+1;
最終x會變成0,循環結束
輸出n值
代碼:
#include <stdio.h>
void main()
{
int x,m,n=0;
printf("input x: ");scanf("%d", &x );
m=x; //備份原數,供輸出用
do {
n++;
x /= 10 ;
} while( x>0 );
printf("%d 是%d位數\n", m, n );
}
❻ 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);
}
(6)c語言求一個數幾位數擴展閱讀:
思路詳解:
在C語言中,經常會用到以整數相除來確定一個整形數字的每一位的具體數字是多少,同理,此處可用整數相除來判斷一個數的位數。
首先,使用scanf函數獲取這個數字的值,且賦給變數b,作一個備份。
接著,確定核心思路為,當一個數整除10,第一次結果為1時,這個數是一個個位數。因而,以其作為循環州罩內的主體。
得到了for(i=0;a>1;i++) 粗跡燃a=a/10; 這樣的代碼,最後,輸出結果即可。
❼ 求一個數是幾位數的C語言程序
inta;
scanf("%d",&a);
intsum=0;//a的位數
if(!a)
sum=1;//0的位數是1
while(a){
a/=10;
++sum;
}
printf("%d",sum);
❽ c語言 輸入任意一個整數,判斷其是幾位數
不會C語言。給出幾個演算法,代碼是fortran的,供參考。
第一種,用整數除法。對於整數a,連續用10除,直到商為零。除法的次數,即為位數。
這個演算法對於正負整數和零都能獲得正確的結果。
❾ C語言 編寫一個程序,輸入一個正整數,求出它是幾位數。
求一個正整數n的位數可以先定義一個變數num,並初始化為0,依次把該整數n除以10,直到其為0為止,並且每除一次10,變數num的個數就自加1,最後num的值就是該整數n的位數。
#include <stdio.h>
int main()
{
int n,num=0;
scanf("%d",&n);
while(n){
num++;
n/=10;
}
printf("%d ",num);
return 0;
}
/*
輸出:
123456
6
*/
(9)c語言求一個數幾位數擴展閱讀:
正整數,即大於0的整數,如,1,2,3…
0既不是正整數,也不是負整數(0是整數)。
負整數,即小於0的整數,如,-1,-2,-3…
知道正整數的一種分類辦法是按照其約數或積因子的多少來劃分的,比如僅僅有兩個的(當然我們總是多餘地強調這兩個是1和其本身),就稱之為質數或素數,而多於兩個的就稱之為合數。
❿ C語言 編寫一個程序,輸入一個正整數,求出它是幾位數。
/*功能:輸入一個任意長度的正整數,求出它是幾位數。*/
#include<stdio.h>
int main()
{
int number; int count = 0;//記錄個數
scanf("%d", &number);
if (number == 0)
{
printf("number is %d\n",count+1);//0是一位數
} else
{
while (number != 0)
{
number = number / 10;
count++;
} printf("number is %d", count);
} return 0;
}