132实验十三数组指针和函数综合编程练习参考答案.doc_第1页
132实验十三数组指针和函数综合编程练习参考答案.doc_第2页
132实验十三数组指针和函数综合编程练习参考答案.doc_第3页
132实验十三数组指针和函数综合编程练习参考答案.doc_第4页
132实验十三数组指针和函数综合编程练习参考答案.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、函数返回值:最高分*/形参均为数组数组、指针和函数综合编程练习:打印最高分和学号假设每班人数最多不超过 40人,具体人数由键盘输入,试编程打印最高分及其学号。程序1用一维数组和指针变量作为函数参数,编程打印某班一门课成绩的最高分及其学号。/*以一维数组的数组名作函数参数,实参、形参均为数组以指针变量作函数形参,通过该指针变量间接访问主调函数中的变量,并修改其值*/#include #define ARR_SIZE 40int FindMax(int score , long num , int n, long *pMaxNum);void main()int scoreARR_SIZE, ma

2、xScore, n, i;long numARR_SIZE, maxNum;printf(Please enter total number:);scanf(%d, &n);/*从键盘输入学生人数n*/printf(Please enter the number and score:n);for(i=0; in; i+)/*分别以长整型和整型格式输入学生的学号和成绩*/scanf(%ld %d, &numi, &scorei);maxScore = FindMax( score, num, n, &maxNum ); /* 计算最高分及学生学号 */printf(maxScore = %d,

3、maxNum = %ldn, maxScore, maxNum);/*函数功能:计算最高分及最高分学生的学号函数入口参数:整型数组 score,存放学生的成绩.长整型数组num,存放学生的学号函数出口参数:长整型指针变量pMaxNum ,指向最高分学生的学号int FindMax( int score , long num , int n, long *pMaxNum )int i;int maxScore;maxScore = score0;/*假设score0为最高分*/*pMaxNum = num0;for (i=1; i maxScore)maxScore = scorei;/* 记录

4、最高分 */*pMaxNum = numi;/*记录最高分学生的学号numi*/return (maxScore);/* 返回最高分maxScore*/程序 2 用二维数组和指针变量作为函数参数,编程打印3 个班学生(假设每班4 个学生)的某门课成绩的最高分,并指出具有该最高分成绩的学生是第几个班的第几个学生。/* 以二维数组的数组名作函数参数,实参、形参均为数组以指针变量作函数形参,通过该指针变量间接访问主调函数中的变量,并修改其值*/#include #define CLASS 3#define STU 4int FindMax(int scoreSTU, int m, int *pRow

5、, int *pCol);void main()int scoreCLASSSTU, i, j, maxScore, row, col ;printf(Please enter score:n);for (i=0; iCLASS; i+)for (j=0; jSTU; j+)scanf(%d, &scoreij); /*输入学生成绩*/*计算最高分及其学生所在班号和学号*/maxScore = FindMax( score, CLASS, &row, &col );printf(maxScore = %d, class = %d, number = %dn, maxScore, row+1,

6、col+1);/* 函数功能:计算任意m 行 STU 列二维数组中元素的最大值,并指出其所在行列下标值函数入口参数:二维整型数组score,存放学生成绩整型变量 m ,二维整型数组的行数,代表班级数函数出口参数:整型指针变量pRow ,指向数组元素最大值所在的行整型指针变量pCol ,指向数组元素最大值所在的列函数返回值:数组元素的最大值*/int FindMax( int score STU, int m, int *pRow, int *pCol ) int i, j, maxScore;maxScore = score00;*pRow = 0;*pCol = 0;for (i = 0;

7、im; i+)for (j = 0; j maxScore)maxScore = scoreij;*pRow = i;*pCol = j;return (maxScore);/* 置初值,假设第一个元素值最大*/*记录当前最大值*/* 记录行下标*/* 记录列下标*/*if 结束 */* 内层 for 结束 */* 外层 for 结束 */*返回最大值*/程序 3 用指向二维数组第0 行第 0 列元素的指针作为函数参数, 编写一个计算m 行 n 列二维数组中元素的最大值, 并指出其所在的行列下标值的函数, 利用该函数计算3 个班学生 (假设每班 4 个学生) 的某门课成绩的最高分, 并指出具有

8、该最高分成绩的学生是第几个班的第几个学生。/* 以指向二维数组的数组元素的指针变量作函数参数,实参、形参均为指针以指针变量作函数形参,通过该指针变量间接访问主调函数中的变量,并修改其值*/#include #define CLASS 3#define STU 4 int FindMax(int *p, int m, int n, int *pRow, int *pCol);void main()int scoreCLASSSTU, i, j, maxScore, row, col;printf(Please enter score:n);for (i=0; iCLASS; i+)for (j=

9、0; jSTU; j+)scanf(%d, &scoreij);/* 输入学生成绩 */*计算最高分及其学生所在班号和学号*/maxScore = FindMax( *score, CLASS, STU, &row, &col );printf(maxScore = %d, class = %d, number = %dn, maxScore, row+1, col+1);、/*函数功能:计算任意 m行n列的二维数组的最大值,并指出其所在的行列下标值函数入口参数:整型指针变量p,指向一个二飞!卓数组的第0行第0列整型变量m,二维整型数组的行风整型变量n,二维整型数组的列数函数出口参数:整型指针变量pRow,指向数组元素最大值所在的行整型指针变量pCol,指向数组元素最鹏京在的列函数返回值:数组兀素的最大值*/int FindMax( int *p , int m, int n, int *pRow, int *pCol、int i, j, maxScore;maxScore = p0;7*曾栩1*pRow = 0;*pCol = 0;for (i = 0; im; i+)for (j = 0; j maxScore)maxScore = pi*n+j;*pRow = i;*pCol = j;L假设u个兀素值最大 */ 一一 、以指

温馨提示

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

评论

0/150

提交评论