Bella666 发表于 2019-3-11 14:41:13

C语言终端接收整数输入问题


假设每个输入行输入一个整数,空行代表输入结束。
知道用scanf 接收输入,但是“空行代表输入结束”怎么用代码表示啊?

jackz007 发表于 2019-3-11 16:00:00

本帖最后由 jackz007 于 2019-3-11 17:06 编辑

    以下代码,当屏幕显示 "BINGO !" 时,代表输入结束。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main(void)
{
      char kb , s                                                          ;
      int n                                                                        ;
      for(;;) {
                printf("\n")                                                         ;
                printf("Enter something : ")                                       ;
                fgets(kb , 80 , stdin)                                             ;
                if(sscanf(kb , "%s" , s) == 1) {
                        if(sscanf(s , "%d" , & n) == 1) printf("integer = %d\n" , n) ;
                        else printf("string = %s" , kb)                              ;
                } else {      
                        printf("< BINGO !>\n")                                       ;
                        break                                                      ;
                }
      }
}
页: [1]
查看完整版本: C语言终端接收整数输入问题