本人亲自测试过,答案完全正确!!!
1输出逆序数(3分)
题目内容:
从键盘任意输入一个3位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-123,则忽略负号,由123分离出其百位1、十位2、个位3,然后计算3100+210+1 = 321,并输出321。
提示:
- 从键盘输入数据可以使用函数scanf()。例如,scanf("%d", &x); 表示从键盘输入整数并存入整形变量x中。
- 利用取绝对值函数 fabs()忽略输入数据的负号。fabs(x)表示计算变量x的绝对值。
3.使用数学函数,需要在程序开头加上编译预处理指令 #include
以下为程序的一个运行示例
Input x:
-123↙
y=321
输入格式: “%d”
输出格式:
提示信息:“Input x:\n”
输出格式:“y=%d\n”
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
时间限制:500ms内存限制:32000kb
#include#includeint main(){printf("Input x:\n");int a=0;scanf("%d", &a); int c=a%10;int b=a%100/10;int d=a/100;printf("y=%d\n",c*100+b*10+d);}
一开始没有运行正确
#include #include int main() { //用户输入的三位数 int x; //逆序数 int y; //获取键盘输入 scanf("%d",&x); //转换成绝对值 x = fabs(x); //判断是否为3位数 if(100 <= x && x <= 999){ int a,b,c; //百位 a = x / 100; //十位 b = x /10 %10; //个位 c = x % 10; y = c * 100 + b * 10 + a; } printf("Input x:\n"); printf("y=%d\n",y); return 0;}
2计算总分和平均分(3分)
题目内容:
小明本学期共有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"
- 1
为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。
时间限制:500ms内存限制:32000kb
#include#includeint main(){float a=86;float b=74;float c=92;float d=77;float e=82;float h=81;float p=87;float l=90;float v=62;float q=88;float total,average;total=(a+b+c+d+e)*0.3+(h+p+l+v+q)*0.7;average=total/5;printf("total=%.2f\n",total);printf("average=%.2f\n",average); printf("average=%d\n",(int)average);return 0;}