一个数组输出的问题,请求帮助
前几天有个TX说他需要个输入10个数字,如果其中的数据不在允许范围内会将不合格数打印并且打印合格率的问题,今天学了数组,觉得可以实现,自己写了下,代码如下:main()
{
int i,a[10],min,max;
float c=0;
printf("please input the area of number:\n");
scanf("%d,%d",&min,&max);
printf("please input ten numbers:\n");
for(i=0;i<=9;)
scanf("%d",&a[i++]);
for(i=0;i<=9;i++)
if(a[i]<min||a[i]>max)
{
printf("The disqualification number is:%d\n",a[i]);
c++;
}
printf("The percentage of qualification is:%f%",(1-c/10)*100);
getch();
}
代码如上,功能是可以实现满足的,但自己发现有个缺点,就是不合格数不能在同一行内输出,于是又改了下,代码如下:
main()
{
int i,a[10],min,max;
int b[]={0};
float c=0;
printf("please input the area of number:\n");
scanf("%d,%d",&min,&max);
printf("please input ten numbers:\n");
for(i=0;i<=9;)
scanf("%d",&a[i++]);
for(i=0;i<=9;i++)
if(a[i]<min||a[i]>max)
{
b[i]=a[i];
c++;
}
for(i=0;i<=c;i++)
printf("The disqualification number is:%d\n",b[i]);
printf("The percentage of qualification is:%f%",(1-c/10)*100);
getch();
}
代码如上,我期望将不合格数放在b[i]内,但发现b[i]的数字不知所云,同时,还是没实现同行输出,请各位热心的朋友能否告诉我
1.如何同行输出
2.错误代码里b[i]为何不能按照期望输出正确数字?