c - while循环,直到用户键入特定字母

标签 c while-loop

我只粘贴了代码的相关部分,(我已经测试了代码的其他部分,并且它们可以按我的意愿工作。)我在使用while循环时遇到了麻烦。计划是,我想继续问用户“您要更新地址吗?”,如果用户键入“ y”,则提示用户输入新地址。此后,我再次提示用户是否要更新其地址,并再次提示用户输入新地址。我不再询问用户如果他们键入“ n”是否要更新其地址。

我的代码在第一个循环中的确会在键入“ n”时退出,并在用户键入“ y”时提示用户输入新地址,但是,如果键入y,则不会询问用户是否要更新其地址。地址,他们会立即被要求输入新地址。

   while (choice){
        if (choice==y){
            printf("Enter new address: ");
            scanf("%s",address); 
        }
        else {
            break;
        }
}

最佳答案

(choice==y)表示变量choice等于变量y

您要比较变量choice和CHAR 'y'

如果键入'n',它将与您键入其他任何字符一样工作

做:

if (choice=='y'){

关于c - while循环,直到用户键入特定字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50530829/

相关文章:

c中字符串首字母大写

C++ 对非 ASCII 数据文件的支持

c - 打印、ncurses 问题

c - 使用 fscanf 和 while 循环来存储 char 和 int

java - Android工作室: Check object states

java - 跳过 while 循环的第一行

c - 简单的动态内存分配错误

objective-c - 生成不重复的随机数

java - while 语句和 if 语句

java - 不使用 If 或 Break 中断 while 循环