aceMak1r丶 发表于 2020-11-16 21:19:24

有没有大佬解决一下

#include <stdio.h>
#include <stdlib.h>

main(){
        char choice;
        int loop=1;
       
        do{

        printf("--------管理系统--------\n");
        printf("--------1显示--------\n");
        printf("--------2输入--------\n");
        printf("--------3输出--------\n");
        printf("--------4退出--------\n");
                printf("请输入:\n");
                scanf("%c",&choice);
                        getchar();
        system("cls");
   int get_a_int() {
        while( 1 != scanf("%d", &choice))
        {
                puts("That is not a number. Please input a number again...");
                ClearBuffer();
        }

        return choice;

               
                switch(choice){
                        case '1':printf("dsfasdf\n");
                                        break;
                        case '2':printf("eryer\n");
                                        break;
                        case '3':printf("dhsfdgdsfg\n");
                                        break;
                        case '4':printf("2\n");
                                        break;
               
                }
                       
        }while(loop);
}


这个是错误的,请问怎么改啊(需要完成的是输入其他的提升输入错误)

不败君王 发表于 2020-11-16 21:38:46

你还没有输入语句吧,你怎么输入,不应该有input()吗

aceMak1r丶 发表于 2020-11-16 21:44:34

不败君王 发表于 2020-11-16 21:38
你还没有输入语句吧,你怎么输入,不应该有input()吗

加在哪里啊,这个程序运行的时候是输入1234. 现在需要解决的是 如果输入其他的 需要写个语句提示输入错误请重新输入,求解决

永恒的蓝色梦想 发表于 2020-11-16 21:50:29

不败君王 发表于 2020-11-16 21:38
你还没有输入语句吧,你怎么输入,不应该有input()吗

C哪来的input

jackz007 发表于 2020-11-16 22:08:23

#include <stdio.h>
#include <stdlib.h>

int choice(void)
{
      char ch                                                ;
      for(;;) {               
                system("cls")                                    ;
                printf("\n\n")                                 ;
                printf("\t--------管理系统-----\n")            ;
                printf("\t--------1显示--------\n")            ;
                printf("\t--------2输入--------\n")            ;
                printf("\t--------3输出--------\n")            ;
                printf("\t--------4退出--------\n")            ;
                printf("\t       请输入: ")                      ;
                fflush(stdin)                                    ;
                scanf("%c" , & ch)                               ;
                if(ch > '0' && ch < '5') break                   ;
                printf("\n\t***输入错误,请输入数字 1 - 4.\n\n") ;
                fflush(stdin)                                    ;
                getchar()                                        ;
      }
      return ch - '0'                                          ;
}

main()
{
      int x                                                    ;
      x = choice()                                             ;
      switch(x){
                case 1 : printf("dsfasdf\n")                     ;
                         break                                 ;
                case 2 : printf("eryer\n")                     ;
                         break                                 ;
                case 3 : printf("dhsfdgdsfg\n")                  ;
                         break                                 ;
                case 4 : printf("2\n")                           ;
                         break                                 ;
      }
}

不败君王 发表于 2020-11-19 21:28:04

永恒的蓝色梦想 发表于 2020-11-16 21:50
C哪来的input

额,我以为是python
页: [1]
查看完整版本: 有没有大佬解决一下