《课后习题评讲》PPT课件.ppt_第1页
《课后习题评讲》PPT课件.ppt_第2页
《课后习题评讲》PPT课件.ppt_第3页
《课后习题评讲》PPT课件.ppt_第4页
《课后习题评讲》PPT课件.ppt_第5页
已阅读5页,还剩8页未读 继续免费阅读

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4章 C+函数,温蜜 上海电力学院计信学院,本章主要内容,1编写函数,定义两个unsigned short int型的参数,返回两个参数的商,其数据类型为short int。如果第二个参数为0,输出错误提示信息。 2. 3. 4.编写函数,求两个整数的最大公约数和最小公倍数。 5.编写递归函数,计算x的y(y0)次幂。 6.编写程序,要求输人四位数的年份、两位数的月份和日期,把它们按“年 月 日”的格式输出,并计算它是这一年的第几天。,1编写函数,定义两个unsigned short int型的参数,返 回两个参数的商,其数据类型为short int。如果第二个参 数为0,输出错误提示信息。

2、 short int Divd (unsigned short int a, unsigned short int b) if (b = 0) return -1; else return a/b; ,1(con.) #include using namespace std; void main() unsigned short int x, y; short int z; cout xy; z = Divd(x, y); if (z-1) cout Answer: z; else cout Error, cant divide by zero!; return 0; ,4,编写函数,求两个整

3、数的最大公约数和最小公倍数。方法1:直接循环的思想,int maxp(int x, int y) int i; int t=(xy?x:y); /找2者中最小数 for(i=t; ;i-) if(x%i=0 ,常见错: if(x%i=0,4,编写函数,求两个整数的最大公约数和最小公倍数。方法2:辗转相除法,int maxp(int x, int y) int t ; if (i j) t= i; i = j; j = t; while(j != 0) t= i % j; i = j; j = t; return i; ,4 con. 最小公倍数方法1:,#include using names

4、pace std; int main( ) int a,b,x,y; cout a; cout b ; x = maxp(a,b); y = i * j / x; cout a 和 b 的最大公约数是: x endl; cout a 和 b 的最小公倍数是: y endl; ,4 con. 最小公倍数方法2:,#include using namespace std; int main( ) int a,b,x,y; cout a; cout b ; x = maxp(a,b); y = minb(a,b); cout a 和 b 的最大公约数是: x endl; cout a 和 b 的最小

5、公倍数是: y endl; ,int minb(int x, int y) int i; int t=(xy?x:y); /找2者中最大数 for(i=t; ;i+) if(i%x=0 ,5:编写递归函数,计算x的y(y0)次幂。,#include using namespace std; double power(int x ,int y) if (y = 1) return x; else return x *power(x, y-1); ,void main() int x, y; cout x; cout y; cout result is :power(x,y)endl; coutn

6、不是完数。endl; return 0; ,6:编写程序,要求输人四位数的年份、两位数的月份和日期,把它们按“年 月 日”的格式输出,并计算它是这一年的第几天。,int dayno(int year,int month,int day) int i,sum=0; for(i=1;imonth;i+) switch (i) case 1:/1、3、5、7、8、10、12月有31天 case 3:case 5:case 7:case 8:case 10: case 12:sum+=31;break; case 4:/4、6、9、11月有30天 case 6:case 9: case 11:sum+

7、=30;break; case 2:if (year%4=0 ,6:编写程序,要求输人四位数的年份、两位数的月份和日期,把它们按“年 月 日”的格式输出,并计算它是这一年的第几天。,void main() int year,month,day,k; coutyearmonthday; cout“The date is:”year“年” month“月”day“日” ; k=dayno(year,month,day); cout“是这一年的第”k“天”; ,今日内容,0,分别用迭代法和递归函数来求Fibonacci数列第20项。 1,写一个程序,找出给定数组中具有最小值的元素及其下标。 2,定义一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论