北科大C语言程序设计实验报告8 指针练习题代码.docx
《北科大C语言程序设计实验报告8 指针练习题代码.docx》由会员分享,可在线阅读,更多相关《北科大C语言程序设计实验报告8 指针练习题代码.docx(9页珍藏版)》请在冰豆网上搜索。
北科大C语言程序设计实验报告8指针练习题代码
姓名
学号
班级
说明:
1.本次上机内容分两次上机完成。
2.将本文档改名为“学号_姓名_班级”,按照本说明完成以下实验内容;
3.在16周周日前通过课程中心提交本文档。
实验内容和实验要求(实验指导P148)
1.练习题一
运行结果截图:
2.练习题二
纠错:
intFindMax(intscore[][STU],intn,intm,int*pRow,int*pCol)STU改为ARR_SIZE
运行结果截图:
#include<>
#defineCLASS3
#defineARR_SIZE40
intFindMax(intscore[CLASS][ARR_SIZE],intn,intm,int*pRow,int*pCol);
voidmain()
{
intscore[CLASS][ARR_SIZE],i,j,n,maxScore,row,col;
printf("Pleaseenterstudentnumberinaclass:
");
scanf("%d",&n);
printf("Pleaseenterscore:
\n");
for(i=0;i{
for(j=0;jscanf("%d",&score[i][j]);
}
maxScore=FindMax(score,n,CLASS,&row,&col);
printf("maxScore=%d,class=%d,number=%d\n",maxScore,row+1,col+1);
}
intFindMax(intscore[][ARR_SIZE],intn,intm,int*pRow,int*pCol)
{
inti,j,maxScore;
maxScore=score[0][0];
*pRow=0;
*pCol=0;
for(i=0;i{
for(j=0;jif(score[i][j]>maxScore)
{
maxScore=score[i][j];
*pRow=i;
*pCol=j;
}
}
return(maxScore);
}
思考题及问题:
1答案:
②答案:
函数文本(修改部分红色字体标注)
运行结果截图:
3.练习题三
运行结果截图:
#include<>
intstrlength(char*);
voidmain()
{
intn1,n2;
char*list1="Seenoevil,hearnoevil,";
char*list2="blindanddeaf";
n1=strlength(list1);
n2=strlength(list2);
puts(list1);
printf("Thelengthoflist1=%d\n",n1);
puts(list2);
printf("Thelengthoflist2=%d\n",n2);
}
intstrlength(char*s)
{
intn=0;
while(*s!
='\0')
{
n++;
s++;
}
returnn;
}
思考题及问题:
①答案:
②答案:
试编写strcmp函数,源程序文本:
运行结果截图:
4.练习题四
运行结果截图:
#include<>
doublecube(double);
doublesum(int,double(*p)(double));
voidmain()
{
double(*ptr)(double);
ptr=cube;
printf("sum=%.2lf\n",sum(4,ptr));
}
doublesum(intn,double(*p)(double))
{
doubles=0;
intk;
for(k=1;k<=n;k++)
s+=(*p)k);
returns;
}
doublecube(doublex)
{
return(x*x*x);
}
思考题及问题:
①答案:
②答案:
源程序文本(修改部分红色字体标注)
运行结果截图:
5.练习题五
运行结果截图:
#include<>
doublecube(double);
doublesum(int,double(*p)(double));
voidmain()
{
double(*ptr)(double);
ptr=cube;
printf("sum=%.2lf\n",sum(4,ptr));
}
doublesum(intn,double(*p)(double))
{
doubles=0;
intk;
for(k=1;k<=n;k++)
s+=(*p)k);
returns;
}
doublecube(doublex)
{
return(x*x*x);
}
思考题及问题:
①答案:
源程序文本(修改部分红色字体标注)
运行结果截图:
6.练习题六
运行结果截图:
思考题及问题:
①答案:
源程序文本(修改部分红色字体标注)
运行结果截图:
②答案:
源程序文本(修改部分红色字体标注)
运行结果截图:
自测练习
1.自测练习一
源程序文本:
运行结果截图:
2.自测练习二
源程序文本:
运行结果截图:
3.自测练习三
源程序文本:
运行结果截图:
4.自测练习四
源程序文本:
运行结果截图:
5.自测练习五
修改后的源程序文本(修改部分红色字体标注):
运行结果截图:
6.自测练习六(选做)