各位大神可以帮我指出错误在哪吗?谢谢啦!
c4droid吧
全部回复
仅看楼主
level 7
这个代码是根据输入的年月日来判断是一年的第几天,但老是出错,在此虚心求教!
2016年12月20日 09点12分 1
level 6
你写的有点麻烦[滑稽][滑稽]
2016年12月20日 11点12分 2
能帮忙指点一下哪出错了吗
2016年12月20日 11点12分
level 7
初学者一枚,请多关照[笑眼]
2016年12月20日 11点12分 3
level 6
用if最好加作用域}大括号
2016年12月20日 11点12分 4
level 6
你把代码发给我,我给你改
2016年12月20日 11点12分 5
太感谢了!
2016年12月20日 11点12分
level 7
#include<stdio.h>
int main()
{
int year, month, day, sum, flag = 1;
printf("Please input year,month and day:");
scanf("%d%d%d", &year, &month, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
flag == 1;
else
flag == 0;
switch (month - 1) {
case 12:sum += 31;
case 11:sum += 30;
case 10:sum += 31;
case 9:sum += 30;
case 8:sum += 31;
case 7:sum += 31;
case 6:sum += 30;
case 5:sum += 31;
case 4:sum += 30;
case 3:sum += 31;
case 2:sum += 30;
case 1:sum += 31;
default:printf("error");
}
sum += day;
printf("It's the %dth day of the year",sum);
return 0;
}
2016年12月20日 11点12分 6
level 3
我的也是这样啊
2016年12月20日 11点12分 7
那你的代码是什么呀
2016年12月20日 11点12分
我有好多程序 运行都出现这个 我也是初学者
2016年12月20日 11点12分
我也是初学者,目前处于自学阶段。
2016年12月20日 11点12分
level 3
2016年12月20日 11点12分 8
level 6
#include<stdio.h>
int main()
{
int year, month, day, sum, flag = 0;
printf("Please input year,month and day:");
scanf("%d%d%d", &year, &month, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
{
flag = 1;
}
if (flag == 1)
{
switch (month - 1)
{
case 11:
sum += 30;
case 10:
sum += 31;
case 9:
sum += 30;
case 8:
sum += 31;
case 7:
sum += 31;
case 6:
sum += 30;
case 5:
sum += 31;
case 4:
sum += 30;
case 3:
sum += 31;
case 2:
sum += 29;
case 1:
sum += 31;
default:
printf("error");
}
}
else
{
switch (month - 1)
{
case 11:
sum += 30;
case 10:
sum += 31;
case 9:
sum += 30;
case 8:
sum += 31;
case 7:
sum += 31;
case 6:
sum += 30;
case 5:
sum += 31;
case 4:
sum += 30;
case 3:
sum += 31;
case 2:
sum += 28;
case 1:
sum += 31;
default:
printf("error");
}
}
sum += day;
printf("It's the %d th day of the year", sum);
return 0;
}
2016年12月20日 11点12分 10
level 6
应该没问题
2016年12月20日 11点12分 11
level 7
得到的还是同样的结果
2016年12月20日 11点12分 12
level 13
把scanf拆成3句试试,连续%d是没空格的
2016年12月20日 14点12分 13
level 1
#include<stdio.h>
int main()
{
int year, month, day, sum, flag = 1;
printf("Please input year,month and day:");
scanf("%d %d %d", &year, &month, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
flag == 1;
else
flag == 0;
sum= day;
switch (month - 1) {
case 11:sum += 30;
case 10:sum += 31;
case 9:sum += 30;
case 8:sum += 31;
case 7:sum += 31;
case 6:sum += 30;
case 5:sum += 31;
case 4:sum += 30;
case 3:sum += 31;
case 2:sum += 28+flag;
case 1:sum += 31;
}
printf("It's the %dth day of the year",sum);
return 0;
}
2016年12月20日 19点12分 14
level 3
#include<stdio.h>
int main()
{
int year, month, day, sum, flag = 0;
printf("Please input year,month and day:\n");
scanf("%d%d%d", &year, &month, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
flag = 1;
switch (month - 1)
{
case 11: sum += 30;
case 10: sum += 31;
case 9: sum += 30;
case 8: sum += 31;
case 7: sum += 31;
case 6: sum += 30;
case 5: sum += 31;
case 4: sum += 30;
case 3: sum += 31;
case 2: sum += 28;
case 1: sum += 31; break;
default: printf("error");
}
sum += day + flag;
printf("It's the %dth day of the year", sum);
return 0;
}
2016年12月21日 01点12分 15
你也是在手机上编的吗
2016年12月21日 02点12分
可以告知你用的什么软件吗
2016年12月21日 04点12分
回复
刂锤乱世
:在手机上,我在这吧还能用哪个,你在设置里换一下字体大小颜色就好了
2016年12月21日 13点12分
那我怎么运行不出结果
2016年12月21日 13点12分
level 9
#include<stdio.h>
int main() {
int year, month, day, sum=0, flag = 0;
printf("Please input year,month and day:");
scanf("%d%d%d", &year, &month, &day);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
flag =1;
while(month) {
switch (month-1) {
case 10:
case 8:
case 7:
case 5:
case 3:
case 1:
sum += 31;
break;
case 11:
case 9:
case 6:
case 4:
sum += 30;
break;
case 2:
sum += 28+flag;
break;
case 0:
break;
default:
printf("error\n");
return 0;
}
month--;
}
sum += day;
printf("It's the %dth day of the year\n",sum);
return 0;
}
注意switch-case要配合break使用。
2016年12月21日 03点12分 16
1 2 尾页