第2周作业
C语言程序设计精髓_中国大学MOOC(慕课)
第1周——初识C语言从认识变量和常量开始
练兵区——单选题
第2周——数字间的那些事儿,做点计算哈
练兵区——单选题
练兵区——编程题
一、输出逆序数
从键盘任意输入一个3位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。
例如,输入-123,则忽略负号,由123分离出其百位1、十位2、个位3,然后计算3*100+2*10+1 = 321,并输出321。
提示:
1. 从键盘输入数据可以使用函数scanf()。例如,scanf("%d", &x); 表示从键盘输入整数并存入整形变量x中。
2. 利用取绝对值函数 fabs()忽略输入数据的负号。fabs(x)表示计算变量x的绝对值。
3.使用数学函数,需要在程序开头加上编译预处理指令 #include <math.h>
以下为程序的一个运行示例
Input x:
-123↙
y=321
输入格式: "%d"
输出格式:
提示信息:"Input x:\n"
输出格式:"y=%d\n"
*/
二、 计算总分和平均分
小明本学期共有5门课程,分别是英语、语文、数学、历史和音乐。
5科的期中考试成绩分别是86分、74分、92分、77分、82分,期末考试成绩分别是81分、87分、90分、62分、88分。
已知期中和期末考试成绩分别占总成绩的30%和70%。
定义相应的变量存放各科成绩,并计算出小明5门课程的总分和平均分。
要求平均分输出两种形式:带2位小数的浮点数形式和不带小数的整数形式。
要求总分输出带2位小数的浮点数形式。程序中浮点数的数据类型均为float类型。
提示:
输出不带小数的平均分的整数形式可以使用强制类型转换。
以下为输出示例:
total=408.90
average=81.78
average=81
输入格式:无
输出格式:
输出总分的格式: "total=%.2f\n"
输出平均分的格式: "average=%.2f\n"
"average=%d\n"
*/
三、 存款利率计算器V1.0
设银行定期存款的年利率rate为2.25%,已知存款期为n年,存款本金为capital元,
试编程计算并输出n年后的本利之和deposit。程序中所有浮点数的数据类型均为double类型。
提示:
1. 从键盘输入数据可以使用函数scanf()。本例中为scanf("%lf,%d,%lf", &rate, &n, &capital);
2. 本程序最终计算的是复利。
3. 计算幂的数学函数为pow(a,n), 代表a的n次幂。
4. 使用数学函数,需要在程序开头加上编译预处理指令 #include <math.h>
以下为程序的一个运行示例:
Please enter rate, year, capital:
0.0225,10,1000↙
deposit=1249.203
输入格式: "%lf,%d,%lf"
输出格式:
输入信息提示: "Please enter rate, year, capital:\n"
输出格式:"deposit=%.3f\n"
*/
四、 数位拆分v1.0
现有一个4位数的正整数n=4321(即n是一个已知的数,固定为4321),
编写程序将其拆分为两个2位数的正整数43和21,计算并输出拆分后的两个数的加、减、乘、除和求余的结果。
例如n=4321,设拆分后的两个整数为a,b,则a=43,b=21。除法运算结果要求精确到小数点后2位,数据类型为float。
以下为程序的运行结果示例:
a=43,b=21
a+b=64
a-b=22
a*b=903
a/b=2.05
a%b=1
输入格式: 无
输出格式:
数位拆分的输出格式:"a=%d,b=%d\n"
加法运算的输出格式:"a+b=%d\n"
减法运算的输出格式:"a-b=%d\n"
乘法运算的输出格式:"a*b=%d\n"
除法运算的输出格式:"a/b=%.2f\n"
*/