gpt4 book ai didi

c - break 命令如何在我的测试代码中起作用

转载 作者:太空宇宙 更新时间:2023-11-04 03:43:03 26 4
gpt4 key购买 nike

我的测试代码如下:

#include <stdio.h>
int main(){
char c;
while ((c=getchar())!=EOF){
if(c>='A'&& c<='Z'){
c=c-'A'+'a';
putchar(c);
}
//else break;
}
return 0;
}

如果没有 else break 命令,while 循环会一直持续下去,但是当我添加“else”命令行时,循环只执行一次,我输入“A”它在监视器上显示“a”然后停止。但我认为它应该是这样的:如果输入A~Z,那么它会产生小写字母,如果输入的字符不在范围内,例如。一些东西,它会打破循环并且执行会停止。我在哪里犯了错误?我试过在“break”周围的“else”后面加上大括号,结果还是一样。

最佳答案

getchar 函数将从标准输入中读取每个字符,甚至是“Enter/Return”键中的换行符。

当您启用 else 部分时,您的代码也会对 '\n' 使用react,这会导致中断。

你可以尝试改变

else break;

通过

else if (c != '\n') break;

在您的代码中。

关于c - break 命令如何在我的测试代码中起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26977606/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com