欢迎来到天天文库
浏览记录
ID:26839938
大小:47.50 KB
页数:6页
时间:2018-11-29
《c++程序设计实验八》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、完美.格式.编辑实验八1.实验目的(1)初步学会指针数组的定义与使用方法。(2)了解指向一维数组的指针变量的概念,能用指向一维数组的指针变量按行处理二维数组的问题。(3)理解返回指针值函数的概念、定义格式,学会用返回指针值函数处理字符串问题。(4)理解函数指针与函数指针变量的概念,学会用函数指针变量处理不同函数数学计算问题。2.实验要求(1)编写实验程序(2)在VC++运行环境中,输入源程序;(3)编译运行源程序;(4)输入测试数据进行程序测试;(5)写出实验输入数据与运行结果。3.实验内容(1)定义一个二维
2、字符数组s[3][80]及指针数组p[3],用cin.getline(s[i],80)输入3个字符串到二维数组3行中,然后用指针数组p对字符串进行降序排列(要求用擂台法),最后用指针数组p输出排序后的结果,用字符数组s输出排序前的三个字符串。实验数据:"VisualC++","VisualBasic","Delphi"(2)输入一个二维数组a[3][3],设计一个函数,用指向一维数组的指针变量和二维数组的行数作为函数的参数,求出平均值、最大值和最小值,并输出。实验数据:10,25,90,80,70,35,65
3、,40,55(3)设计程序,用函数指针变量完成两个操作数的加、减、乘、除、取余运算。实验数据:10+2010-510*1510/210%3(4)设计一个用梯形法求定积分的通用函数,被积函数的指针、积分的上限、积分的下限和积分的区间等分数作为函数的参数。分别求出下列定积分的值。4.解答参考(1)#include#include专业.资料.整理完美.格式.编辑voidmain(void){chars[3][80];char*p[3]={s[0],s[1],s[2]};c
4、har*pc;inti,j,k;cout<<"Input3String:"<>p[i];for(i=0;i<2;i++){k=i;for(j=i+1;j<3;j++)if(strcmp(p[i],p[j])<0)k=j;if(k!=i){pc=p[i];p[i]=p[k];p[k]=pc;}}for(i=0;i<3;i++)cout<5、ng:VisualBasicVisualC++DelphiVisualC++VisualBasicDelphiVisualBasicVisualC++Delphi(3)解:#includeintadd(intx,inty){returnx+y;}intsub(intx,inty){returnx-y;}intmul(intx,inty){returnx*y;}intdiv(intx,inty){returnx/y;}intres(intx,inty){returnx%y;}专业.资料.6、整理完美.格式.编辑voidmain(void){intx,y;charoperate;int(*f)(int,int);cout<<"inputthree0end"<>x>>operate>>y;switch(operate){case'+':f=add;break;case'-':f=sub;break;case'*':f=mul;break;case'/':f=div;break;case'%':f=res7、;break;default:return;}cout<floatave(float(*p)[3],float*max,float*mi8、n){floatsum=0;inti,j;for(i=0;i<3;i++){for(j=0;j<3;j++){sum+=(*p)[j];专业.资料.整理完美.格式.编辑if(*max<(*p)[j])*max=(*p)[j];if(*min>(*p)[j])*min=(*p)[j];}p++;}returnsum/9;}voidmain(void){floata[3][3],max,min,aver
5、ng:VisualBasicVisualC++DelphiVisualC++VisualBasicDelphiVisualBasicVisualC++Delphi(3)解:#includeintadd(intx,inty){returnx+y;}intsub(intx,inty){returnx-y;}intmul(intx,inty){returnx*y;}intdiv(intx,inty){returnx/y;}intres(intx,inty){returnx%y;}专业.资料.
6、整理完美.格式.编辑voidmain(void){intx,y;charoperate;int(*f)(int,int);cout<<"inputthree0end"<>x>>operate>>y;switch(operate){case'+':f=add;break;case'-':f=sub;break;case'*':f=mul;break;case'/':f=div;break;case'%':f=res
7、;break;default:return;}cout<floatave(float(*p)[3],float*max,float*mi
8、n){floatsum=0;inti,j;for(i=0;i<3;i++){for(j=0;j<3;j++){sum+=(*p)[j];专业.资料.整理完美.格式.编辑if(*max<(*p)[j])*max=(*p)[j];if(*min>(*p)[j])*min=(*p)[j];}p++;}returnsum/9;}voidmain(void){floata[3][3],max,min,aver
此文档下载收益归作者所有