C程序设计(谭浩强)课后习题答案选讲课件精品.pptVIP

  • 8
  • 0
  • 约5.94千字
  • 约 16页
  • 2017-02-02 发布于江苏
  • 举报

C程序设计(谭浩强)课后习题答案选讲课件精品.ppt

C程序设计(谭浩强)课后习题答案选讲课件精品

case 8:sum=date1.day+212; break; case 9:sum=date1.day+243; break case 10:sum=date1.day+273; break case 11:sum=date1.day+304; break case 12:sum=date1.day+334; break } If((date1.year%4==0date1.year%100!=0||date1.year%400==0)date1.month=3 ) sum+=1; return sum; } void main() //定义主函数 { printf(“Input year,month,day:”); scanf(“%d,%d,%d”,date.year,date.month,date.day); printf(“\n”); printf(“%d/%d is the %dth day in %d.”,date.month,date.day,days(date),date.year); } 注意:在main函数中的printf函数用days(date)调用days函数,其返回值就是天数。 智能信息处理实验室 Intelligent Information Process Lab Unit 11 C Language Program 11.2,写一个函数days,实现上面的计算。由主函数将年、月、日传递给days 函数,计算后将日数传回主函数输出。 解法一: struct y_m_d //定义结构体 { int year: int month; int day; }date; intdays(struct y_m_d date1) /*形参date1为结构体struct y_m_d类型*/ { int sum; switch(data.month) { case 1:sum=date1.day; break; case 2:sum=date1.day+31; break; case 3:sum=date1.day+59; break; case 4:sum=date1.day+90; break; case 5:sum=date1.day+120; break; case 6:sum=date1.day+151; break; case 7:sum=date1.day+181; break; 解法二: struct y_m_d //定义结构体 { int year: int month; int day; }date; void main() { int days(int,int,int);//对days函数的声明 int i,day_sum; printf(“Input year,month,day:”); scanf(“%d,%d,%d”,date.year,date.month,date.day); day_sum=days(date.year, date.month, date.day); printf(“%d/%d is the %dth day in d.”,date.month,date.day,day_sum,date.year); } Int days(int year,int month,int day) {int day_sum,i; int day_tab[12]={0,31,28,31,30,31,30,31,31,30,31,30,31}; day_sum=0; for(i=1;imonth;i++) day_sum+=day_tab[i]; day_sum+=day; If((date1.year%4==0date1.year%100!=0||date1.year%400==0)date1.month=3 ) day_sum+=1; retu

文档评论(0)

1亿VIP精品文档

相关文档