X 我知道了TIPS:左右滑动导航栏可以查看更多栏目
编写C程序,输入多个两位正整数(以回车键作为结束标志),并统计出其中小于等于40、大于40小于等于70、大于70的数据个数。
>> 本文固定链接: http://www.vcgood.com/archives/1924
>> 转载请注明: wfnh 2007年11月16日 于 C语言帝国 发表
有人帮忙吗??
我的代码:
#define ture 1#define false 0#include <stdio.h>void main()
{ int a; int lessthan40=0; int _40to70=0; int morethan70=0; printf(“请输入多个两位数:”); for(;(a=getchar())!=’\n’;) {
scanf(“%d”,&a); if(a<=40) lessthan40+=1; if(a>40&&a<=70) _40to70+=1; if(a>70) morethan70+=1;
} printf(“lessthan40=%d\n_40to70=%d\nmorethan70=%d\n”,lessthan40,_40to70,morethan70); getch();
}
不性的
目标是好的,算法是诡异的.
首先不了解你开始的宏定义是做什么用的.
不过你的错误出在for的第1次循环上,先执行了一次getchar();,所以错了.建议改为while循环
#include <stdio.h>void main()
{ int a; int lessthan40=0; int _40to70=0; int morethan70=0; printf(“input data”); do{ scanf(“%d”,&a); if(a<=40) lessthan40+=1; if(a>40&&a<=70) _40to70+=1; if(a>70) morethan70+=1;
}while((a=getchar())!=’\n’); printf(“lessthan40=%d\n_40to70=%d\nmorethan70=%d\n”,lessthan40,_40to70,morethan70); getch();
你好,我是<<求高手指点一二!! >>这贴的楼主
请问一下,为什么用FOR不性呢,而DO…..WHILE循环接可以,难道DO…..WHILE不回吃了回车键的吗?
for是先判断在循环\
do while是先执行一边在判断
你必须先 登录才能发表评论。
有人帮忙吗??
我的代码:
#define ture 1
#define false 0
#include <stdio.h>
void main()
{ int a;
int lessthan40=0;
int _40to70=0;
int morethan70=0;
printf(“请输入多个两位数:”);
for(;(a=getchar())!=’\n’;)
{
scanf(“%d”,&a);
if(a<=40)
lessthan40+=1;
if(a>40&&a<=70)
_40to70+=1;
if(a>70)
morethan70+=1;
}
printf(“lessthan40=%d\n_40to70=%d\nmorethan70=%d\n”,lessthan40,_40to70,morethan70);
getch();
}
不性的
目标是好的,算法是诡异的.
首先不了解你开始的宏定义是做什么用的.
不过你的错误出在for的第1次循环上,先执行了一次getchar();,所以错了.建议改为while循环
#include <stdio.h>
void main()
{ int a;
int lessthan40=0;
int _40to70=0;
int morethan70=0;
printf(“input data”);
do{
scanf(“%d”,&a);
if(a<=40)
lessthan40+=1;
if(a>40&&a<=70)
_40to70+=1;
if(a>70)
morethan70+=1;
}while((a=getchar())!=’\n’);
printf(“lessthan40=%d\n_40to70=%d\nmorethan70=%d\n”,lessthan40,_40to70,morethan70);
getch();
}
你好,我是<<求高手指点一二!! >>这贴的楼主
请问一下,为什么用FOR不性呢,而DO…..WHILE循环接可以,难道DO…..WHILE不回吃了回车键的吗?
for是先判断在循环\
do while是先执行一边在判断