标题:想算t次输入的n个数据能组合成多少个能被3整除的数,输入的数长度小于100, ...
只看楼主
grayhooo
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2018-10-11
结帖率:100%
 问题点数:0 回复次数:0 
想算t次输入的n个数据能组合成多少个能被3整除的数,输入的数长度小于100,为什么程序得出的结果总是错误,请指教
#include <stdio.h>
#include <string.h>
const int MAX=10001;
char A[MAX];
int main()
{
    int len,sum,t,i,j,a,b,c,n;
    scanf("%d",&t);
    while(t--)
    {
        sum=0;
        a=0,b=0,c=0;
        scanf("%d",&n);
        for(i=0;i<n;i++)
        {
            scanf("%s",A);
            len=strlen(A);
            for(j=0;j<len;j++)//一个数的余数就是各位数和的余数
            {
                sum+=(A[j]-48);
            }
            if(sum%3==1)
            {
                a++;
            }
            else
            if(sum%3==2)
            {
                b++;
            }
            else
            if(sum%3==0)
            {
                c++;
            }
        }
        printf("%d %d %d\n",a,b,c);
        printf("%d\n",(a<b)?a:b+c/2);
    }
    return 0;
}
例如输入
2
5
1
2
3
4
5

应输出
2 2 1
2
但输出变成了
2 0 3
1
请指点

[此贴子已经被作者于2018-10-24 22:04编辑过]

搜索更多相关主题的帖子: 输入 错误 int sum scanf 
2018-10-24 22:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-490650-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.366522 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved