C语言:输入一个正整数, 计算并显示出该数的各位数字之和.

 我来答
小夏聊生活
高能答主

2019-12-07 · 专注于分享生活知识,热爱生活
小夏聊生活
采纳数:447 获赞数:114613

向TA提问 私信TA
展开全部

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

#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\n",sum);

}

扩展资料

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

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

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

枚又夏桥乐
2019-04-25 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:811万
展开全部
int
输入数(0),
各位数字之和(0);
printf("输入一个正整数:");
scanf_s("%d",
&输入数);
do
{
各位数字之和
+=
输入数
%
10;
输入数
/=
10;
}
while
(输入数
>
0);
printf("计算并显示出该数的各位数字之和.%d",
各位数字之和);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
捷诗桃衅果
2020-01-30 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:33%
帮助的人:724万
展开全部
代码:
#include <stdio.h>
int sum(int n){
int s = 0;
while(n>0){
s += n%10;
n/=10;
}
return s;
}
int main(){
int n;
printf("请输入一个正整数:");
scanf("%d", &n);
printf("输入的数为: %d , 其各位之和为: %d\n", n, sum(n));
return 0;
}
输出:
请输入一个正整数:12345
输入的数为: 12345 , 其各位之和为: 15
请按任意键继续. . .
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
寿逸春翠贞
2019-04-30 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:33%
帮助的人:877万
展开全部
思路:定义变量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
*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式