用C语言接收用户输入的一个四位数,用while循环计算个位,十位,百位,千位之和,
4个回答
展开全部
#include "stdio.h"
void main()
{
int num,sum=0;
int temp1 = 0, temp2=0;
scanf("%d", &num); //输入一个数字
temp2 = num; //临时存储数字
while (temp2 >0)
{
temp1 = temp2 % 10;//取数字的最后一位数
temp2 = temp2 / 10;//让临时数字右边去除一位
sum += temp1;//求和
}
printf("%d各位数之和为%d\n", num, sum);//显示
}
不限于四位数,你要是要求必须输入四位数,就加个if判断一下,我就不写了
展开全部
望采纳
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
char buf[BUFSIZ];
int num,res=0;
while(1)
{
fgets(buf,BUFSIZ,stdin);
num=atoi(buf);
if(num>=1000&&num<=9999)
break;
else
printf("input err and do again\n");
}
while(num)
{
res+=num%10;
num/=10;
}
printf("the sum is %d\n",res);
return 0;
}
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
char buf[BUFSIZ];
int num,res=0;
while(1)
{
fgets(buf,BUFSIZ,stdin);
num=atoi(buf);
if(num>=1000&&num<=9999)
break;
else
printf("input err and do again\n");
}
while(num)
{
res+=num%10;
num/=10;
}
printf("the sum is %d\n",res);
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include"stdio.h"
void main()
{long i,sum=0;
int t;
scanf("%d",&i);
while(i!=0)
{t=i%10;
sum+=t;
i=i/10;
}
printf("sum is %d",sum);
}
void main()
{long i,sum=0;
int t;
scanf("%d",&i);
while(i!=0)
{t=i%10;
sum+=t;
i=i/10;
}
printf("sum is %d",sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
main()
{
int a,b,c,d,e,sum;
while(1)
{
printf("请输入一个四位数字:\n");
scanf("%d",&a);
b=a/1000;
c=(a-b*1000)/100;
d=(a-b*1000-c*100)/10;
e=(a-b*1000-c*100-d*10)/1;
printf("b=%d\n",b);
printf("c=%d\n",c);
printf("d=%d\n",d);
printf("e=%d\n",e);
sum=b+c+d+e;
printf("sum=%d\n",sum);
}
return;
}
main()
{
int a,b,c,d,e,sum;
while(1)
{
printf("请输入一个四位数字:\n");
scanf("%d",&a);
b=a/1000;
c=(a-b*1000)/100;
d=(a-b*1000-c*100)/10;
e=(a-b*1000-c*100-d*10)/1;
printf("b=%d\n",b);
printf("c=%d\n",c);
printf("d=%d\n",d);
printf("e=%d\n",e);
sum=b+c+d+e;
printf("sum=%d\n",sum);
}
return;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询