早教吧作业答案频道 -->其他-->
搞定给100分!要求十分钟内!将一个正整数的各个位上的数字相加,如果得到的数是一位数,则称这个数是这个正整数的数根.如果结果是多位数,则继续重复以上过程,直到得到一位数为止.例如,正
题目详情
搞定给100分!要求十分钟内!
将一个正整数的各个位上的数字相加,如果得到的数是一位数,则称这个数是这个正整数的数根.如果结果是多位数,则继续重复以上过程,直到得到一位数为止.
例如,正整数24,2+4=6,由于6是一位数,因此6是24 的数根.
再例如,正整数39,3+9=12,由于12不是一位数,1+2=3,因此3是39 的数根.
编写一个函数,求任意一个正整数的数根,在main()中,从键盘输入一个正整数,调用函数求出这个整数的数根.
将一个正整数的各个位上的数字相加,如果得到的数是一位数,则称这个数是这个正整数的数根.如果结果是多位数,则继续重复以上过程,直到得到一位数为止.
例如,正整数24,2+4=6,由于6是一位数,因此6是24 的数根.
再例如,正整数39,3+9=12,由于12不是一位数,1+2=3,因此3是39 的数根.
编写一个函数,求任意一个正整数的数根,在main()中,从键盘输入一个正整数,调用函数求出这个整数的数根.
▼优质解答
答案和解析
#include
using namespace std;
int shugen(int n) {
int m = 0;
while (n) {
m += n % 10;
n /= 10;
}
if (m < 10)
return m;
else
return shugen(m);
}
int main() {
int n;
cout > n;
if (n > 0)
cout
using namespace std;
int shugen(int n) {
int m = 0;
while (n) {
m += n % 10;
n /= 10;
}
if (m < 10)
return m;
else
return shugen(m);
}
int main() {
int n;
cout > n;
if (n > 0)
cout
看了 搞定给100分!要求十分钟内...的网友还看了以下:
一个两位数十位与个位中间插入0~9中的一个数码,这个两位数变成一个三位数,有这个三位数和两位数的和 2020-05-16 …
数字信号处理问题,怎么看待系统函数无穷远处的零点?如果说零点都在单位圆内的系统是最小相位系统如果说 2020-05-17 …
静息电位为什么是外正内负?可是膜内k离子是膜外30倍,膜外na是膜内1o倍,这样均衡算,应该是外负 2020-06-06 …
有一个三位数,十位上的数字是个位数字的一半,百位上的数字比个位数字大二,如果把这个三位数的十位和个 2020-06-11 …
一质点做初速为零的匀加速直线运动.若其第7秒内的位移比第6秒内位移多2米,其第7秒内位移大小为?前 2020-06-15 …
单位正方形内随机三角形是钝角三角形的概率为多少拜托各位了3Q在单位正方形内,随机取三点,构成三角形 2020-07-13 …
个位,十位上的数字相加正好是10,是7与一位数相乘的积。这个数是()。个位,十位上的数字相加正好是 2020-07-21 …
一质点在x轴上运动,各个时刻的位置坐标如下表,则此质点开始运动后t(s)01234x(m)05-4- 2020-11-11 …
极点在单位圆内则表示稳定,单位圆上表示临界稳定.在单位圆外不稳定.那么零点在单位圆内和单位圆外,还有 2020-12-20 …
甲乙两车延平直的公路通过同样的位移甲车在前半段位移内以40Km/h的速度运动在后半段位移内以60km 2021-01-17 …