| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 602 人关注过本帖
标题:怎么星期输出都是-858993456?
只看楼主 加入收藏
一处开
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-4-1
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
怎么星期输出都是-858993456?
#include <stdio.h>
void main()
{
    int a,b,c,t;
    printf("请输入日期,以空格隔开:\n");
    scanf("%d %d",&a,&b);
    t=c+4;
    switch(a)
    {
    case 1:
        c=(b+28*(a-1)-1)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 2:
        c=(b+28*(a-1)+2)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 3:
        c=(b+28*(a-1)+2)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 4:
        c=(b+28*(a-1)+5)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 5:
        c=(b+28*(a-1)+7)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 6:
        c=(b+28*(a-1)+10)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 7:
        c=(b+28*(a-1)+12)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 8:
        c=(b+28*(a-1)+15)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 9:
        c=(b+28*(a-1)+18)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 10:
        c=(b+28*(a-1)+20)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 11:
        c=(b+28*(a-1)+23)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    case 12:
        c=(b+28*(a-1)+25)%7;
        printf("%d月%d日是星期%d\n",a,b,t);
        break;
    default:printf("您的输入有误!\n");
    }
}
搜索更多相关主题的帖子: include 
2015-04-02 14:30
一处开
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-4-1
收藏
得分:0 
2015-04-02 14:31
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:10 
真不知道你这程序嘛意思?纯粹的练习switch语句?
scanf函数不要做特殊处理。
scanf("%d%d",&a,&b);
在键盘输入的时候 数字再用空格隔开。
并且你的c,t没有初始化 这样就会给你一个随机值。
最后 t=c+4;这个在switch外面。永远打印同一个数。

[ 本帖最后由 执笔画江山 于 2015-4-2 14:45 编辑 ]

授人以鱼,不如授人以渔
2015-04-02 14:43
一处开
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-4-1
收藏
得分:0 
回复 3楼 执笔画江山
没有啦!我别看书别写啊!⊙﹏⊙b汗
2015-04-02 14:46
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:0 
回复 4楼 一处开
看书都敲不出来么  那就仔细看 一个字符一个字符的看→_→

授人以鱼,不如授人以渔
2015-04-02 14:48
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:10 
提供计算日期的方法,下面两个都可以
1
unsigned char day_of_week(unsigned short y, unsigned m, unsigned d)
{
    if (m < 3)
    {
        m += 13;
        y--;
    }
    else
    {
        m++;
    }
   
    return (d + 26 * m / 10 + y + y / 4 - y / 100 + y / 400 + 6) % 7;
}

2
int dayofweek(int y, int m, int d)
{
    static int t[]={0,3,2,5,0,3,5,1,4,6,2,4};
    y -= m<3;
    return (y + y/4 - y/100 + y/400 + t[m-1] + d) % 7;
}

如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2015-04-02 14:48
一处开
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-4-1
收藏
得分:0 
回复 5楼 执笔画江山
⊙﹏⊙b汗!没学过啊!正在看,边看就边问!⊙﹏⊙b汗
2015-04-02 14:53
一处开
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-4-1
收藏
得分:0 
回复 6楼 young
谢谢啦!
2015-04-02 14:54
快速回复:怎么星期输出都是-858993456?
数据加载中...
 
   



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

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