1、C程序设计II实验指导书C程序设计II实验指导书信息工程学院计算机系目 录C程序设计实验要求 2实验一 指针应用 22011 求平均成绩 22012 字符串排序 32013 字符串比较 32014 学生成绩统计 4实验二 结构应用 52021 学生成绩统计 52022 猴子选大王 6实验三 文件应用 62031 学生成绩管理 7实验四 综合应用 72041 小白鼠排队 72042 吃糖果 82043 日期转换问题 9C程序设计实验要求课程实验是C程序设计课程的一个重要的实践环节,要求每个同学按以下要求独立完成每次实验,每次上机前必须编写完实验要求的所有题目,并按输出格式写出程序的运行结果,上机
2、时调试程序并验证结果的正确性,若与运行结果不符,则要分析原因,上机时间由课内和课外上机两部分,以下时间为课内上机时间。实验一 指针应用目的及要求: 1理解和掌握指针及指针变量的基本概念和定义。 2熟练掌握指针的运算(算术运算、关系运算和赋值运算)。 3熟练掌握几种不同类型的指针(指向变量的指针、指向数组的指针、指向字符串的指针、指向函数的指针、指向指针的指针)。2011 求平均成绩Description 某班期末考试后要统计本班某门课程的平均成绩、最高成绩和最低成绩,你的任务是编程序实现这一功能。一个班的人数不超过30人,要求实现求最高成绩,最低成绩和平均成绩的功能用一个函数完成,并用参数返回
3、最高成绩,最低成绩和平均成绩。Input 一组测试数据,第一行为一个整数N,表示本班有N个人(N=30),接下来的N行中每行一个整数,表示一个人的成绩。Output输出一行。该行包含三个数,分别是:最高成绩、最低成绩和平均成绩。成绩之间由空格分隔,其中平均成绩为实数,并精确到小数点后两位。Sample Input 59083768562Sample Output90 62 79.202012 字符串排序Description 按字典顺序输出某班所有人的名单。Input 一组测试数据,第一行为一个整数N,表示本班有N个人(N=30),接下来的N行中每行一个人名(人名均由小写字母组成)。Outpu
4、t 按字典顺序排列的人员名单。每个人名占一行。Sample Input5zhangsanliyangwangxiaoliqingwuhuiSample Outputliqingliyangwangxiaowuhuizhangsan2013 字符串比较Description 按字符串比较过程对给定的两个字符串进行比较,若相等则结果为0,若不等则结果为对应不等字符的差。按要求实现对给定字符串的比较。要求程序中用函数实现两个字符串的比较。int stringcmp(char *str1 , char *str2 )Input 第一行为一个整数N,表示测试数据的组数,接下来的N行中每行包含两个字符串,
5、字符串之间由空格分隔。Output输出共N行,每行为对应输入一行的两个字符串的比较结果。Sample Input3Happy HelpHelp HelpHelp HappySample Output-4042014 学生成绩统计(选作)Description 某班有N(N=30)个学生,共开设5门课程,分别用三个函数实现如下功能:求第一门课程的平均分;找出有2门及2门以上不及格的学生,并输出其学号;找出平均成绩在90分以上的学生,输出他们的学号。Input 第一行为一个整数N,表示本班共N个人,接下来的N行中每行包含一个学生的信息,包括学号、课程1成绩、课程2成绩、课程3成绩、课程4成绩、课程
6、5成绩。Output/输出共三行:第一行为本班第一门课程的平均成绩。(保留小数点后两位) 第二行为有2门及2门以上不及格的学生的学号,各学号之间用空格分隔。 第三行为平均成绩在90分以上的学生的学号, 各学号之间用空格分隔。Sample Input3070001 90 80 85 50 42070002 93 95 90 88 92070003 98 92 84 90 91Sample Output93.67070001070002 070003实验二 结构应用目的及要求:1理解并掌握结构类型、结构变量的定义和引用方法。 2掌握结构体在程序设计中的使用方法。 2021 学生成绩统计Descri
7、ption 用结构数组实现学生成绩统计各功能。某班有N(N1),两数之间由空格分隔。Output输出共N行,每行为对应输入行获胜猴子的编号。Sample Input28 55 8Sample Output31实验三 文件应用目的及要求:1理解文件的概念,掌握文件类型指针的定义方法。 2掌握文件的打开、读写、定位及关闭的方法。 3掌握利用文件进行数据处理的方法。 2031 学生成绩管理Description学生成绩管理,每个学生的数据包括学号、姓名、3门课的成绩,数据保存在文件中(内存中只保留一个学生的信息,处理后写回文件)。分别用三个函数实现如下各操作,主函数中列出选择菜单,根据选择执行相应功
8、能。1)输入学生成绩;2)给出学号或姓名,找到该学生的信息。3) 给出学号或姓名,修改某学生的信息。4)找出某门课程不及格的学生,并输出其学号和不及格课程的成绩;5)给出所有学生的各科平均成绩和总平均成绩。6)给出学号,修改某学生的信息。(选作)InputOutputSample InputSample Output实验四 综合应用目的及要求:1学习对复杂问题的分析,掌握程序设计方法与技巧。 2掌握综合应用问题的处理方法。2041 小白鼠排队DescriptionN只小白鼠(1 N N 0)。妈妈告诉名名每天可以吃一块或者两块巧克力。假设名名每天都吃巧克力,问名名共有多少种不同的吃完巧克力的方
9、案。例如:如果N=1,则名名第1天就吃掉它,共有1种方案;如果N=2,则名名可以第1天吃1块,第2天吃1块,也可以第1天吃2块,共有2种方案;如果N=3,则名名第1天可以吃1块,剩2块,也可以第1天吃2块剩1块,所以名名共有2+1=3种方案;如果N=4,则名名可以第1天吃1块,剩3块,也可以第1天吃2块,剩2块,共有3+2=5种方案。现在给定N,请你写程序求出名名吃巧克力的方案数目。Input输入只有1行,即整数N。Output输出只有1行,即名名吃巧克力的方案数。Sample Input4Sample Output52043 日期转换问题Description在我们现在使用的日历中, 闰年被
10、定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。 给定从公元2000年1月1日开始逝去的天数(2000.1.1. 是星期六),你的任务是给出这一天是哪年哪月哪日星期几。Input输入包含若干行,每行包含一个正整数,表示从2000年1月1日开始逝去的天数。输入最后一行是1, 不必处理。可以假设结果的年份不会超过9999。Output对每个测试样例,输出一行,该行包含对应的日期和星期几。格式为“YYYY-MM-DD DayOfWeek”, 其中 “DayOfWeek” 必须是下面中的一个: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday 或 Saturday“。Sample Input1730 1740 1750 1751 -1Sample Output2004-09-26 Sunday 2004-10-06 Wednesday 2004-10-16 Saturday 2004-10-17 Sunday
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1