编写的程序还是报错
赵雨豪 人气红星 2015-08-10 16:58:08
2720 2 0

#include <stdio.h>

main ()

{

int month ,days;

scanf("%d",&month);

switch (month)

{

case 2:

days=28; break;

case 4:case 6:case 9:case 11:

  days=30 ; break;

              default:

 days=31;break;

}

}

printf("%d天\n",days);




-----------------Configuration: 判断一个月的天数 - Win32 Debug--------------------

Compiling...

判断一个月的天数.cpp

C:\Users\adm\Desktop\c语言学习\判断一个月的天数.cpp(15) : warning C4508: 'main' : function should return a value; 'void' return type assumed

C:\Users\adm\Desktop\c语言学习\判断一个月的天数.cpp(16) : error C2065: 'days' : undeclared identifier

C:\Users\adm\Desktop\c语言学习\判断一个月的天数.cpp(16) : error C2501: 'printf' : missing storage-class or type specifiers

C:\Users\adm\Desktop\c语言学习\判断一个月的天数.cpp(16) : error C2373: 'printf' : redefinition; different type modifiers

        c:\program files (x86)\microsoft visual studio\vc98\include\stdio.h(329) : see declaration of 'printf'

C:\Users\adm\Desktop\c语言学习\判断一个月的天数.cpp(16) : error C2078: too many initializers

执行 cl.exe 时出错.


问题来自: switch语句

共 2 个回答

    祁老师 人气红星 3198天前

    printf语句的位置不对 需要在在最后一个括号前面 

    同一个问题不要重复提问 直接点击回复我就可以追击问题

    最佳答案

    一非 圈内达人 3198天前

    1.结尾没有大括号(大括号打在最后的printf上面了)

    2.你开始没有printf,就直接scanf了

    3."%d天\n"格式错误

    下面是我自己写的,可以对一下,运行没有问题。报错的时候,你可以点击每一条,它会指出哪里写错了,你可以自己修改

    #include <stdio.h>
    main()
    {
     int year,month;
     printf("请输入年份月份:");
     scanf("%d%d",&year,&month);
     switch(month)
     {
     case 1:case 3:case 5:case 7:case 8:case 10:case 12:
      printf("31天");
      break;
     case 4:case 6:case 9:case 11:
      printf("30天");
      break;
     case 2:
         if((year%400==0)||(year%4==0&&year%100!=0))
      printf("29天");
         else
      printf("28天");
      break;
     default:
      printf("error!");
      break;
     }
    }

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题