题目内容: 由键盘输入10个整数到一维整型数组a[10],输出大于平均值的数及其个数。(已测试)

输入输出说明:
输入:
1 5 3 3 4 6 2 2 2 7
输出:
5 4 6 7 (说明:最后一个数字后面保留一个空格)
number=4 (说明:输出个数)

#include <stdio.h>
int main()
{
int a[10],str[10],i;
int sum = 0;
float average;
int count = 0;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
sum += a[i];
}
average = sum/10;
for(i=0;i<10;i++)
{
if(a[i]>average)
{ str[i]=a[i];
count++;
printf("%d ",a[i]);
}
}
printf("%d\n",str[i]);
printf("number=%d\n",count);
return 0;
}

这个错在哪里

#include <stdio.h>
int main()
{
    int a[10],str[10],i;
    int sum = 0;
    float average;
    int count = 0;
    for(i=0;i<10;i++)
    {
        scanf("%d",&a[i]);
        sum += a[i];
    }
    average = 1.0*sum/10;//整数除整数结果是整数,加上1.0* 
    for(i=0;i<10;i++)
    {
        if(a[i]>average)
        {   str[i]=a[i];
            count++;
            printf("%d ",a[i]);
        }
    }
    printf("\n");//只要回车就行 
    printf("number=%d\n",count);
    return 0;
}
/*运行结果:
1 5 3 3 4 6 2 2 2 7
5 4 6 7
number=4
*/追问

回答错误

输出结果格式有误
程序输入:
4 6 2 1 3 7 3 3 8 10
正确输出:
6 7 8 10
number=4
您的输出:
67810
number=4

它的结果是这个

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-15
你的程序 倒数第三行 改为 printf("\n");
就是正确答案了
相似回答