依然C语言题

来源:百度知道 编辑:UC知道 时间:2024/05/30 23:42:53
程序填空,不要改变与输入输出有关的语句。
输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:
输入一个整数 in,求它的位数以及各位数字之和。例如 123 的各位数字之和是 6,位数是 3。
输入输出示例:括号内是说明
输入
4 (repeat=4)
0 (in=0)
23456 (in=23456)
-100 (in=-100)
-1 (in=-1)
输出
count = 1, sum = 0 (0的位数是1, 各位数字之和是0)
count = 5, sum = 20 (23456的位数是5, 各位数字之和是20)
count = 3, sum = 1 (-100的位数是3, 各位数字之和是1)
count = 1, sum = 1 (-1的位数是1, 各位数字之和是1)

#include <stdio.h>
int main(void)
{
int count, in, sum;
int repeat, ri;

scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d", &in);
/*---------*/
printf("count = %d, sum = %d\n", count, sum);
}
}

我的答案
#include <stdio.h>
int main(void)
{
int count, in, sum;
int repeat, ri;
scanf("%d", &repeat);

呃。。。我觉得楼上说的没错。不过。。。题目如果只让更改那一块的代码的话。。。貌似做不到整体输入输出吧。。

而且程序还有很多问题。首先main没有返回值。另外fabs应该是<math.h>中的吧?建议你不用这个函数,换成sum = sum>0 ? sum : -sum;然后再试试。。

题目的要求是要输入 repeat 个数据后再一起输出,只要将结果先存入数组后一起输出就行了