当前位置:文档之家› C语言上机作业试题5套含答案

C语言上机作业试题5套含答案

第一次上机作业(2014):要求:⏹独立完成,上机调试通过后上交⏹作业提交邮箱:⏹邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)⏹以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。

⏹程序必须采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。

例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。

例:输入17输出The square root of 17.0 is 4.13.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature: 76.8The corresponding Celsius temperature is 24.894. 计算旅途时间输入二个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。

(输入的有效的时间范围是0000 到2359,不需要考虑出发时间晚于到达时间的情况。

)例:输入712 1411 (出发时间是7:12,到达时间是14:11)输出The train journey time is 6 hours 59 minutes.5. 数字加密输入一个四位数,将其加密后输出。

方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。

例:输入1257输出The encrypted number is 4601思考题:你能否编程找出谁做的好事?有四位同学中的一位做了好事,不留名,表扬信来了之后,校长问这四位是谁做的好事。

⏹A说:不是我。

⏹B说:是C。

⏹C说:是D。

⏹D说:他胡说。

已知三个人说的是真话,一个人说的是假话。

现在要根据这些信息,找出做了好事的人。

第二次上机作业(2014):要求:⏹独立完成,程序必须采用缩进格式,上机调试通过后上交⏹邮件主题命名:班级学号姓名(第2次作业),例如:电1301班2王鹏(第2次作业)⏹以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。

1. 4个数排序从键盘任意输入4个整数,将其按从小到大顺序排序后输出。

例:输入 5 12 -9 3输出After ascending sorting: -9 3 5 122.求1 + 1/2! +....+ 1/n!输入正整数n,计算上式前n 项的和(保留 4 位小数)。

例:输入10输出 1 + 1/2! +....+ 1/10!=1.71833. 编程计算表达式:data1 op data2 的值。

(+ - * / %)例:输入23+12输出23+12=354. 用二分法求方程2x3-4x2+3x-6=0在(a,b)之间的根。

例:输入Please input the lower and upper boundaries: 3 10输出No root in this boundary!Please input the lower and upper boundaries: 1 5The root is 2.005.日历显示编程反复显示2014年各月份日历。

(程序可以设定2014年1月1号为星期三)。

程序运行输出示例如下:Enter month in 2014 to display calendar (1-12): 1****************************************************SUN MON TUE WED THU FRI SAT1 2 3 45 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 28 29 30 31Would you like to display another month (y/n) ? yEnter month in 2014 to display calendar (1-12): 13ERROR--- Enter month in range of (1-12)!Enter month in 2014 to display calendar (1-12):4****************************************************SUN MON TUE WED THU FRI SAT1 2 3 4 56 7 8 9 10 11 1213 14 15 16 17 18 1920 21 22 23 24 25 2627 28 29 30Would you like to display another month (y/n) ? N第三次上机作业(2014):要求:⏹独立完成,上机调试通过后上交⏹邮件主题命名:班级学号姓名(第3次作业),例如:电1301班2王鹏(第3次作业)⏹以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。

⏹程序必须采用缩进格式⏹4月15日(第八周周二前)提交作业1.排序:使用起泡法和选择法对10个整数实现递减排序。

2.统计:从键盘输入10个学生的数学(MT)、英语(EN)和物理(PH)成绩,并按照如下统计形式输出,包括学生学号(NO)、各科成绩、总成绩(SUM)、平均分(AVE)及是否每科都超过90分(‘Y’ or ‘N’)NO MT EN PH SUM AVE >90--------------------------------------------------------------------1 97 87 92 276 92 N2 92 91 90 273 91 Y3 90 81 82 253 84 N.....3. 统计大写辅音字母个数:某文本共有3行,每行不超过80个字符,试编写一个程序统计该文本中大写辅音字母的个数。

例:输入HELLOIT12uieiaba输出There are 4 capital consonant letters in this paper.4.字符串连接:试编写一个程序连接两个字符串(不使用库函数strcat())。

例:输入The first string: Welcome toThe second string: China输出Welcome to China5.矩阵运算:读入 1 个正整数n(1≤n≤6),再读入n 阶方阵,计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。

例:输入 42 3 4 15 6 1 17 1 8 11 1 1 1输出sum=35思考题:十六进制转换十进制输入一个字符串(字符串的长度不超过80),对其做如下处理:滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。

例:输入Ha4-1输出2625第四次上机作业(2014):1.数组转置:在主函数中定义一个n(1<=n<=6)维方阵,并从键盘读入数组元素;编写函数transpose(a,n)实现数组a转置;在主函数中输出转置后的方阵。

例:输入41 2 3 4 输出 1 5 9 135 6 7 8 2 6 10 149 10 11 12 3 7 11 1513 14 15 16 4 8 12 162. 学生信息:编写4个函数实现下列功能:(1)函数input() 输入20个学生姓名和高考总分;(2)函数sort() 按高考总分从高到低的顺序排序,姓名顺序也随之调整;(3)函数display()显示学生姓名及其高考总分;(4)在主函数中输入一个姓名,编写函数search() 用顺序查找方法找出该学生。

若查找成功,在主函数中显示该生姓名及其高考总分;否则显示查找失败。

3. 字符串处理定义两个C 源程序文件:fmain.c 和 fstring.c 。

fmain.c 中包含主函数,实现字符串处理功能选项和字符串的输入与结果的输出。

fstring.c 中包含两个函数delchar(s,c)和strreverse (s),实现删除字符和字符串反转功能。

delchar(s,c):在主函数中输入字符串和要删除的字符,此函数将字符串s 中出现的所有c 字符删除;再在主函数中输出删除后的字符串。

strreverse (s):在主函数中读入字符串,此函数实现将字符串s 反转;再在主函数中输出反转后的字符串。

SAMPLE OUTPUT:1. Reverse a string.2. Delete a character in a string.Please input your choice: 1Enter a string: holidayReversed string is :yadilohWould you like to continue? (y/n)Y1. Reverse a string.2. Delete a character in a string.Please input your choice: 2Enter a string: one world, one dreamEnter a character you want to delete: oDeleted string is :ne wrld, ne dreamWould you like to continue?(y/n )N4. 分别用函数和带参数的宏,从三个数中找出最大数。

第五次上机作业(2014):⏹ 独立完成,上机调试通过后上交⏹ 作业提交邮箱:5. 数据移位有n (n<=10)个整数,使前面各数顺序向后移m (m<=n )个位置,最后m 个数变成最前面的m 个数,如图所示。

编写函数shift(a,n,m)实现上述功能,在主函数中输入n 个整数并输出调整后的n 个数。

SAMPLE OUTPUT Input n(n<=10):10Input 10 integers :1 2 3 4 5 6 7 8 9 10Output the original :1 2 3 4 5 6 7 8 9 10 Input m(m<=10):4Output the shifted :7 8 9 10 1 2 3 4 5 66. 字符串排序在主函数中输入10个不等长的字符串放入二维字符数组中,编写函数sort()利用指针数组对其排序,在主函数中输出排好序的字符串。

n7.学生成绩统计有一个班级30个学生5门课,编写函数实现下列功能:(1)函数average()求第一门课的平均分;(2)函数findfail()找出有2门以上(含2门)课程不及格的学生,输出其学号和全部课程成绩及平均成绩;(3)函数findgood()找出平均成绩在90分以上或全部课程成绩在85分以上的学生。

相关主题