输出10到99之间各位数字之和为12的所有整数。要求定义和调用函数sumdigit(n)计算整数n的各位数字之和。请将函数补充完整。 运行示例: 39 48 57 66 75 84 93 #include <stdio.h> int main(void) { int i; int sumdigit(int n); for(i = 10; i <= 99; i++) if ( sumdigit(i) == 12 ) printf("%d ", i); return 0; } int sumdigit(int n) { int sum; ; do{ ; ; }while(n != 0); return sum; }
时间: 2024-01-29 11:02:32 浏览: 140
下面是完整的程序代码:
```
#include <stdio.h>
int main(void) {
int i;
int sumdigit(int n);
for(i = 10; i <= 99; i++)
if ( sumdigit(i) == 12 )
printf("%d ", i);
return 0;
}
int sumdigit(int n) {
int sum = 0;
do{
sum += n % 10; // 取出个位数并加到sum中
n /= 10; // 去掉个位数
}while(n != 0);
return sum;
}
```
函数sumdigit的主要思路是利用%10取出n的个位数,将其加到sum中,然后将n除以10去掉个位数。重复以上操作直到n变为0,最终得到各位数字之和sum。在主函数中,循环变量i从10到99遍历所有两位数,如果对应的各位数字之和为12,则将该数输出。
相关问题
输出10到99之间各位数字之和为12的所有整数。要求定义和调用函数sumdigit(n)计算整数n的各位数字之和。请将函数补充完整。
def sumdigit(n):
"""
计算整数n的各位数字之和
"""
sum =
while n > :
sum += n % 10
n //= 10
return sum
# 输出10到99之间各位数字之和为12的所有整数
for i in range(10, 100):
if sumdigit(i) == 12:
print(i)
阅读全文