网站大量收购独家精品文档,联系QQ:2885784924

实验4-函数与指针.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验4 函数与指针 程序填空 1. 普通参数 本题分值:10 题目描述:输入日期的年份和月份,求该月有多少天。要求编写函数int daynum(int year,int month) ,求出 以year为年份、以month为月份的某个月的天数。以下是完成此项工作的程序,请在计算机上调试程序以 补足其中的空格。 代码: //通过日期求某月的天数。 #includeiostream using namespace std; int main() { int daynum(int year,int month); int y,m,d; cinym; if(y1900 || y=3000 || m1 || m12) { cout输入错误!endl; return 0; } d=daynum(y,m); //以y、m作实参调用函数,求出该月的天数 cout此月的天数为dendl; return 0; } int daynum(int year,int month) { int days; switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31; break; case 4: case 6: case 9: case 11: days=30; break; case 2: if(year%4 0year%100!=0 || year%400 0) days=29; else days=28; break; } return days; } 2. 字符数组参数 本题分值:10 题目描述:编写一个函数,用来求字符串s的任意子串。函数原型为 void SubString ( char s[ ] , int start , int len , char d[ ] ) ; 其中s是原字符串,d用来存放s中从第start个字符开始( 1≤start≤strlen(s) ),长度为len的子串。以下是完 成此项工作的程序,请在计算机上调试程序以补足其中的空格。 代码: #include iostream using namespace std; int main( ) { void SubString(char s[ ], int start, int len, char d[ ]); char s[81],d[81]; int m,n; gets(s); //输入一个字符串的值存放在字符数组s中,以回车结束 //cout从第m个字符开始(m≥1)取n个字符构成的子串。请依次输入m、n的值:; cinmn; if(mstrlen(s) || nstrlen(s) || m+nstrlen(s)+1) { coutm、n值超过了围!\n; return 0; } SubString(s,m,n,d); coutdendl; return 0; } //从s中第start个字符开始取出长度为len的子串放入d中 void SubString(char s[ ], int start, int len, char d[ ]) { int k,j; for(j=0,k=start-1;j len-1;j++,k++) d[j]=s[k]; d[len]=\0; } 3. 嵌套调用 本题分值:10 题目描述:验证哥德巴赫猜想:对任意输入的正整数n ,验证6 ~n以的偶数都可分解为两个素数(质 数)之和。以下程序中,函数bool divide(int n)是用来将偶数n分解为两个质数的;若分解成功,则返回 true ;否则返回false。函数bool IsPrime(int m)是用来判断m是否为质数的;若是,则函数返回true ;否则 返回false。请在计算机上调试以下程序,补足其中的空格。 代码: #include iostream #include cmath using namespace std; int main() { bool divide(int n); int i,n; cinn; if(n6) { cout输入数据出错\n; return 0; } for(i=6;i=n;i+=2) if(divide(i) false) //对i进行分解,并判断分解是否成功 { cout猜想错误\n;

文档评论(0)

A13865477551 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档