好文档 - 专业文书写作范文服务资料分享网站

实验4-函数与指针

天下 分享 时间: 加入收藏 我要投稿 点赞

. . .

实验4 函数与指针

程序填空

1.

本题分值:10

题目描述:输入日期的年份和月份,求该月有多少天。要求编写函数int daynum(int year,int month),求出以year为年份、以month为月份的某个月的天数。以下是完成此项工作的程序,请在计算机上调试程序以补足其中的空格。 代码:

//通过日期求某月的天数。 #include using namespace std; void main() {

int daynum(int year,int month); int y,m,d; cin>>y>>m;

if(y<1900 || y>=3000 || m<1 || m>12) {

cout<<\输入错误!\ return 0; }

d=daynum(__(1)__); //以y、m作实参调用函数,求出该月的天数 cout<<\此月的天数为\}

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==0&&year0!=0 || year@0==0) days=29; else

days=28; break; }

return __(2)__; } 2.

本题分值:10

题目描述:编写一个函数,用来求字符串s的任意子串。函数原型为

void SubString ( char s[ ] , int start , int len , char d[ ] ) ;

其中s是原字符串,d用来存放s中从第start个字符开始( 1≤start≤strlen(s) ),长度为len的子串。以下是完成此项工作的程序,请在计算机上调试程序以补足其中的空格。 代码:

#include using namespace std; void 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的值:\

cin>>m>>n;

if(m>strlen(s) || n>strlen(s) || m+n>strlen(s)+1) {

cout<<\、n值超过了围!\\n\ return 0; }

SubString(__(1)__); cout<

//从s中第start个字符开始取出长度为len的子串放入d中

void SubString(char s[ ], int start, int len, char d[ ]) {

int k,j;

for(j=0,k=start-1;j<=__(2)__;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 #include

using namespace std; void main() {

bool divide(int n); int i,n; cin>>n; if(n<6) {

cout<<\输入数据出错\\n\ return 0; }

for(i=6;i<=n;i+=2)

if(divide(i)= = __(1)__) //对i进行分解,并判断分解是否成功 {

cout<<\猜想错误\\n\ return 0; } }

bool divide(int n) {

bool IsPrime(int n); int i,m;

for(i=3;i<=n/2;i++) {

if(!IsPrime(i)) continue; m=n-i;

if(__(2)__) break; //若m是素数,则分解已成功,结束该循环 }

if(i>n/2) return false;

cout<

.页脚.

实验4-函数与指针

...实验4函数与指针程序填空1.本题分值:10题目描述:输入日期的年份和月份,求该月有多少天。要求编写函数intdaynum(intyear,intmonth),求出以year为年份、以month为月份的某个月的天数。以下是完成此项工作的程序,请在计算机上调试程序以补足其中的空格。代
推荐度:
点击下载文档文档为doc格式
5bwa70smbb79c964hjsm5kaxd91bpl00kt7
领取福利

微信扫码领取福利

微信扫码分享