编写一个C++程序,接收通常用户编写的程序中所使用的地址输入的四位整数,将该数的每一位数字相加并显示结果.

给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。
时间: 09:26:00
&&&& 阅读:189
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&
1 package digitAddT
* Created by ZKY on
* 给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。
* 给出 num = 38。
* 相加的过程如下:3 + 8 = 11,
* 1 + 1 = 2。
* 因为 2 只剩下一个数字,所以返回 2。
12 public class DoMain
* Get a number‘s all digit‘s sum.
* @param num
public int geSum(int num)
int sum = 0;
while(num &0)
int temp = num %10;
num /= 10;
* 获取一个数的各位和,并判断和是否满足个位数,满足就返回结果。否者继续。
* @param num
public int getAdigit(int num)
while(num &=10)
num = geSum(num);
public static void main(String[] args)
DoMain doMain = new DoMain();
int adigit = doMain.getAdigit(38);
System.out.println(doMain.getAdigit(45));
System.out.println(doMain.getAdigit(23));
System.out.println(doMain.getAdigit(69));
System.out.println(doMain.getAdigit(123));
System.out.println(doMain.getAdigit(6623));
一开始想到的是递归,但是想了半天写出来的程序返回并不正确。
换一种思路就很快写出了这个。
&标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:http://www.cnblogs.com/zkycode/p/7362360.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!1.有一个四位整数,在它的某位数字前面加上一个小数点,再与这个四位数相加,得数是2000.81,求_百度知道
1.有一个四位整数,在它的某位数字前面加上一个小数点,再与这个四位数相加,得数是2000.81,求
1.有一个四位整数,在它的某位数字前面加上一个小数点,再与这个四位数相加,得数是2000.81,求这个四位数是多少?2、老师在黑板上写了13个自然数,让小明计算平均数(保留两位小数)...
1.有一个四位整数,在它的某位数字前面加上一个小数点,再与这个四位数相加,得数是2000.81,求这个四位数是多少?2、老师在黑板上写了13个自然数,让小明计算平均数(保留两位小数),小明计算出的答案是12.43,老师说最后一位数字错了,其它的数字都对,正确答案应该是什么?3、两个带小数相乘,乘积四舍五入以后是22.5,这两个数都只有一位小数,且各位数字都是4,这两个数的乘积四舍五入前是多少?4、[4.2*5-(1/2.5+9.1/0.7)]/0.04=100改动上面算式中一个数的小数点的位置,使其成为一个正确的等式,那么被改动的数变为多少?5、用0,1,2,…,9这10个数字组成5个两位数,每个数字只能用一次,要求它们的和是一个奇数,并且尽可能地大,那么这5个两位数的和是多少?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
学校要建一段围墙,由甲、乙、丙三个班完成,已知甲班单独干需要20小时完成,乙班单独干需要24小时完成,丙班单独干需要28小时完成,如果先由甲班工作1小时,然后由乙班接替甲班干1小时,再由丙班接替乙班干1小时,再由甲班接替丙班干1小时.......三个班如此交替着干,那么完成此任务共用了多少时间?
学校要建一段围墙,由甲、乙、丙三个班完成,已知甲班单独干需要20小时完成,乙班单独干需要24小时完成,丙班单独干需要28小时完成,如果先由甲班工作1小时,然后由乙班接替甲班干1小时,再由丙班接替乙班干1小时,再由甲班接替丙班干1小时.......三个班如此交替着干,那么完成此任务共用了多少时间?
那么多题如果先采纳我就可以帮你。
我是打酱油的,可以无视我哟
其他9条回答
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。接收一个四位整数。编写一个程序,将该数的每一位数字相加并显示结果-C语言
#include &stdio.h&
void main()
int number,g,s,b,q,y, //定义几个变量分别接收一个4位数及每位的值,y接收余数,sum接个每位数相加的值。
printf("请输入一个四位数:");
scanf("%d",&number);
/*计算该四位数每一位的值*/
q = number/1000; //求四位数的千位
y = number%1000; //求四位数去除千位的值
b = y / 100; //求四位数的百位
y = y % 100; //求四位数去除千位后再去除百位的值
s = y / 10; //求四位数的十位
g = y % 10; //求四位数的个位
/*计算该四位数每一位相加的结果*/
sum = q+b+s+g;
printf("\n该四位数每一位相加结果为:%d\n",sum);
//输出该四位数每一位相加的结果
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。扫二维码下载作业帮
3亿+用户的选择
下载作业帮安装包
扫二维码下载作业帮
3亿+用户的选择
在一个四位数的某一位数字后面点上小数点,所得的数与原来的数相加,和是4612.67.求这个四位数.是4567,
作业帮用户
扫二维码下载作业帮
3亿+用户的选择
和是4612.67 有两位小数 说明肯定是在百位后点上了小数点 点上小数点后变为原来的100分之1所以原数:4612.67÷(1+1/100)=4567
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 用户编写的程序 的文章

 

随机推荐