C语言:scanf()输入*自动输入不停止,自支循环

#include<stdio.h>
//当前程序运行时如果输入*回车,则一直显示需要补考,不停止
//原因:scanf()键盘输入,有一个缓冲区,遇到回车才结束
//*指针,对应scanf()中涉及到的变量 
//保留scanf()后面的getchar(),则“吸收”了回车,只有*,整型为0,所以才显示补考 
main()
{
    
    int cj;
    cf:
    printf("请输入你的成绩:");
    scanf("%d",&cj);
    //getchar();
    //printf("%d\n",cj);
    if(cj<0) goto  zt;
    if(cj>=90&&cj<=100)
    printf("合格\n");
    else if(cj<90) printf("需要补考\n");
    else printf("输入错误\n");
        goto cf;
    
    getchar(); 
    zt:
        ;
        
 }

 

posted @ 2021-10-13 09:30  myrj  阅读(694)  评论(0编辑  收藏  举报