打印字符串中第一组数字,新手哪里写错了啊
#include<stdio.h>int main()
{
printf("输入一句话:");
int ch=getchar();
int i=0;
while(ch!='\n')
{
if('0'<=ch&&ch<'9')
{
putchar(ch);//打印所有数字
i++;
}
else
{
if(i)
{
break;
}
}
}
return 0;
} 你也没说需求,不知道咋弄,代码肯定是没法看 wp231957 发表于 2022-9-4 19:15
你也没说需求,不知道咋弄,代码肯定是没法看
https://fishc.com.cn/forum.php?mod=viewthread&tid=68699&extra=page%3D1%26filter%3Dtypeid%26typeid%3D570
动动手 第二题 没扩展的部分 本帖最后由 jackz007 于 2022-9-4 19:22 编辑
#include <stdio.h>
int main(void)
{
char ch ; // 这里改了
int i=0 ;
printf("输入一句话:") ;
while((ch = getchar()) !='\n')// 这里改了
{
if('0'<= ch && ch <= '9')
{
putchar(ch) ;//打印所有数字
i ++ ;
}
else
{
if(i)
{
break;
}
}
}
return 0;
} jackz007 发表于 2022-9-4 19:20
大佬我的逻辑问题在哪{:5_107:} SilverAz 发表于 2022-9-4 19:29
大佬我的逻辑问题在哪
while 循环里面没有 ch = getchar(),致使 ch 的内容无法更新,从而陷入死循环。
页:
[1]