匿名用户
1级
2013-02-21 回答
#include
int main(void){ int nDayu50 = 0, nXiaoyu50 = 0, n = 0;
while (1)
{
printf("输入一个数:\n");
scanf("%d",&n);
if (n == 0)
break;
else if (n < 50)
nXiaoyu50 ++;
else if (n >= 50)
nDayu50 ++;
}
printf("比50大的有%d个,比50小的有%d个\n",nDayu50,nXiaoyu50);
return 0;
}
这是个比较简单的方法,局限在与不能判断0,如果你要做变长的话就比较复杂了
追问:
额 我试了下 但是只能一直提示你输入数字 却没把他们分类或显示属于哪个范围
追答:
你输入0的时候就跳出了,因为你需要判断的数量不变,所以必须给程序定制一个跳出的条件。我这里给你定的是0。如果你输入0就跳出了。
追问:
但还是没有把每个数据分类 求出大于小于分别有多少后 需要将每个数据归类在大于或小于名下
即应该有一项是大于50的数据有哪些 小于50的数据有哪些
谢谢了!
追答:
#include
int main(void){ int nDayu50 = 0, nXiaoyu50 = 0, n = 0, i = 0;
int arrDayu50[1000] = {0};
int arrXiaoyu50[1000] = {0};
while (1)
{
printf("输入一个数:\n");
scanf("%d",&n);
if (n == 0)
break;
else if (n = 50)
arrDayu50[nDayu50++] = n;
}
printf("小于50的数据有:");
for(i = 0; i < nXiaoyu50; i++)
{
printf("%d\t",arrXiaoyu50[i]);
}
printf("\n");
printf("大于50的数据有:");
for(i = 0; i < nDayu50; i++)
{
printf("%d\t",arrDayu50[i]);
}
printf("\n");
printf("比50大的有%d个,比50小的有%d个\n",nDayu50,nXiaoyu50);
return 0;
}
同样也是输入0跳出程序,把大于50的数和小雨50的数分表存到2个数组里面,然后打印出来就OK了。