#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
int sum = 0;
int i = 0;
int j = 0;
/*
* 请使用switch语句,if...else语句完成本题
* 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
* 小编还是希望大家独立完成哦~
*/
month = i;
if (i>7)
{
i -= 7;
sum += 213;
}
i -= 1;
i /= 2;
i *= 61;
sum = i + (month % 2) * 31;
if (year % 100 == 0 && year % 400 == 0 || year % 4 == 0 && year % 100 != 0)j = 1;
else j = 0;
if (j == 1 && month>2)
{
sum -= 2;
}
if (j == 0 && month <= 2)
{
sum -= 1;
}
sum += day;
printf("2008年8月8日是该年的第%d天", sum);
return 0;
}
新手表示看不懂0.0
用codeblocks试试,可以得出是第8天
#include <stdio.h> int main() { /* 定义需要计算的日期 */ int year = 2008; int month = 8; int day = 8; int sum = 0; int i = 0; int j = 0; /* * 请使用switch语句,if...else语句完成本题 * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办” * 小编还是希望大家独立完成哦~ */ month = i; if (i>7) //i为0,不执行 { i -= 7; sum += 213; } i -= 1; //-1 i /= 2; //-0.5 i *= 61; //-30.3 sum = i + (month % 2) * 31; //上面month = i ,month为0, sum为i,-30.5 //&&和||是并列关系,要打括号,这里是j = 0 if (year % 100 == 0 && year % 400 == 0 || year % 4 == 0 && year % 100 != 0)j = 1; else j = 0; if (j == 1 && month>2) { sum -= 2; } if (j == 0 && month <= 2) //到这里 { sum -= 1; } sum += day; printf("2008年8月8日是该年的第%d天", sum); //输出是7 return 0; //这逻辑........... }
有几种情况:1、在线编译器有BUG;2、有些字符的大小写不对(看你的编码没有问题);3、上传服务器时出错。
俺也是新手,以上是学习中遇到过的问题,希望能帮到你。