永发信息网

C语言初学者的一个程序问题。

答案:3  悬赏:80  手机版
解决时间 2021-04-22 15:28

#include <stdio.h>
void main()
{
int m,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,date,year,count;
c1=c3=c5=c7=c8=c10=c12=31;
c4=c6=c9=c11=30;
printf("请分别输入8位年月日(如19900531表示1990年5月31日):\n");
for(;;)
{
if(getchar()=='A') break;
scanf("%4d%2d%2d",&year,&m,&date);
if(year%4==0&&year%100!=0||year%400==0) c2=29;
else c2=28;
switch(m)
{
case 1:count=date;break;
case 2:count=date+c1;break;
case 3:count=date+c1+c2;break;
case 4:count=date+c1+c2+c3;break;
case 5:count=date+c1+c2+c3+c4;break;
case 6:count=date+c1+c2+c3+c4+c5;break;
case 7:count=date+c1+c2+c3+c4+c5+c6;break;
case 8:count=date+c1+c2+c3+c4+c5+c6+c7;break;
case 9:count=date+c1+c2+c3+c4+c5+c6+c7+c8;break;
case 10:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9;break;
case 11:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10;break;
case 12:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10+c11;break;
}
printf("%d月%d日是%d年的第%d天\n",m,date,year,count);
}
}

最佳答案
是哪里出问题了呢?
全部回答

#include <stdio.h> void main() { int m,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,date,year,count; c1=c3=c5=c7=c8=c10=c12=31; c4=c6=c9=c11=30; printf("请分别输入8位年月日(如19900531表示1990年5月31日):\n"); for(;;) { if(getchar()=='A') break;//把这句屏蔽掉。。就好了。。。。

scanf("%4d%2d%2d",&year,&m,&date); if(year%4==0&&year%100!=0||year%400==0) c2=29; else c2=28; switch(m) { case 1:count=date;break; case 2:count=date+c1;break; case 3:count=date+c1+c2;break; case 4:count=date+c1+c2+c3;break; case 5:count=date+c1+c2+c3+c4;break; case 6:count=date+c1+c2+c3+c4+c5;break; case 7:count=date+c1+c2+c3+c4+c5+c6;break; case 8:count=date+c1+c2+c3+c4+c5+c6+c7;break; case 9:count=date+c1+c2+c3+c4+c5+c6+c7+c8;break; case 10:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9;break; case 11:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10;break; case 12:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10+c11;break; } printf("%d月%d日是%d年的第%d天\n",m,date,year,count); } }

if(getchar()=='A') break;//把这句屏蔽掉。。就好了。。。。

#include <stdio.h> void main() { int m,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,date,year,count; c1=c3=c5=c7=c8=c10=c12=31; c4=c6=c9=c11=30; char c; printf("请分别输入8位年月日(如1990 05 31表示1990年5月31日):\n"); // 分开输入 for(;;) { if((c=getchar())=='A') break; else ungetc(c, stdin); // 如果不是A要把这个字符退回去 scanf("%4d%2d%2d",&year,&m,&date); if(year%4==0&&year%100!=0||year%400==0) c2=29; else c2=28; switch(m) { case 1:count=date;break; case 2:count=date+c1;break; case 3:count=date+c1+c2;break; case 4:count=date+c1+c2+c3;break; case 5:count=date+c1+c2+c3+c4;break; case 6:count=date+c1+c2+c3+c4+c5;break; case 7:count=date+c1+c2+c3+c4+c5+c6;break; case 8:count=date+c1+c2+c3+c4+c5+c6+c7;break; case 9:count=date+c1+c2+c3+c4+c5+c6+c7+c8;break; case 10:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9;break; case 11:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10;break; case 12:count=date+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10+c11;break; } printf("%d月%d日是%d年的第%d天\n",m,date,year,count); } }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么在安装炫舞的时候提示要插入磁盘呢?
wood和lumber有什么不同
月下独酌的势诗句和喝酒的背景
盐城市隆盛橡塑密封件厂怎么去啊,有知道地址
手机QQ上的聊天记录,电脑上怎么查?
抢车位怎样才能改掉在好友的列表显示的名字
《名侦探柯南》中的怪盗基德和柯南的对决柯南
为什么网页打不开啊
欧·亨利最擅长的写作手法是什么?
建行的UK好用还是支付宝好用?
一个朋友在我生日时送了件衣服给我,过了几个
我川女装 哪里可以买到这个牌子的衣服?淘宝
昨天刚换了一个显示器,桌面什么的都正常,玩
男性,怎样才能检查出自己自患有不孕症?
1972年的农历十二月十三是属于什么星座
推荐资讯
请问江西抚州哪些地方好玩
修杰楷在痞子英雄里出现几集,都哪几集
不知道孙悟空跟宇智波斑那个更厉害啊?
数字的意思
做为电台DJ需要具备什么条件?
怎么把我二弟头上的毛永远去掉?
安慰离婚男人经典语句,有没有关于男人的经典
帆布鞋鞋底发黄了怎么办?
谁会装孤岛危机???
城阳古庙具体位置在哪
努尔哈赤是怎么死的
那位大哥有空给弄下黑莓中文输入的的注册码 P
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?