问题描述
- 为啥c语言程序运行数据输入后回车无效
-
#include
int main()
{
int ch,i,count=0,flag=0;
char bb[1000];
printf("please input some words:");
gets(bb);
ch=bb[i];
for(i=0;ch!='';i++)
{
if(ch==' ')
flag=0;
else if(flag==0)
{
count++;
flag=1;
}
}
printf("单词个数为%d",count);
}
解决方案
老铁,我没看错的话,你写的ch是int型的吧!
解决方案二:
#include
int main()
{
int i,count=0,flag=0;
char ch;
char bb[1000];
printf("please input some words:");
gets(bb);
ch=bb[i];
for(i=0;ch!='';i++)
{
if(ch==' ')
{
count++;
}
}
printf("单词个数为%d",count);
}
解决方案三:
循环跟输入的数据无关
解决方案四:
循环跟输入的数据无关
解决方案五:
循环跟输入的数据无关
解决方案六:
循环跟输入的数据无关
解决方案七:
循环跟输入的数据无关
解决方案八:
把else去掉就行拉
解决方案九:
第一,把ch类型改了
第二,你所谓的无效调试一下就会发现是死循环,为什么,因为你的ch是固定不变的,你程序根本没有循环录入 如果ch开始不是''会一直循环下去
第三,再仔细考虑一下连续空格的情况,否则不能正确返回单词个数
第四,程序排版要整齐
解决方案十:
而且你的ch=bb[i]应该放到for循环内
时间: 2024-10-27 07:37:48