计算导论与C语言基础12
期末考试
谢谢你一路的陪伴,我们终于来到了《计算导论与C语言基础》这门课的最后一个模块,现在就让我们给这段难忘的学习里程画上一个圆满的句号。我在期末考试中为大家设计了几道有趣的编程题目,让我们来一起迎接挑战,证明自己的实力吧!如果测试没有一次通过也不要紧,我们的自助平台课程鼓励你反复尝试直到取得满意的成绩,加油!如果你成功地通过了测试,那我们就相约在专项课程的下一门《C程序设计进阶》中见咯!
编程作业: 期末编程测试
编程题#1:判断闰年
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
判断某年是否是闰年。
输入
输入只有一行,包含一个整数a(0 < a < 3000)
输出
一行,如果公元a年是闰年输出Y,否则输出N
样例输入
2006
样例输出
N
提示
公历纪年法中,能被4整除的大多是闰年,但能被100整除而不能被400整除的年份不是闰年, 能被3200整除的也不是闰年,如1900年是平年,2000年是闰年,3200年不是闰年。
编程题#2:能被3,5,7整除的数
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个整数,判断它能否被3,5,7整除,并输出以下信息:
1、能同时被3,5,7整除(直接输出3 5 7,每个数中间一个空格);
2、能被其中两个数整除(输出两个数,小的在前,大的在后。例如:3 5或者 3 7或者5 7,中间用空格分隔)
3、能被其中一个数整除(输出这个除数)
4、不能被任何数整除;(输出小写字符’n’,不包括单引号)
输入
一个数字
输出
一行数字,从小到大排列,包含3,5,7中为该输入的除数的数字,数字中间用空格隔开
样例输入
第一组
0
第二组
5
第三组
15
第四组
105
第五组
1
样例输出
第一组
3 5 7
第二组
5
第三组
3 5
第四组
3 5 7
第五组
n
提示
因为有多组测试数据,程序通过下面方式读入n int n; while(cin>>n) { // 你的代码 cout << "你的结果" << endl; } // good luck:)
编程题#3:最远距离
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
给定一组点(x,y),求距离最远的两个点之间的距离。
输入
第一行是点数n(n大于等于2)
接着每一行代表一个点,由两个浮点数x y组成。
输出
输出一行是最远两点之间的距离。
使用cout << fixed << setprecision(4) << dis << endl;输出距离值并精确到小数点后4位。
fixed和setprecision是在头文件里定义的格式控制操作符,需要#include .
样例输入 6 34.0 23.0 28.1 21.6 14.7 17.1 17.0 27.2 34.7 67.1 29.3 65.1
样例输出 53.8516
提示
注意在内部计算时最好使用double类型,float精准度不能满足本题测试数据要求。
编程题#4:简单计算器
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。
输入
输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+,-,*,/)。
输出
输出只有一行,一个整数,为运算结果。然而: 如果出现除数为0的情况,则输出:Divided by zero! 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator!
样例输入 第一组 1 2 + 第二组 1 0 / 第三组 1 0 XOR
样例输出 第一组 3 第二组 Divided by zero! 第三组 Invalid operator!
提示
可以考虑使用if和switch结构。
编程题#5:字符串插入
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB、
描述
有两个字符串str和substr,str的字符个数不超过10,substr的字符个数为3。(字符个数不包括字符串结尾处的’ ’。)将substr插入到str中ASCII码最大的那个字符后面,若有多个最大则只考虑第一个。
输入
输入包括若干行,每一行为一组测试数据,格式为
str substr
输出
对于每一组测试数据,输出插入之后的字符串。
样例输入 abcab eee 12343 555
样例输出 abceeeab 12345553
提示
这题有多组输入,请参照第二题的提示依次读入和处理每一组数据。
如果使用了字符串函数,比如strlen,请包含cstring头文件 #include 。
顺利修完了《计算导论与 C程序设计课程》。 那么在计算导论这部分内容里头,我们了解了计算机 运行的一些基本的原理, 以及计算机发展的趋势,我们还了解了计算机里面的程序运行的一些基本的原理。 那么在这个基础上呢,我们还学习了C程序设计中的一部分内容。 包含两个迭代周期,在这两个迭代周期里头啊,我们分 别从两个不同的层面,了解了一下,什么是C程序。 其中呢,我们还讨论了一些非常重要的问题。
例如,什么是计算机程序?如何设计一门程序设计语言?如何写 出计算机程序?以及什么样的程序才是好的程序?等等等等,这样一些基础性的问题。 那么接下来呢,我们就要进入下一门课程《 C程序设计进阶》。 那么在这个课程里头呢,我们要接触到C程序设计的另外两个迭代周期。 就是结构化的程序函数,以及更多的数据结构。 Okay,非常希望大家继续保持这种 happy 的学习心态,谢谢大家!