c语言程序设计苏小红版第七章课后实验答案

2024-05-15

1. c语言程序设计苏小红版第七章课后实验答案

不知道你说的是不是这一次实验
2.2.7  实验7:二维数组和函数综合编程练习
成绩排名次
某班期末考试科目为数学(MT)、英语(EN)和物理(PH),有最多不超过30人参加考试。考试后要求:
(1)计算每个学生的总分和平均分;
(2)按总分成绩由高到低排出成绩的名次;
(3)打印出名次表,表格内包括学生编号、各科分数、总分和平均分;
(4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数。
【思考题】  请读者思考如下问题。
① 如果增加一个要求:要求按照学生的学号由小到大对学号、成绩等信息进行排序,那么程序如何修改呢?
② 如果要求程序运行后先打印出一个菜单,提示用户选择:成绩录入、成绩排序、成绩查找,在选择某项功能后执行相应的操作,那么程序如何修改呢?


答案


#include  

#define STU 30
#define COURSE 3

void Input(long num[],int score[][COURSE],int n);
void GetSumAver(int score[][COURSE],int n,int sum[],float aver[]);
void Sort(long num[],int score[][COURSE],int n,int sum[],float aver[]);
void Print(long num[],int score[][COURSE],int n,int sum[],float aver[]);
int  Search(long num[], int n, long x);

main()
{
	int n, score[STU][COURSE], sum[STU], pos;
	long num[STU], x;
	float aver[STU];

	printf("Please enter the total number of the students(n<=30):");
	scanf("%d", &n);					/*输入参加考试的学生人数*/

	printf("Enter No. and score as: MT  EN  PH\n");
	Input(num, score, n);				/*输入学生成绩*/

	GetSumAver(score, n, sum, aver);	/*计算总分和平均分*/
	printf("Before sort:\n");
	Print(num, score, n, sum, aver);

	Sort(num, score, n, sum, aver);		/*排名次*/
	printf("After sort:\n");
	Print(num, score, n, sum, aver);

	printf("Please enter searching number:");
	scanf("%ld", &x);					/*以长整型格式输入待查找学生的学号*/
	pos = Search(num, n, x);			/*名次查询*/
	if (pos != -1)
	{
		printf("position:\t  NO \t  MT \t  EN \t  PH \t  SUM \t AVER\n");
		printf("%8d\t%4ld\t%4d\t%4d\t%4d\t%5d\t%5.0f\n",
				    pos+1,num[pos],	score[pos][0],score[pos][1],
				    score[pos][2],	sum[pos],aver[pos]);
	}
	else
	{
		printf("Not found!\n");
	}
}

/* 函数功能:输入某班学生期末考试三门课程成绩
   函数参数:长整型数组num,存放学生学号
             整型数组score,存放学生成绩
			   整型变量n,存放学生人数
   函数返回值:无
*/
void Input(long num[], int score[][COURSE], int n)
{
	int  i, j;

	for (i=0; i<n; i++)
	{
		scanf("%ld", &num[i]);
		for (j=0; j<COURSE; j++)
		{
				scanf("%d", &score[i][j]);
		}
	}
}

/* 函数功能:计算每个学生的总分和平均分
   函数参数: 整型数组score,存放学生成绩
			    整型变量n,存放学生人数
		整型数组sum,计算得到的每个学生的总分
				实型数组aver,计算得到的每个学生的平均分
   函数返回值:无
*/
void GetSumAver(int score[][COURSE], int n, int sum[], float aver[])
{
	int i, j;

	for (i=0; i<n; i++)
	{
		sum[i] = 0;
		for (j=0; j<COURSE; j++)
		{
				sum[i] = sum[i] + score[i][j];
		}
		aver[i] = (float)sum[i] / COURSE;
	}
}

/* 函数功能:按总分成绩由高到低排出成绩的名次
   函数参数:长整型数组num,存放学生学号
             整型数组score,存放学生成绩
			整型变量n,存放学生人数
			整型数组sum,存放每个学生的总分
			实型数组aver,存放每个学生的平均分
   函数返回值:无
*/
void Sort(long num[],int score[][COURSE], int n, int sum[], float aver[])
{
	int i, j, k, m;
	int temp1;
	long temp2;
	float temp3;

	for (i=0; i<n-1; i++)
	{
		k = i;
		for (j=i+1; j<n; j++)
		{
				if (sum[j] > sum[k])  k = j;
		}
		if (k != i)
		{
				temp1 = sum[k];  sum[k] = sum[i];  sum[i] = temp1;
				temp2 = num[k];  num[k] = num[i];  num[i] = temp2;
				temp3 = aver[k];  aver[k] = aver[i];  aver[i] = temp3;
				for (m=0; m<COURSE; m++)
				{
					temp1 = score[k][m];
					score[k][m] = score[i][m];
					score[i][m] = temp1;
				}
		}
	}
}

/* 函数功能: 打印名次表,表格内包括学生编号、各科分数、总分和平均分
   函数参数: 长整型数组num,存放学生学号
				整型数组score,存放学生成绩
				整型变量n,存放学生人数
				整型数组sum,存放每个学生的总分
				实型数组aver,存放每个学生的平均分
   函数返回值:无
*/
void Print(long num[], int score[][COURSE], int n,
				int sum[], float aver[])
{
	int  i, j;

	printf("  NO \t|   MT \t  EN \t PH \t SUM \t AVER\n");
	printf("----------------------------------------------------\n");
	for (i=0; i<n; i++)
	{
		printf("%ld\t| ", num[i]);
		for (j=0; j<COURSE; j++)
		{
				printf("%4d\t", score[i][j]);
		}
		printf("%5d\t%5.0f\n", sum[i], aver[i]);
	}
}

/* 函数功能:在学号数组中顺序查找学生的学号
   函数参数:长整型数组num,存放学生学号
             整型变量n,存放学生人数
		长整型变量x,存放待查找学生的学号
   函数返回值:找到时,返回学生学号在学号数组中的下标位置,否则返回值-1
*/
int Search(long num[], int n, long x)
{
	int  i;

	for (i=0; i<n; i++)
	{
		if (num[i] == x)  return(i);
	}
	return (-1);
}

c语言程序设计苏小红版第七章课后实验答案

2. C程序设计(第四版)的内容简介

由谭浩强教授著、清华大学出版社出版的《C程序设计》是一本公认的学习C语言程序设计的经典教材。根据C语言的发展和计算机教学的需要,作者在《C程序设计(第三版)》的基础上进行了修订。本书按照C语言的新标准C 99进行介绍,所有程序都符合C 99的规定,使编写程序更加规范;对C语言和程序设计的基本概念和要点讲解透彻,全面而深入;按照作者提出的“提出问题—解决问题—归纳分析”三部曲进行教学、组织教材;本书的每个例题都按以下几个步骤展开:提出任务—解题思路—编写程序—运行程序—程序分析—有关说明。符合读者认知规律,容易入门与提高。本书内容先进,体系合理,概念清晰,讲解详尽,降低台阶,分散难点,例题丰富,深入浅出,文字流畅,通俗易懂,是初学者学习C程序设计的理想教材,可作为高等学校各专业的正式教材,也是一本自学的好教材。本书还配有辅助教材《C程序设计(第四版)学习辅导》。

3. 《C程序设计语言第2版·新版》pdf下载在线阅读全文,求百度网盘云资源

《C程序设计语言(第2版·新版)》([美] Brian W. Kernighan)电子书网盘下载免费在线阅读
链接: https://pan.baidu.com/s/1txJqYzmjYS-BSw43eLWrnQ
 提取码: sejp    
书名:C程序设计语言(第2版·新版)
作者:[美] Brian W. Kernighan
译者:徐宝文
豆瓣评分:9.4
出版社:机械工业出版社
出版年份:2004-1
页数:258
内容简介:
在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书作者是C语言的设计者之一Dennis M. Ritchie和著名计算机科学家Brian W. Kernighan合著的一本介绍C语言的权威经典著作。我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。
原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,World"程序就是由本书首次引入的,现在,这一程序已经成为众多程序设计语言入门的第一课。原著第2版根据1987年制定的ANSIC标准做了适当的修订.引入了最新的语言形式,并增加了新的示例,通过简洁的描述、典型的示例,作者全面、系统、准确地讲述了C语言的各个特性以及程序设计的基本方法。
对于计算机从业人员来说,本书是一本必读的程序设计语言方面的参考书。
作者简介:
Brian W. Kernighan,贝尔实验室计算科学研究中心高级研究人员,著名的计算机科学家。参加了UNIX系统、C语言、AWK语言和许多其他系统的开发,同时出版了许多在计算机领域具有影响的著作,如《The Elements of Programming Style》《The Practice of Programming》《The UNIX Programming Environment》《The AWK Language》《Software Tools》等。
Dennis M. Ritchie,1967年加入贝尔实验室。他和 Ken L. Thompson 两人共同设计并实现的C语言改变了程序设计语言发展的轨迹,是程序设计语言发展过程中的一个重要里程碑。与此同时,他们还设计并实现了UNIX操作系统。正是由于这两项巨大贡献,Dennis M. Ritchie 于1983年获得了计算机界的最高奖——图灵奖。此外,他还获得了ACM、IEEE、贝尔实验室等授予的多种奖项.。

《C程序设计语言第2版·新版》pdf下载在线阅读全文,求百度网盘云资源

4. 求《c程序设计语言第二版》全文免费下载百度网盘资源,谢谢~

《c程序设计语言第二版》百度网盘pdf最新全集下载:链接: https://pan.baidu.com/s/1ye0J-Z1SePDTizMZxkPRIA
?pwd=7uyn 提取码: 7uyn简介:全面、系统地讲述了C语言的各个特性及程序设计的基本方法。    

5. 《c程序设计语言第二版》pdf下载在线阅读全文,求百度网盘云资源

《c程序设计语言第二版》百度网盘pdf最新全集下载:链接: https://pan.baidu.com/s/1ye0J-Z1SePDTizMZxkPRIA
?pwd=7uyn 提取码: 7uyn简介:全面、系统地讲述了C语言的各个特性及程序设计的基本方法。    

《c程序设计语言第二版》pdf下载在线阅读全文,求百度网盘云资源

6. 《C程序设计语言习题解答》pdf下载在线阅读,求百度网盘云资源

《C程序设计语言习题解答》(CLVIS L.TONDO)电子书网盘下载免费在线阅读
链接:https://pan.baidu.com/s/1WAGOhj15mAxb3zBIHym96g
 密码:2tj7
书名:C程序设计语言习题解答
作者:CLVIS L.TONDO
出版社:清华大学出版社
出版年份:1997-11-1
页数:216
内容简介:《大学计算机教育丛书·C程序设计语言习题解答(第2版)(影印版)》由清华大学出版社出版。

7. 《C程序设计语言第2版·新版》pdf下载在线阅读,求百度网盘云资源

《C程序设计语言(第2版·新版)》([美] Brian W. Kernighan)电子书网盘下载免费在线阅读
链接:https://pan.baidu.com/s/1gtuS6_1CfW4NWFVi0iqMlw
 密码:ihar
书名:C程序设计语言(第2版·新版)
作者:[美] Brian W. Kernighan
译者:徐宝文
豆瓣评分:9.4
出版社:机械工业出版社
出版年份:2004-1
页数:258
内容简介:
在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书作者是C语言的设计者之一Dennis M. Ritchie和著名计算机科学家Brian W. Kernighan合著的一本介绍C语言的权威经典著作。我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。
原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,World"程序就是由本书首次引入的,现在,这一程序已经成为众多程序设计语言入门的第一课。原著第2版根据1987年制定的ANSIC标准做了适当的修订.引入了最新的语言形式,并增加了新的示例,通过简洁的描述、典型的示例,作者全面、系统、准确地讲述了C语言的各个特性以及程序设计的基本方法。
对于计算机从业人员来说,本书是一本必读的程序设计语言方面的参考书。
作者简介:
Brian W. Kernighan,贝尔实验室计算科学研究中心高级研究人员,著名的计算机科学家。参加了UNIX系统、C语言、AWK语言和许多其他系统的开发,同时出版了许多在计算机领域具有影响的著作,如《The Elements of Programming Style》《The Practice of Programming》《The UNIX Programming Environment》《The AWK Language》《Software Tools》等。
Dennis M. Ritchie,1967年加入贝尔实验室。他和 Ken L. Thompson 两人共同设计并实现的C语言改变了程序设计语言发展的轨迹,是程序设计语言发展过程中的一个重要里程碑。与此同时,他们还设计并实现了UNIX操作系统。正是由于这两项巨大贡献,Dennis M. Ritchie 于1983年获得了计算机界的最高奖——图灵奖。此外,他还获得了ACM、IEEE、贝尔实验室等授予的多种奖项.。

《C程序设计语言第2版·新版》pdf下载在线阅读,求百度网盘云资源

8. C语言程序设计学习辅导的C语言程序设计学习辅导(第2版)

 作者:谭浩强出版社: 清华大学出版社; 第2版 (2009年1月1日)丛书名: 普通高等教育“十一五”国家级规划教材,高等院校计算机应用技术规划教材·应用型教材系列平装: 233页正文语种: 汉语开本: 16ISBN: 9787302189893条形码: 9787302189893产品尺寸及重量: 25.6 x 18.2 x 1.2 cm ; 381 g 《C语言程序设计学习辅导(第2版)》的特点:坚持面向应用的方向,以应用为中心构建课程体系。准确定位,合理取舍内容,切合实际需要。采用“提出问题-解决问题-归纳分析”的新的教学三部曲。写法通俗易懂,易于理解,便于教学,容易入门。品种丰富,涵盖面广。包括必修课教材、选修课教材、教学辅导书、实训教材、参考书等。著名计算机教育家谭浩强教授亲自组织和指导.有经验的专家和骨干教师参与编写,教材质量高。丛书包含4个系列基础教材系列 涵盖了计算机公共基础课程的教材。应用型教材系列 适合作为培养应用性人才的本科院校和基础较好、要求较高的高职高专学校的主干教材。实用技术教材系列 针对应用型院校和高职高专院校所需掌握的技能技术编写的教材。实训教材系列 应用型本科院校和高职高专院校都可以选用这类实训教材。 谭浩强教授,我国著名计算机教育专家,计算机普及和高校计算机基础教育开拓者之一,现任全国高校计算机基础教育研究会会长。他创造了3个世界纪录:(1)20年来他(及其合作者)共编著出版了140余部计算机著作,此外主编了300多部计算机书籍,是出版科技著作数量最多的入。(2)他编著和主编的书发行量近5000万册,是读者最多的科技作家。(3)他和别人合作编著的《BASIC语言》发行了1250万册,创科技书籍发行量的世界纪录。他善于用读者容易理解的方法和语言说明复杂的概念。许多人认为他“开创了计算机书籍贴近大众的新风”,为我国的计算机普及事业做出了重要的贡献。 进入21世纪,计算机成为人类常用的现代工具,每一个有文化的人都应当了解计算机,学会使用计算机来处理各种的事务。学习计算机知识有两种不同的方法:一种是侧重理论知识的学习,从原理入手,注重理论和概念;另一种是侧重于应用的学习,从实际入手,注重掌握其应用的方法和技能。不同的人应根据其具体情况选择不同的学习方法。对多数人来说,计算机是作为一种工具来使用的,应当以应用为目的、以应用为出发点。对于应用性人才来说,显然应当采用后一种学习方法,根据当前和今后的需要,选择学习的内容,围绕应用进行学习。 第一部分 《C语言程序设计(第2版)》中的习题和参考解答第1章 C语言概述第2章 数据的存储与运算第3章 最简单的C程序设计——顺序程序设计第4章 选择结构程序设计第5章 循环结构程序设计第6章 利用数组处理批量数据第7章 利用函数实现模块化程序设计第8章 善于使用指针第9章 使用结构体类型处理组合数据——用户自定义数据类型第10章 利用文件保存数据第二部分 常见错误分析和程序调试第11章 常见错误分析第12章 程序的调试与测试12.1 程序的调试12.2 程序错误的类型12.3 程序的测试第三部分 C语言上机指南第13章 Turbo C 2.0的上机操作13.1 Turbo C的安装13.2 进入Turbo C13.3 Turbo C的工作窗口13.4 编辑一个新文件13.5 编辑一个已存在的文件13.6 改变用户工作目录13.7 确立Turbo C工作环境13.8 编译和连接13.9 运行第14章 Turbo C++3.0的上机操作14.1 进入Turbo C++3.0集成环境14.2 C源文件的建立和程序的编辑14.3 程序的编译和连接14.4 运行程序14.5 退出Turbo C++3.0环境14.6 对多文件程序进行编译和连接14.7 程序动态调试方法第15章 Visual C++的上机操作15.1 Visual C++的安装和启动15.2 输入和编辑源程序15.3 编译、连接和运行15.4 建立和运行包含多个文件的程序的方法第四部分 上机实验安排第16章 上机实验的指导思想和要求16.1 上机实验的目的16.2 上机实验前的准备工作16.3 上机实验的步骤16.4 实验报告16.5 实验内容安排的原则第17章 实验安排17.1 实验1 C程序的运行环境和运行C程序的方法17.2 实验2 数据的存储与运算17.3 实验3 最简单的C程序设计——顺序程序设计17.4 实验4 逻辑结构程序设计17.5 实验5 循环结构程序设计17.6 实验6 利用数组处理批量数据17.7 实验7 用函数实现模块化程序设计(一)17.8 实验8 用函数实现模块化程序设计(二)17.9 实验9 善于利用指针(一)17.10 实验10 善于利用指针(二)17.11 实验11 使用结构体类型处理组合数据17.12 实验12 文件操作参考文献

最新文章
热门文章
推荐阅读