栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言:高空坠球问题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言:高空坠球问题

皮球从height(米)高度自由落下,触地后反弹到高度的一半,再落下,再反弹……如此反复。问皮球在第n次落地时,在空中一共经过多少距离?n次反弹的高度是多少?输出保留1位小数。

日常作业,写不出来上网查发现答案根本看不懂……

所以自己用一些简单语句写出来,挂在社区,希望能帮到和我一样的初学者。

代码只有一些简单语句,100米高度我试了结果没问题。如果有BUG,请在评论区指出。

(打破循环那一句很关键,请不要删除)

示意图:

#include 
 
int main(void) {
	int n, i;
	float height, sum, item;  //item是结果
	printf("此程序是计算高空坠球高度,n");
	printf("请输入高度,n高度(米)=");
	scanf("%f", &height);
	sum = height;  //给设置sum初始值
	printf("其中n代表落地次数,请输入n的数值,nn=");
	scanf("%d", &n);
	for (i = 1; i <= n; i++) {
		item = height * 1 / 2;
		if (i == n)    //如果循环次数和落地次数相同,不继续累加sum值
			break;
		sum = sum + item * 2;
		height = item;  //将结果赋值给高度,重置高度值
	}
	printf("第%d次落地时,在空中一共经过%.1f米,第%d反弹时高度时%.1f米", n, sum, n, item);
	return 0;
}

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/923420.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号