#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
int sum;
switch(month)
{
case 1:sum = 0; break ;
case 2:sum = 31; break;
case 3:sum = 59; break;
case 4:sum = 90; break;
case 5:sum = 120;break;
case 6:sum = 151;break;
case 7:sum = 181;break;
case 8:sum = 212;break;
case 9:sum = 243;break;
case 10:sum =273;break;
case 11:sum =304;break;
case 12:sum =334;break;
default :printf("sum %\n");break;
}
if (year % 4 == 0)
{
sum = sum + 1 + day;
}
else
{
sum = sum + day;
}
printf ("%d 年 %d 月 %d 日是该年中的第 %d\n 天",year,month,day,sum );
return 0;
}
评价结果是这样的:
运行成功,输出错误
hello.c: In function 'main':
hello.c:23:31: warning: unknown conversion type character 0xa in format [-Wformat=]
default :printf("sum %\n");break;
^
2008 年 8 月 8 日是该年中的第 221
天
天 刚刚莫名其妙被我改对了 printf (" %d年%d月%d日是该年的第%d天",year,month,day,sum );
可是为什么这个 不用 \n 呢?好像每次都有 \n ?
说明输出与题目所需要输出的内容不同