| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1130 人关注过本帖
标题:小白求助啊!!为什么总有错误
只看楼主 加入收藏
hesitating15
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-11-14
结帖率:0
收藏
已结贴  问题点数:10 回复次数:6 
小白求助啊!!为什么总有错误
int main()
{
    int a,b,c,bar;
    float t=0;
    scanf("%d,%d,%d",&a,&b,&c);
    if(b>0&&b<=12&&c>0&&c<=31)
    {
        if(a%4==0)   bar=1;
        else  bar=0;
        switch(b)
        {
            case 12:t+=30;
            case 11:t+=31;
            case 10:t+=31;
            case 9:t+=30;
            case 8:t+=31;
            case 7:t+=31;
            case 6:t+=30;
            case 5:t+=31;
            case 4:t+=30;
            case 3:t+=31;
            case 2:t+=28+bar;
            case 1:t+=31;
        }
    else   printf("data error!");
    }
    printf("%f",t);
    return 0;
}


不知道错在了哪里的我
2016-11-15 23:37
lanke711
Rank: 9Rank: 9Rank: 9
来 自:流浪在天国之路
等 级:蜘蛛侠
威 望:7
帖 子:317
专家分:1437
注 册:2015-7-16
收藏
得分:3 
1.缺少#include <stdiol.h>

2.if语句块的大括号把else给包含 进去了
 int main()
{
    int a,b,c,bar;
    float t=0;
    scanf("%d,%d,%d",&a,&b,&c);
    if(b>0&&b<=12&&c>0&&c<=31)
    {
        if(a%4==0)   bar=1;
        else  bar=0;
        switch(b)
        {
            case 12:t+=30;
            case 11:t+=31;
            case 10:t+=31;
            case 9:t+=30;
            case 8:t+=31;
            case 7:t+=31;
            case 6:t+=30;
            case 5:t+=31;
            case 4:t+=30;
            case 3:t+=31;
            case 2:t+=28+bar;
            case 1:t+=31;
        }
    else   printf("data error!");
    }<------------------------------------------------------------往哪放呢。
    printf("%f",t);
    return 0;
}

请认真看下面的格式:
    if()
      {
            //代码块
       }
    else
    {
        //代码块
    }

普通人之所以普通,是因为他们普遍有一个通病,那就是认为自己永远普通。
千夫所指,我亦坚持。就算被所有人误解,我也照样守护这一切。
我们总是觉得,这些灵魂的表情,傲慢自大,目中无人,其实,真正目中无人的是我们。它们傲慢的不过是表情,而我们傲慢的却是行为!
记得,是为了忘记!
只要想着有那么一天,我就能忍受现在的每一天!
灾难并不可怕,可怕的是心中没有了希望。
你以为我在天堂,其实我正在路上。
当你觉得自己走不到终点的时候,请不要放弃。或许你的对手也是这种感觉。
2016-11-16 04:45
自制力
Rank: 2
等 级:论坛游民
帖 子:19
专家分:32
注 册:2016-11-15
收藏
得分:3 
int main()//  首先你的编程风格就有问题!!要注意缩进!
{
    int a,b,c,bar;
    float t=0;
    scanf("%d,%d,%d",&a,&b,&c);//"%d,%d,%d"这里不要用逗号啊。。。容易错误!!   
    if(b>0&&b<=12&&c>0&&c<=31)
    {
        if(a%4==0)   bar=1;
        else  bar=0;
        switch(b)//不要break吗??!!
        {
            case 12:t+=30;
            case 11:t+=31;
            case 10:t+=31;
            case 9:t+=30;
            case 8:t+=31;
            case 7:t+=31;
            case 6:t+=30;
            case 5:t+=31;
            case 4:t+=30;
            case 3:t+=31;
            case 2:t+=28+bar;
            case 1:t+=31;//default干嘛不要??!!
        }
    else   printf("data error!");
    }
    printf("%f",t);
    return 0;
}

/*以上是所有的语法错误。。如果有语义错误。。再来问*/
2016-11-16 12:20
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:3 
回复 楼主 hesitating15
你确定case 12和case 11是希望这样赋值?
2016-11-16 12:28
hesitating15
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-11-14
收藏
得分:0 
回复 2楼 lanke711
为什么要有#include <stdiol.h>,是有什么用处吗(大神不要嫌弃我.......)

改过}后程序可以运行了
2016-11-16 16:59
hesitating15
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-11-14
收藏
得分:0 
回复 3楼 自制力
刚刚开始学嘛

改过后可以运行啦,多谢
2016-11-16 17:02
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:3 
回复 5楼 hesitating15
我猜2楼想表达的是 #include<stdio.h>

早知做人那么辛苦!  当初不应该下凡
2016-11-16 17:15
快速回复:小白求助啊!!为什么总有错误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038124 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved