超星高级语言程序设计实验作业 (实验01顺序程序设计)

超星高级语言程序设计实验作业

第01 顺序程序设计

注:以下内容仅供交流,代码都是本人自己写的,还请同学们先自己编写再进行交流。
另:本人写代码用的是Visual Studio 2019,有些地方可能在其他编译器上无法运行。

1.前驱后继字符

题目描述:编写程序,输入一个大写字母,然后顺序输出该字母的前驱字母、该字母本身、它的后继字母,此题不考虑输入字母为‘A’和‘Z’的情况。
输入:从键盘输入任何一个不是‘A’或‘Z’的大写字母。题目已保证测试数据符合要求。
输出:所输入字母的前驱、本身和后继三个字母,字母间无间隔符号。
样例1:
输入:B
输出:ABC
样例2:
输入:W
输出:VWX

#include<stdio.h>

int main() {

char ch;

scanf("%c",&ch);

printf("%c%c%c", ch-1, ch, ch+1);

return 0;

}

2.温度转换

题目描述:已知摄氏温度(℃)与华氏温度(℉)的转换关系是:
编写一个摄氏温度(℃)与华氏温度(℉)进行转换的程序,输入摄氏温度,输出华氏温度。
输入:从键盘随机输入一个摄氏温度数据。题目保证测试数据符合要求。
输出:输出对应的华氏温度数据,保留小数点后3位。
提示:OJ环境要求程序运行时输入和输出要和样例一模一样,因此在此平台上提交的程序不要有多余的输入提示信息和换行,否则会判错哦。
样例1:
输入:5
输出:41.000
样例2:
输入:27
输出:80.600

#include<stdio.h>

int main() {

float c;

scanf("%f", &c);

printf("%.3f", c*9/5+32);

return 0;

}

3.求平均值

题目描述:编写程序,输入3个浮点数,求它们的平均值并输出。
输入:从键盘随机输入3个浮点数。
输出:输出3个浮点数的平均值,小数点后保留3位。
样例1:
输入:1.5 1.7 3.1
输出:2.100
样例2:
输入:1 2 3
输出:2.000

#include<stdio.h>

int main() {

float a, b, c;

scanf("%f %f %f", &a, &b, &c);

printf("%.3f", (a + b + c) / 3);

return 0;

}

😀
前期的题目还是挺简单的,要注意的不多。

4.五则运算

题目描述:编写程序,输入两个整数,分别求它们的和、差、积、商、余数并输出。
输入:从键盘随机输入两个整数。题目保证测试数据符合要求。
输出:依次为所输入的两个整数的和、差、积、商和余数5个整数, 数字之间以1个英文空格间隔。
样例1:
输入:10 3
输出:13 7 30 3 1
样例2:
输入:9 2
输出:11 7 18 4 1

#include<stdio.h>

int main() {

int a, b;

scanf_s("%d%d", &a, &b);

printf("%d %d %d %d %d", a + b, a - b, a * b, a / b, a % b);

}

干就完了 难度都不大。。

5.点到平面距离

题目描述:从点(x, y, z ) 到平面 Ax+By+Cz+D=0 的距离 d 的公式是

在这里插入图片描述编程序,输入点的坐标 x、y、z及平面方程系数 A 、B 、C 、D,计算并输出d。
提示:math.h头文件中包含fabs和sqrt函数分别用来求解绝对值和平方根。
输入:从键盘随机第一行输入一个三维点坐标,第二行依次读入直线方程系数A、B、C和D。
输出:输出对应的点到面的距离,保留小数点后3位。
样例1:
输入:
1 1 1
1 2 3 4
输出:2.673
样例2:
输入:
-3.1 0.2 3.4
5.3 1.8 0.1 0
输出:2.810

#include<stdio.h>

#include<math.h>

int main() {

	float A, B, C,D,x,y,z,d;

	scanf("%f %f %f %f %f %f %f", &x, &y, &z,&A,&B,&C,&D);

	d = fabs(A * x + B * y + C * z + D) / sqrt(A * A + B * B + C * C);

	printf("%.3f", d);

	return 0;

}

6.时间转换

题目描述:编程序,输入午夜后的某秒数,输出该秒的小时:分种:秒。
输入:从键盘输入秒数。
输出:秒数转换后的小时:分种:秒,其中小时、分钟、秒都都是两位整数,数位不足用零补充。
样例1:
输入:50000
输出:13:53:20
样例2:
输入:96
输出:00:01:36

#include<stdio.h>

int main() {

	int s, m,h;

	scanf_s("%d", &s);
	h = s / 3600;
	s = s % 3600;
	m = s / 60;
	s = s % 60;
	if (h>=24){
		h = h % 24;
	}
	printf("%02d:%02d:%02d", h, m, s);
	return 0;
}

程序是挺简单的但是要注意,秒数换算后有可能超过24小时。
因此需要小时h除24取余。

ps:有很多小伙伴 (包括我) 都掉坑里了

	h = h % 24;

注意这里用到了读入的秒数d直接除3600赋值给小时h,相信大家都知道h是int类型只会赋值运算后的整数部分。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值