我是新来的C-an编程人员,我正在尝试一本书中的一段代码。
当我试图构建并运行它时,我会收到无法运行程序的错误和警告。
不知道为什么。我的代码是逐字写的。我还在电脑上使用代码块。

#include <stdio.h>

 int main()
 {
     char choice;
     printf("Are you filing a single, joint or ");
     printf("Married return (s, j, m)? ");
     do
     {
         scanf(" %c ", &choice);
         switch (choice)
         {
             case ('s') : printf("You get a $1,000 deduction.\n");
                    break;
             case ('j') : printf("You geta 1 $3,000 deduction.\n");
                    break;
             case ('m') : printf("You geta $5,000 deduction.\n");
                    break;

             default    : printf("I don't know the ");
                          printf("option %c.\n, choice");
                          printf("Try again.\n");
                    break;

         }
      }while ((choice != 's') && (choice != 'j') && (choice != 'm');
      return 0;
  }

最佳答案

错误是由于)语句中缺少While
目前是:
while ((choice != 's') && (choice != 'j') && (choice != 'm');
应该是
while ((choice != 's') && (choice != 'j') && (choice != 'm'));
除此之外,您的scanfprintf语句也有问题。
目前他们是:
scanf(" %c, &choice");

printf("option %c.\n, choice");
这些应改为:
scanf(" %c", &choice);

printf("option %c.\n", choice);
如果在编写代码时小心,这些类型的问题很容易避免。

关于c - 一个简单的C switch语句程序错误。我无法构建和运行它。我不知道为什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17790503/

10-13 01:41