| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2827 人关注过本帖
标题:我用函数编写判断这一天是这一年的第几天不知道哪里出错,大家看看
取消只看楼主 加入收藏
yuhaihua200
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2012-3-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
我用函数编写判断这一天是这一年的第几天不知道哪里出错,大家看看
输入某年某月某日,判断这一天是这一年的第几天?
程序代码:
main()
{
    int day,month,year,a;
    int sum1(int);
    int sum2(int);
    printf("Please enter the date, and separated by periods:  ");
    scanf("%d.%d.%d",&day,&month,&year);
    if(year%10==0&&year%400==0||(year%10!=0&&year%4==0))
        a=sum1(month);
    else
        a=sum2(month);
    printf("This day is this year %d\n",a+day);
}
    int sum1(int m)
    {
        int a;
        a=switch(m)
        {
             case 1:31;break;
             case 2:60;break;
             case 3:91;break;
             case 4:121;break;
             case 5:152;break;
             case 6:182;break;
             case 7:213;break;
             case 8:244;break;
             case 9:274;break;
             case 10:305;break;
             case 11:335;break;
             case 12:366;break;
        }
        return(a);
    }
    int sum2(int m)
    {
        int a;
        a=switch(m)
        {
             case 1:31;break;
             case 2:60;break;
             case 3:90;break;
             case 4:120;break;
             case 5:151;break;
             case 6:181;break;
             case 7:212;break;
             case 8:243;break;
             case 9:273;break;
             case 10:304;break;
             case 11:334;break;
             case 12:365;break;
        }
        return(a);
    }

我不知道哪里出错了,请大家看看,谢谢
搜索更多相关主题的帖子: 函数 
2012-03-14 22:12
yuhaihua200
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2012-3-13
收藏
得分:0 
额。仔细想想,貌似想偏了。。。按照题目,肯定是错了,但是这程序我真的看不出错哦。。。
2012-03-14 22:43
yuhaihua200
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2012-3-13
收藏
得分:0 
回复 3楼 柳絮飞
忘了什么?
那个宏命令?没忘啊。。。只是贴主要的部分,下次我会把全部给贴出了的,呵呵。。。
2012-03-15 20:51
yuhaihua200
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2012-3-13
收藏
得分:0 
回复 13楼 C_戴忠意
灰常感谢,找出很多不足。。呵呵
有几个问题
1、while(scanf("%d/%d/%d",&year,&month,&day)!=EOF)/*这里你把year和day调一下人们习惯输入年月日*/
  这个为什么加while,加EOF什么意思?不知道书上有没有,目前在书上没看到EOF这个关键词。。。
2、 return 0;/*这里返回一个值规范编程*/
  为什么在主函数加return 0?return 0中的0指的是无返回值是吗?还有什么时候需要return 0,什么时候不需要?
在没学函数之前我编写的程序都没加过return 0.。。
3、 int sum1(int m);这个不要m也是正确的是吗?我看书好像不要m也是对的。。。

看到程序有这么问题,真是惭愧啊。。。我自己百度看能不能找到答案,也请大神们帮帮忙
2012-03-15 21:16
yuhaihua200
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2012-3-13
收藏
得分:0 
回复 14楼 laoyang103
我刚才百度说
C语言中没有布尔型这一数据类型,所以用整型代替,非0表示真,0表示假,但可以使用宏来定义TRUE和FALSE
所以你为什么用bool呢》?这样在c中是否合理?

或者说bool是省略了int的一个函数?

[ 本帖最后由 yuhaihua200 于 2012-3-15 21:28 编辑 ]
2012-03-15 21:26
快速回复:我用函数编写判断这一天是这一年的第几天不知道哪里出错,大家看看
数据加载中...
 
   



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

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