题目描述
输入一个正整数 repeat (0
样例输入
3
123456 20000 -1
样例输出
number=6,sum=21.
number=5,sum=2.
number=1,sum=1.
判断系统提示我只对了一半,格式条件都是对的,后来我考虑会不会是用long long int,但是在输入-1时,输出结果会是错误的
这是我的代码:
#include
int main()
{
int s[1000] = { 0 };
int repeat;
do {
scanf("%d", &repeat);
} while (repeat <= 0 || repeat >= 10);
for (int i = 0; i < repeat; i++)
scanf("%d", &s[i]);
for(int j=0;jint num = 0, sum = 0;
if (s[j] < 0)
s[j] = -s[j];
while (s[j] != 0)
{
num++;
sum += s[j] % 10;
s[j] /= 10;
}
printf("number=%d,sum=%d.\n", num, sum);
}
return 0;
}
用这个来就行,你的代码不太对。
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
int num = 0;
int sum = 0;
int val = 0;
int n = 0;
printf("Please input a number[>0]:");
scanf("%d",&n);
if(n < 0)
{
n = abs(n);
printf("n: %d\n",n);
}
while(n > 0)
{
num++;
sum += (n % 10);
//printf("sum: %d\n",sum);
n /= 10;
}
printf("first val: %d\n",val);
printf("number=%d,sum=%d.\n", num, sum);
return 0;
}