指针练习,查找学生成绩并输出平均成绩和排名信息 每日一练(四)
来源:互联网 发布:淘宝店铺怎么 编辑:程序博客网 时间:2024/05/12 18:11
总结:1、注意函数调用时如果用到其他函数的变量,要进行参数传递,会写形参和实参,由指针指向;可以在前面定义一些数组,然后由指针分别指向这些数组,那么接下来这些数组和指针都能在其他函数中得到调用;
2、C中函数如果main函数在前面的话一定要声明函数在最前面;
3、函数从main函数执行,因此main函数中的函数调用的顺序很重要,哪个函数在前面很重要
4、本题的排名用排序,然后去判断相等得到排名信息,也可以在sort函数交换数据的时候同时交换学号信息,但是不是很好。
#include<stdio.h>//*****指针练习,n个学生,每人四门课,计算平均分,查询各科成绩,排名*****//#define N 10float score[N][4]={{90,99,97,98},{65,67,70,60},{80,87,90,81}};//存成绩信息,用二维指针float aver[N]; //存平均成绩,用指针*q指导这float array1[N]; //存排名信息,用指针*r指到这 //每定义一个指针就要定义一个不管是空的还是非空的数组指向它,不能浮游指针。这四个数组中有三个是初始化用的,没有存东西开始//float(*p)[4];void search(float(*p)[4],float*q,float*r);void average(float(*p)[4],float*q);void sort(float*r,float*q);int main(void){ average(score,aver);sort(array1,aver);search(score,aver,array1);} //***********求平均成绩,传递了所有人的成绩并将平均成绩存到指针*q指向的数组float aver[N]中*******************//void average(float(*p)[4],float*q) { int i,j; for(i=0;i<N;i++) { float sum=0.0; for(j=0;j<4;j++) sum+=*(*(p+i)+j); *(q+i)=sum/4; } }//********冒泡排序将平均成绩*********//void sort(float*r,float*q){//复制*q里面存的平均分int i,j;float temp;int b[N];for(i=0;i<4;i++) *(r+i)=*(q+i); for(j=0;j<N-1;j++){ for(i=0;i<N-1-j;i++) { if(*(r+i)<*(r+i+1))//数组元素大小按降序排列 { temp=*(r+i); *(r+i)=*(r+i+1); *(r+i+1)=temp; } } }}//*********查找函数找到所有分数,并且将平均成绩和排名都在此函数中输出,注意一些细节*********************//// void search(float(*p)[4],float*q,float*r)//定义二维指针,并将二维数组首地址给它 { int i,m=0; printf("Input zhe ID of the student:\t"); scanf("%d",&m); printf("\nAll the score of the student:\t"); for(i=0;i<4;i++) { printf("%5.2f\t",*(*(p+m-1)+i));//要减一 } printf("\nThe average score of the student:%5.2f\t",*(q+m-1));//要减一 for(i=0;i<N;i++) { if(*(q+m-1)==*(r+i))//要减一 printf("\nThe ranking of the student:%d\t",i+1);//sort函数已经排好顺序,现在只要比较就行,相等则就是它的排名,要加一 } }
0 0
- 指针练习,查找学生成绩并输出平均成绩和排名信息 每日一练(四)
- 结构体编程练习,输入5个学生名称和三科成绩,并输出平均成绩最高的学生名称和,平均成绩
- 输入学生成绩,输出平均成绩
- (指向结构体数组的指针)有n个结构体变量,内含学生学号,姓名和3门课的成绩。要求输出平均成绩最高的学生的信息
- Linux-C基础知识学习:C语言作业-输入某个学生的信息(姓名,年龄,5门功课成绩),计算平均成绩并输出。(待完善)
- 【数据结构上机作业】输入一批学生的成绩(至少包括学生学号、姓名、课程成绩),用单链表存储,输出大于平均成绩的学生信息。
- 输出学生成绩。本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。
- 编写一个程序,输出学生已有的学号姓名成绩等数据并计算总人数和平均成绩
- MapReduce编程练习(四),统计多个输入文件学生的平均成绩,
- 输入m个学生,每个学生有4门课,在主调函数中输入学生的相关信息,编写三个函数: (1)求第一门课的平均分; (2)找出有两门课以上不及格的学生,并输出他们的学号和全部成绩,要求用指针函数实现:fl
- [4.21]编写一个程序,已有若干个学生的数据,包括学号、姓名、成绩、要求输出这些学生的数据并计算出学生人数和平均成绩(要求将学生人数和总成绩用静态数据成员表示)。
- 统计学生成绩信息并按要求输出相关信息
- while循环输出学生成绩,平均分
- 三个学生,每人修四科,计算所有学生成绩的平均分,并输出某个学生的成绩
- (要求使用指针方法)一个班有四名学生,五门课。(1)求第一门课的平均分;(2)找出有两门以上课不及格的学生,输出他们的学号、全部课程成绩和平均成绩;(3)找出平均成绩在90分以上或全部课程成绩均在85
- 【C语言】有n个结构体变量,内含学生号, 姓名和三门课成绩。要求输出平均成绩最高学生的信息。
- 学生成绩(指针)
- 编写一个程序,已有若干学生的数据,包括学号,姓名,成绩,要求输出这些学生的数据并计算出学生人数和平均成绩
- 什么是MD5,什么是SHA-1
- iOS 火星坐标相关整理及解决方案汇总
- MTD原始设备与FLASH硬件驱动的对话
- 从 .net 1.1 升级到 2.0过程中遇到的问题及解决方法
- 配置OpenCV产生flann\logger.h(66): error C4996: 'fopen': This function or variable may be unsafe问题
- 指针练习,查找学生成绩并输出平均成绩和排名信息 每日一练(四)
- ffmpeg 源代码简单分析 : av_read_frame()
- 64位linux安装xampp(xampp只支持32位的linux版本) XAMPP is currently only availably as 32 bit application. Pleas
- spring security权限管理手册
- MPMoviePlayerViewController和MPMoviePlayerController的使用
- 简单快乐
- 一个异步网络请求的坑:关于NSURLConnection和NSRunLoopCommonModes
- bootstrap简单的页面Demo1
- 另一个现象则是中国成为各方争取的对象