您所在的位置:Seago-Microsoft Windows>>Windows管理脚本>> #include为什么不能运行?谢

#include为什么不能运行?谢

作者:monface 来源:新浪爱问 日期:2008-04-21 

#include<stdio.h>
#define EOF -1
main()
{
char ch;
int acnt=0,ecnt=0;
int icnt=0,ocnt=0,ucnt=0;
while(ch=getchar()!=EOF)
{
switch(ch)
{
case'A':
case'a':
acnt ;
break;
case'E':
case'e':
ecnt ;
break;
case'I':
case'i':
icnt ;
break;
case'O':
case'o':
ocnt ;
break;
case'U':
case'u':
ucnt ;
break;
}/*end swith (ch)*/
}

printf("acnt=%d ecnt=%d icnt=%d ocnt=%d ucnt=%d",
acnt,ecnt,icnt ocnt,ucnt);
getch();



}












电脑问题网给出的最佳答案 EOF已经定义了,不能重复定义。
char 是无符号数,不可能为-1,程序会陷入死循环。
#include<stdio.h>
#include <conio.h>
//#define EOF -1
int main()
{
char ch;
int acnt=0,ecnt=0;
int icnt=0,ocnt=0,ucnt=0;
// while(ch=getchar()!=EOF)
while((ch=getchar())!='q')
{
switch(ch)
{
case'A':
case'a':
acnt ;
break;
case'E':
case'e':
ecnt ;
break;
case'I':
case'i':
icnt ;
break;
case'O':
case'o':
ocnt ;
break;
case'U':
case'u':
ucnt ;
break;
}
}
printf("acnt=%d ecnt=%d icnt=%d ocnt=%d ucnt=%d",
acnt,ecnt,icnt,ocnt,ucnt);
getch(); //getch() header file -- conin.h
return 0;
}