网站上怎么做弹目提醒,企业策划营销中心,琪恋网站建设,郑州百姓网免费征婚给定一个非负整数 num#xff0c;反复将各个位上的数字相加#xff0c;直到结果为一位数。返回这个结果。
示例 1:
输入: num 38输出: 2
解释: 各位相加的过程为#xff1a; 38 -- 3 8 -- 11 11 -- 1 1 -- 2 由于 2 是一位数#xff0c;所以返回 2。…给定一个非负整数 num反复将各个位上的数字相加直到结果为一位数。返回这个结果。
示例 1:
输入: num 38输出: 2
解释: 各位相加的过程为 38 -- 3 8 -- 11 11 -- 1 1 -- 2 由于 2 是一位数所以返回 2。
示例 2: 输入: num 0
输出: 0
思路1暴力解题
#include stdio.hint addDigits(int num)
{while (num 10){num num/10 num%10;}return num;}
int main()
{int num 38;printf(%d\n,addDigits(num));return 0;
}
思路2不利用循环数学计算。
#include stdio.hint addDigits(int num)
{return (num - 1) % 9 1;//为了解决num为9的倍数}
int main()
{int num 38;printf(%d\n,addDigits(num));return 0;
}