航空航天大类C语言程设第二次上机练习

本文详细解析了几个C语言上机练习题目,包括浮点数处理、单项式求积、圆与直线关系判断、质数判断、鸡兔同笼问题以及区间质数筛选等。通过实例代码讲解了算法思路和实现方法,帮助读者理解和掌握C语言编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

航空航天大类C语言程设第二次上机练习


第二期更新,主要是第二次上机和练习赛的内容。

Q1(上机A题)一个非负的浮点数(小数部分不超过六位),输出它的小数部分(六位小数保留)和整数部分(空格隔开)

这个题只要稍微熟悉一下变量声明就很好做了,注意给的是非负浮点数,所以少了个坑(狗头)
先给出代码

#include <stdio.h>
int main() {
	double x;
	scanf("%lf", &x);
	int n = x;
	double y = x - n;
	printf("%d %.6lf", n, y);
	return 0;
}

这里x是double类型,而之后n是int类型,把x的值赋给n,会涉及类型转换,这种方式浮点数转整数直接抹去小数部分保留整数部分,所以转换整型不同于取整函数。
不妨看下面两个例子:

int a = 2.333;
int b = -2.333;
#输出a和b的值
2 -2

对于正数,相当于⌊x⌋\lfloor{x}\rfloorx,取不大于xxx的最大整数,但对于负数,相当于⌈x⌉\lceil{x}\rceilx,取大于xxx的最小整数,所以说不说明数的正负形坑就出来了吧。

Q2(上机C题)
单项式求积:有多个单项式项式AiA_{i}AiAi=ki×xpiA_i=k_i \times x^{p_i}Ai=ki×xpi,已知kik_{i}kipip_{i}pi,需要求这些单项式的乘积,并表达成一个简单的单项式形式k×xpk \times x ^ pk×xp,,输出形式为k*x^p,其中kkkppp为整数。

输入描述,连续多行
每行两个数,用空格分隔,分别为 kik_iki,pip_ipi
如果某一行两个数的值为0 0,则代表结束输入

单项式相乘,系数相乘,指数相加,∏i=1nAi=(∏i=1nki)×x∑i=1npi\prod_{i=1}^{n}A_{i} = (\prod_{i=1}^nk_i) \times x^{\sum_{i=1}^{n}p_{i}}i=1nAi=(i=1nki)×xi=1npi
kkk,ppp的初值设为1和0,每次读入合法的kik_ikipip_ipi就用赋值运算符+=*=更新kkk,ppp的值,最后格式化输出

代码:

#include <stdio.h>
int main() {
	int k = 1, p = 0, ki, pi;
	while (1) {
		scanf("%d %d", &ki, &pi);
		if (ki == 0 && pi == 0) break;
		else {
			k *= ki, p += pi;
		}
	}
	printf("%d*x^%d", k, p);
	return 0;
}

输入样例:

3 5
6 10
0 0

输出样例:

18x^15

Q3(上机F题)
输入一个圆的圆心坐标(x,y)(x,y)(x,y),和半径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值