C语言怎样做输入一个数读出它的位数

作者&投稿:父崔 (若有异议请与网页底部的电邮联系)
设一个计数器 #include<stdio.h>
#define N 5
main()
{
int a[N],i,count=0;
printf("请输入一个位数不大于5的正整数\n");
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
count++;
}
printf("位数是\n");
printf("%d\n",count);

getchar();
getchar();
} 注意for循环里面的count++,那就是循环一次count加一次,最后输出count 它的值就是位数了

一:
#include <stdio.h>
void main()
{
int a,i=0,sum=0;
scanf("%d",&a);
while(a)
{
sum+=(a%10);//sum是个位数之和
a/=10;
i++;//i为位数
}
printf("%d位数, 各位数字之和为%d\n",i,sum);
}

二:
#include <stdio.h>
int issxh(int number)
{
int x1,x2,x3;
x1=number/100; //百位数
x2=(number/10)%10; //十位数
x3=number%10; //个位数
if(x1*x1*x1+x2*x2*x2+x3*x3*x3==number)
return 1;
else
return 0;
}
void main()
{
int m,n;
scanf("%d%d",&m,&n);
for (int i=m;i<=n;i++)
{
if(issxh(i))
printf("%d ",i);
}
}

程序如下:

#include<stdio.h>
main()
{
int num;
int bits=0;
printf("input a number:\n");
scanf("%d",&num);
while(num>0) {
bits ++;
num = num/10;
}
printf("the bits: %d\n",bits);
getchar();
}

如何用C语言编写一个程序,内容是输入一个数字即可得到它的位数~

如果有负数或者小数要分类讨论,这是非负整数情况:
#include
int main()
{
int n,cnt=0;
scanf("%d",&n);
while (n!=0)
{
n/=10;
cnt++;
}
printf("%d
",cnt);
}
如果是有小数或者负数(包括小数点和负号):
#include
#include
char s[1005];
int main()
{
int cnt;
scanf("%s",s);
cnt=strlen(s);
printf("%d
",cnt);
}

#include


int main()
{
int n,count,sum,tmp;
printf("Input an integer:");
while(scanf("%d",&n)!=EOF && n>=0)
{
count=1;
sum=0;
while(n>0)
{
tmp=n%10;
sum+=tmp;
n = n/10;
if(n>0)
{
count++;
}
}
printf("count=%d,sum=%d
",count,sum);
printf("Input an integer:");
}
return 0;
}

C语言怎样做输入一个数读出它的位数
答:} 注意for循环里面的count++,那就是循环一次count加一次,最后输出count 它的值就是位数了

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(...

c语言大神求破。。。 输入一个实型数,输出它整数部分的位数。
答:将这个浮点数强制为整型赋给一个int型变量,然后用10去除这个int型变量,几次能除到结果为0就是几位。代码如下:include "stdio.h"int main(int argc,char *argv[]){int n,t;double x;printf("Input x(float,x>=0)...\nx=");if(scanf("%lf",&x)!=1 || x<0 || x>0x7FFFFFFF...

用c语言编程:输入一个四位数,求出它的个位、十位、百位、千位_百度知 ...
答:scanf("%d",&a);printf("个位:%d,十位:%d,百位:%d,千位:%d",a%10,a%100/10,a%1000/100,a/1000);system("pause");return 0;} C语言有以下几种取整方法:1、直接赋值给整数变量。如:int i = 2.5; 或 i = (int) 2.5;这种方法采用的是舍去小数部分,可以用于你的问题。2、C/C...

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\n",num...

输入一个四位数字n,分别求出n的个位数字、十位数字、百位数字和千位数字...
答:首先输入的是一个四位数字n,所以要先定义一个变量 然后,根据数学的计算公式,分别输出位数上的数字(这个里面可能比较绕,包括商和余数,只要是这两个概念弄清楚的话,这道题就很简单了)具体的编程如下:include <stdio.h> void main(){ int n; //定义一个变量就可以 printf("请输入一个四...

c语言输入一个整数怎么分别输出它的每位上的数字
答:具体实现方法可以参考如下程序及注释说明:include<stdio.h>void main(){ int data; int temp; printf("请输入一个整数:"); scanf("%d", &data); // 接收用户输入的整数,并赋值给变量data printf("%d从最低位到最高位分别为:", data); while(data>0) // 当data...

任意输入一个整数(小于10位),求它的位数.(java语言)
答:public static void main(String args[]) throws IOException{ InputStreamReader reader=new InputStreamReader(System.in);BufferedReader input = new BufferedReader(reader);String text=input.readLline();System.out.println("请输入一个整数(小于十位):");if(text.length()>=10)System.out....

c语言编程(输入一个整数,统计它有几位数)如何用while语句代替do-while语...
答:设输入的整数保存在变量n,用一个初值为0的变量m记录n除以10的次数,每除以一次10为m增1,直到n变为0为止。这时m的值就是n的长度。举例代码如下://#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"#include "stdlib.h"int main(void){ int n,m; print...

用C#语言编写以下代码5. 输入一个整数,判定它为几位数。例如,99是2位...
答:Main(string[] args){ Console.Write("请输入一个整数:");int i = 0;if (int.TryParse(Console.ReadLine(), out i)){ i = Math.Abs(i);Console.WriteLine("您输入的数字为长度为" + i.ToString().Length);} else Console.WriteLine("输入的不是整数");Console.ReadKey();} } } ...