《C程序设计教案112课时——选择结构综合例题.docx》由会员分享,可在线阅读,更多相关《C程序设计教案112课时——选择结构综合例题.docx(5页珍藏版)》请在第一文库网上搜索。
1、教案序号11周次授课形式新授授课章节名称选择结构综合举例教学目的学会使用选择结构教学重点学会使用选择结构教学难点学会使用选择结构使用教具机房课外作业课后体会授课主要内容 4.8选择结构程序综合举例例4.8写一程序,判断某一年是否闰年。 解题思路:在前面已介绍过判别闰年的方法 本例用不同的方法编写程序 4.8选择结构程序综合举例 用变量Ie叩代表是否闰年的信息。若闰年,令Ieap=I;非闰年,1eap=。最后判断IeaP是否为1(真),若是,则输出“闰年”信息 参见教材图4.13#inc1udeintmain()intyear,1eap;printf(enteryear:);scanf(%d,&
2、year);if(year%4=0)if(year%100=0)if(year%400=0)Ieap=I;e1seIeap=O;e1se1eap=1;e1se1eap=0;if(1eap)printf(%dis,year);e1seprintf(%disnot,year);printf(a1eapyear.n);return0;)#inc1udeintmain()intyear,1eap;printf(enteryear:);scanf(%d,(fcyear);if(year%4=0)if(year%100=0)if(year%400=0)Ieap=I;e1seIeap=O;e1se1eap=
3、1;e1seIeap=O;if(1eap)printf(%dis,year);e1seprintf(%disnot,year);printf(a1eapyear.n);return0;)#inc1udeintmain()intyear,1eap;printf(enteryear:);scanf(%d,feyear);if(year%4=0)if(year%100=0)if(year%400=0)1eap=1;e1seIeap=O;e1se1eap=1;e1seIeap=O;if(1eap)printf(,%dis,year);e1seprintf(%disnot,year);printf(a1
4、eapyear.n);return0;)#inc1udeintmain()(intyear,1eap;printf(enteryear:);scanf(%d,(feyear);if(year%4=0)if(year%100=0)if(year%400=0)Ieap=I;e1seIeap=O;e1se1eap=1;e1seIeap=O;if(1eap)printf(,%dis,year);e1seprintf(%disnot,year);printf(a1eapyear.n);return0;例4.9求方程的解。#inc1ude#inc1udeintmain()(doub1ea,b,c,disc
5、,x1,x2,rea1part,imagpart;scanf(%1f,%1f,%If,&a,&b,&c);printf(Theequation);if(fabs(a)=1e-6)printf(isnotaquadraticn);e1sedisc=b*b-4*a*c;if(fabs(disc)1e-6)x1=(-b+sqrt(disc)(2*a);x2=(-b-sqrt(disc)(2*a);printf(hasdistinctrea1roots:%8.4fand%8.4fn,x1,x2);)e1serea1part=-b(2*a);imagpart=sqrt(-disc)(2*a);print
6、f(hascomp1exroots:nM);Printfc%8.4f+%8.4fin”,rea1part,imagpart);printf(%8.4f-%8.4fin,rea1part,imagpart);return0;rea1part=-b(2*a);imagpart=sqrt(-disc)(2*a);printf(,hascomp1exrootsn);printf(%8.4f+%8.4fin4*,rea1part,imagpart);PrintfC%84f-%84fin,rea1part,imagpart);)return0;rea1part=-b(2*a);imagpart=sqrt(
7、-disc)(2*a);printf(,hascomp1exroots:nM);Printf(%84f+%84fin”,rea1part,imagpart);PrintfC%8.4f-%8.4fin,rea1part,imagpart);)Ireturn0;)例4.10运输公司对用户计算运输费用。路程(Skm)越远,每吨千米运费越低。标准如下:s250没有折扣250s500500s10001000s20002000s解题思路:设每吨每千米货物的基本运费为P,货物重为W,距离为S,折扣为d总运费f的计算公式为f=pXwXsX(1-d)折扣的变化规律(参见教材图4.15):折扣的“变化点”都是25
8、0的倍数 在横轴上加一种坐标c,c的值为s/250 C代表250的倍数 当c1时,表示s250,无折扣 1c2时,表示250s500,折扣d=2% 2c4时,d=5%;4c8时,d=8%;8c12时,d=10%;c12时,d=15%#inc1udeintmain()intc,s;f1oatp,w,d,f;printf(p1easeenterprice,weight,discount:);scanf(%f,%f,%d,&p,&w,&s);if(s=3000)c=12;e1sec=s250;switch(c)case0:d=0;break;case 1: d=2;break;case 2: d=5;break;case 3: d=8;break;case 4: case9:case10:case 11: d=10;break;case 12: d=15;break;f=p*w*s*(1-d100);Printf(freight=%102fn,f);return0;