‘壹’ c语言求所有位数上的数字之和
#include <stdio.h>
int main(int argc, char **argv)
{
int a;
int sum = 0; //这是各位数的和
int NumWidth =0;//这是位数和
scanf("%d",&a);
while(a != 0)
{
sum += a%10 ; //求余可以得到这个数个位上的数字,然后把它加到sum中
a /= 10; //把这个数字除以10,然后再求余,可以得到10位
NumWidth ++;//每次循环,就可以得到位数。
}
printf("the number you input width= %d, sum = %d",NumWidth,sum);
return 0;
}
‘贰’ 输入四位数,求每个数之和…用C语言怎样弄
#include
<stdio.h>
int
sum(int
n);
int
main()
{
int
n;
printf("请输入一个四位数:");
scanf("%d",&n);
int
c
=
sum(n);
printf("各个位数和为:");
printf("%d\n",c);
return
0;
}
int
sum(int
n)
{
int
s=0;
if(n>9)
s
=
sum(n/10);
return
s+n%10;
}
楼主的问题不难。这个可以,你试试。如果没有回答你的问题,我们可以多多交流,因为都是同行。
希望回答你的问题
‘叁’ 利用C语言怎样求整数的位数以及各位数之和
#include <stdio.h>
int main(int argc, char **argv)
{
int a;
int sum = 0; //这是各位数的和
int NumWidth =0;//这是位数和
scanf("%d",&a);
while(a != 0)
{
sum += a%10 ; //求余可以得到这个数个位上的数字,然后把它加到sum中
a /= 10; //把这个数字除以10,然后再求余,可以得到10位
NumWidth ++;//每次循环,就可以得到位数。
}
printf("the number you input width= %d, sum = %d",NumWidth,sum);
return 0;
}
‘肆’ C语言如何求一个整数的各个位数之和
先举个求3位整数的个十百位和
main()
{
int
a,b,c,x;
.
scanf("%d",&x);/*输入一个3位整数*/
a=x%10;
/*求各位数*/
b=x/10%10;
/*求十位数*/
c=x/100;
/*求百位数*/
printf("%d各个位数和为%d",x,a+b+c);
}
注:
这是手机打的是全角,要自己输一遍。
‘伍’ C语言编程:输入一个整数,求各位数字之和..
求整数各位和,将整数各个位分离出来的方法(除10取模)很常用。
函数如下
int intsum(int n)
{
int sum = 0;
while(n) //不断分离最低位
{
sum += n%10;
n /= 10;
}
return sum;
}
‘陆’ 编写C语言程序:计算一个正整数的各个位的数字之和
我用C++,还回答你计算一个正整数,判断是几位数,求各个位的数字之和
int
n,sum=0,r,num=0;
printf("请输入任意一个整数:");
scanf("%d",&n);
do
{
r=n%10;
sum+=r;
n=n/10;
num+;
}
while(n!=0);
printf("是一个%d
位数,各个位的数字之和是%d\n",num,sum);
‘柒’ C语言计算位数和各位数字之和
问题很多!首先是对函数pow(double
x,double
y)使用有误,函数原型为double
pow(double
x,double
y),返回xy的值,你用他来处理整型数据肯定不行,强制转换时是要出大问题滴!
第二,计算位数和的方法不对,不能处理只有一位数的整数。
第三,还是我来写一个吧,仅供参考!
#include
<stdio.h>
#include
<stdlib.h>
int
main()
{
int
num,
t,
b,
sum
=
0;
scanf("%ld",&num);
t
=
num;
b
=
0;
while
(t
>
0)
{
b++;
t
/=
10;
}
while
(num
>
0)
{
sum
+=
num
%
10;
num
/=
10;
}
printf("这是个%d位数\n",
b);
printf("%d\n",
sum);
system("pause");
return
0;
}
‘捌’ C语言编程 对于一个位数不定的数求其各位数字之和
#include<stdio.h>
#include<math.h>
main()
{
long a,b,e;
int c=0,d=0;
scanf("%ld",&a);
b=a;
while(1)
{
b=b/10;
c++;
if(b==0)
break;
}
while(1)
{
e=a/pow(10,c-1);
d=d+e;
a=a-e*pow(10,c-1);
c--;
if(c==1)
{
d=d+a;
break;
}
}
printf("%d\n",d);
getch();
}
从键盘随意输入一个正整数,注意不要超过长整型的范围!
‘玖’ 求救:编程计算一整数各位数之和.(C语言)
and指的是结果,for循环的意思是每次都测试num除以10是否为零。在C语言中,整除除以整数的结果是截断的,也就是说只取整数部分。举个例子5/3=2.666,取整就是2.num%i的意思是取num除以i的余数,也就是num的个位数,num=num/i的意思是把num除以10,相当于去掉num的个位数。例如1234除以10,得123.4,由于结果只取整数部分,所以得123。以此类推就能得到一个数所有位数之和了。
你的程序还有点小问题,就是for循环里的num/i!=0,如果写成这样,就会少计算一位,导致结果不正确。
应该改为for(i=10;num!=0;)
‘拾’ 求一个C语言代码,输入1个数,求其每个位数之和.例如,输入456.输出15
int i,sum=0;
printf("Please input a number:");
scanf("%d",&i);
while(i%10!=0)
{
sum+=i%10;
i=i/10;
}
printf("The sum is %d",sum);
return 0;
运行结果如下: