C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和

作者&投稿:弓仲 (若有异议请与网页底部的电邮联系)
C语言编程:输入一个整数,求各位数字之和..~

#include
int main()
{
int n,sum=0;
printf("请输入一个整数:");
scanf("%d",&n);
while(n)
{
sum = sum+n%10;
n /= 10;
}
printf("%d",sum);
}

#includeint main(){int a,s=0; scanf("%d",&a); while(a>0) {s+=a%10; a/=10; }; printf("%d
",s); return 0; }

输出该数的各位数字之和的源代码如下:

#include <stdio.h>

int fun(int n)

{

int i;

int sum=0;

if(n>1000||n<0)

{

puts("输入的数字超出范围!"); // 错误信息提示

}

else

{

for(i=2;i<n;i++) // 循环遍历n,取出因子,并进行累加

{

if(0 == n%i)

{

sum+=i;

}

}

}

return sum;

}

void main()

{

int n,sum;

printf("Input n: ");

scanf("%d",&n);

sum=fun(n);

printf("sum=%d
",sum);

}

扩展资料

1、输入的数字要是整数,并且要在规定范围内。

2、对输入的数要进行拆分,注意1和本身不能在求和之中。

3、可以使用循环对输入的数(n)遍历,如果n%i余为0,则表明能整除,次i则为因子。



思路:定义变量a接受键盘输入和变量sum保存a的各位数字之和,依次对a进行除10操作,并把a除10的余数加到sum中,直到a为0为止,sum最终的值就是a个位数字之和。

参考代码:

#include<math.h>
#include<stdio.h>
int main()
{
int a,sum=0;
scanf("%d",&a);
while(a){
sum+=a%10;
a/=10;
}
printf("%d
",sum);
return 0;
}
/*
输出: 
12345
15
*/


ok了,细心别生气 哈哈
#include "stdio.h"
#include "math.h"
void main() {
long int a,b,i,n=0;
int sum=0;
printf("Input the number:");
scanf("%ld",&a);
for(i=0;i<6;i++){
if(a/pow(10,i)>=1){
n++;
}
}
for(i=n-1;i>=0;i--){
b=a/pow(10,i);
a=a-b*pow(10,i);
sum+=b;
}
printf("%d\n",sum);
getch();
}

#include<stdio.h>
#include<math.h>
main()
{
int a,sum=0;
scanf("%d",&a);
while(a!=0)
{
sum+=a%10;
a=a/10;
}
printf("%d\n",sum);
return 0;
}
//我用的编译器是6.0


察哈尔右翼前旗13473296146: C语言程序设计:编写程序,输入一个正整数,统计该整数的位数并计算其各个数位上的数字之和. -
罗菲依克:[答案] #include int main(){int a,b,i,t;int k = 0,sum = 0;scanf("%d",&a); //输入整数at = a;if(a / 10 == 0){k = 1;sum = a;printf("%d\n",k);printf("%d\n",sum);}else{while(a / 10 != 0){a = a / 10; //每除10,就有...

察哈尔右翼前旗13473296146: C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和 -
罗菲依克: 思路:定义变量a接受键盘输入和变量sum保存a的各位数字之和,依次对a进行除10操作,并把a除10的余数加到sum中,直到a为0为止,sum最终的值就是a个位数字之和. 参考代码: #include#include int main() { int a,sum=0; scanf("%d",&a); while(a){ sum+=a%10; a/=10; } printf("%d\n",sum); return 0; } /* 输出: 12345 15 */

察哈尔右翼前旗13473296146: C语言 编写程序,从键盘输入一个正数,计算该数的平方根. -
罗菲依克: # include <stdio.h> #include<math.h> int main() {double x;scanf("%lf",&x);printf("%lf\n",sqrt(x));return 0; }

察哈尔右翼前旗13473296146: C语言程序设计:编写程序,输入一个正整数,统计该整数的位数并计算其各个数位上的数字之和. -
罗菲依克: #include <stdio.h>int main() {int a, b, i, t;int k = 0, sum = 0; scanf("%d", &a); //输入整数a t = a;if(a / 10 == 0){k = 1;sum = a;printf("%d\n", k);printf("%d\n", sum);}else{while(a / 10 != 0){a = a / 10; //每除10,就有一位k++; ...

察哈尔右翼前旗13473296146: 由键盘任意输入一个正整数,要求:判断并显示它是几位数且计算并显示该数的各位数字之和.用c语言编程 谢谢 -
罗菲依克: #include<stdio.h> #include<string.h> void main() {int i,j,sum=0;char a[100];printf("ÇëÊäÈëÕûÊý£º\n");gets(a);for(i=0,j=0;a[i]!='\0';i++){j++;sum+=a[i]-'0';}printf("%sÊÇ%dλÊý,¸ÃÊýµÄ¸÷λÊý*ÖÖ®ºÍ%d\n",a,j,sum); }

察哈尔右翼前旗13473296146: 用c语言编写“从键盘上输入一批任意数量的正整数,统计其中不大于100的数值个数” -
罗菲依克: #include <stdio.h> int main (void) { int n = 0; int num = 0; char ch; printf ("End to input \'a\'.\n"); printf ("Please input number :\n"); do { while ((scanf ("%d", &num)) == 1) { if (num <= 100) n++; } ch = getchar(); }while (ch != 'a'); printf ("%d \n", n); putchar (10); return 0; }满意请采纳

察哈尔右翼前旗13473296146: C语言题目: 从键盘输入一个正数,计算该数的各位数字之和并输出 -
罗菲依克: #include <stdio.h> main() {int n,sum=0; scanf("%d",&n); do { sum=sum+n%10; n=n/10; }while(n); printf("%d\n",sum); }

察哈尔右翼前旗13473296146: 哪个高手告诉我用C语言怎么编“从键盘上输入一个正整数,计算该数的各位数字之积并输出” -
罗菲依克: #include<stdio.h> void main() { int a,s; s=1; printf("请输入一个整数"); scanf("%d",&a); while (a>0) { s=s*(a % 10); a=a/10; } printf("a=%d",s); }

察哈尔右翼前旗13473296146: C语言程序,从键盘输入一个正整数N,求N的阶乘的素数展示.(例如:输入5,则求出:5!=120=2*2*2*3*5) -
罗菲依克:[答案] #include main() {int n,i,j,s; scanf("%d",&n); for(i=1,s=1;i<=n;i++) s*=i; printf("%d!=",s); for(i=2;i
察哈尔右翼前旗13473296146: 用C语言编写程序从键盘输入一个正整数数n,输出n,是什么情况? -
罗菲依克: #include <stdlib.h> #include <stdio.h> #include <string.h> void main() { int a; char str1[200]; printf("Please input a integer: "); scanf("%d", &a); itoa(a, str1, 10); printf("The length of integer=%d", strlen(str1)); }C语言实现如下:#include<...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网