微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

While循环未按正确顺序在C中执行代码

如何解决While循环未按正确顺序在C中执行代码

我是学习C语言的新手。 我已经从C ++转向使用了while并执行while循环

以下是我的代码的摘录。这在C ++中工作正常,但在执行while循环后的C中,它首先执行scanf然后打印菜单,但我无法找到它。请帮助

#include <stdio.h>

int main() {
    int ch;
    char ans='y';
    while(ans=='y'){
        
        printf("\n1. Insert / Create linked list ");
        printf("\n2. Insert at specific position ");
        printf("\n3. display ");
        printf("\n4. Search element");
        printf("\n5. Delete element");
        printf("\n6. Exit");
        printf("\nEnter choice \n");
        
        scanf("%d",&ch);
      
        switch(ch)
        {
            case 1 :
                break;
                
            case 2 :
                break;
            
            case 3 :
                break;
                
            case 4 :
                break;
                
            case 5 :
                break;
                
            case 6 :
                break;
        }
        
        printf("\nDo you want to continue ?\n");
        scanf(" %c ",&ans);
        printf("\n");
     };
    
    return 0;
}

解决方法

...prevState.categories-> scanf(" %c ",&ans);删除尾随空格。

无需在scanf(" %c",&ans);之后查找空格。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。