编写程序,从键盘输入一个正整数,计算该数的各个位数字之和,并显示结果。
3个回答
展开全部
#include "stdio.h"
int main()
{
long a;
int s = 0;
printf("请输入一个正整数:");
scanf("%ld",&a);
for (int i=0;;i++)
{
s += a%10;
if (a<10)
{
break;
}
a = a/10;
}
printf("\n各位数之和为:%d\n",s);
return 0;
}
int main()
{
long a;
int s = 0;
printf("请输入一个正整数:");
scanf("%ld",&a);
for (int i=0;;i++)
{
s += a%10;
if (a<10)
{
break;
}
a = a/10;
}
printf("\n各位数之和为:%d\n",s);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的算法很不错,如果是我,还是喜欢写的保守些。
#include <stdio.h>
int main()
{
long a;
int s = 0;
printf("请输入一个正整数:");
scanf("%ld",&a);
while(a>=1)
{
s=s+a%10;
a=a/10;
}
printf("\n各位数之和为:%d\n",s);
return 0;
}
#include <stdio.h>
int main()
{
long a;
int s = 0;
printf("请输入一个正整数:");
scanf("%ld",&a);
while(a>=1)
{
s=s+a%10;
a=a/10;
}
printf("\n各位数之和为:%d\n",s);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
fpc:
var n:string;
a,b,i:longint;
begin
read(n);
b:=0;
a:=length(n);
for i:=1 to a do
b:=ord(n[i])-ord('0')+b;
writeln(b);
end.
var n:string;
a,b,i:longint;
begin
read(n);
b:=0;
a:=length(n);
for i:=1 to a do
b:=ord(n[i])-ord('0')+b;
writeln(b);
end.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询