求解决-求用c语言编写此程序,越简单越好,希望大神们注释一下

问题描述

求用c语言编写此程序,越简单越好,希望大神们注释一下

/**皮球从某给定高度自由落下,触地后反弹到原高度的一半,再落下,再反弹,……,如此反复。问皮球在第n次落地时,在空中一共经过多少距离?第n次反弹的高度是多少?

输入格式:

输入在一行中给出两个非负整数,分别是皮球的初始高度和n,均在长整型范围内。

输出格式:

在一行中顺序输出皮球第n次落地时在空中经过的距离、以及第n次反弹的高度,其间以一个空格分隔,保留一位小数。题目保证计算结果不超过双精度范围。

输入样例:

33 5
输出样例:

94.9 1.0
**/

解决方案

参考实例代码:

 #include<stdio.h>

#include<math.h>

int main(void)

{

     int n,i;

     double distance;

     double height;//高度应该是double类型

     printf("Input height: ");

     scanf("%lf",&height);//高度应该是double类型

     printf("Input n: ");

     scanf("%d",&n);

     distance=0;

     distance+=height;//加上最开始的高度,

     for(i=1;i<=n;i++){

       //item=1;
       //for(j=1;j<=i;j++)

       //item=item*2*height*pow(0.5,j);

      distance+=height*pow(0.5,i)*2;

     }

     height=height*pow(0.5,n);

     //小数点后多保留几位,不然容易出现0.0,同时double类型应该是%lf

     printf("distance=%.6lfn",distance);//printf("distance=%.1fn",distance);

     printf("height=%.6lfn",height);//printf("height=%.1f",height);

     return 0;
}

解决方案二:

    '//double 高度, 总量 = 0; int 次数, 计数 = 1;
    '//cout << "输入任意整数不超过指定 Int 范围位数:" << endl;
    '//cin >> 高度 >> 次数;
    '//while (次数 >= 计数)
    '//{
    '// 总量 += 高度;
    '// 高度 /= 2;
    '// if (次数 > 计数)总量 += 高度;/*最后一次落下不计弹起*/
    '// printf("次数%2d 回弹%f 总量%fn", 计数, 高度, 总量);
    '// ++计数;
    '//}
时间: 2024-08-30 19:53:35

求解决-求用c语言编写此程序,越简单越好,希望大神们注释一下的相关文章

求解决-怎么用C语言编写这个程序,求指教

问题描述 怎么用C语言编写这个程序,求指教 本题要求编写程序计算某年某月某日是该年中的第几天. 输入格式: 输入在一行中按照格式"yyyy/mm/dd"(即"年/月/日")给出日期.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除.闰年的2月有29天. 输出格式: 在一行输出日期是该年中的第几天. 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 解决方案 网上一搜有很多,c

求解决-请用c语言编写此程序,重点在怎么把None输出,求指教

问题描述 请用c语言编写此程序,重点在怎么把None输出,求指教 /**输出21世纪中截止某个年份以来的所有闰年年份.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除. 输入格式: 输入在一行中给出21世纪的某个截止年份. 输出格式: 逐行输出满足条件的所有闰年年份,即每个年份占一行.输入若非21世纪的年份则输出"Invalid year!".若不存在任何闰年,则输出"None". 输入样例1: 2048 输出样例1: 2004 200

求解决-怎么用c语言编译这个程序

问题描述 怎么用c语言编译这个程序 /**对于任一整数n,符号函数sign(n)的定义如下: sign(n)=-1(n =1. (n>0): 请编写程序计算该函数对任一输入整数的值. 输入格式: 输入在一行中给出整数n. 输出格式: 在一行中按照格式"sign(n) = 函数值"输出该整数n对应的函数值. 输入样例1: 10 输出样例1: sign(10) = 1 输入样例2: 0 输出样例2: sign(0) = 0 输入样例3: -98 输出样例3: sign(-98) =

求解决-求用c语言编写此程序,求大神们指教

问题描述 求用c语言编写此程序,求大神们指教 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号"*"组成的菱形,如样例所示.每个星号后跟一个空格. 输入样例: 7 输出样例: * * * * * * * * 解决方案 void printDiamond(int rows) { for (int i = 1; i <= rows; i++) { int flag = (ro

c语言-求大神帮忙注释,非常感谢

问题描述 求大神帮忙注释,非常感谢 #include int sushu(int n) { for(int i=2;i<n;i++) if(n%i==0) return 0; return 1; } int main() { int n; scanf("%d",&n); while(n!=0){ if(n%2==0){ for(int i=2;i<n;i++){ if(sushu(i)==1&&sushu(n-i)==1){ printf("

有c#语句编写程序-Vidual Studio中用c#语言编写相关程序

问题描述 Vidual Studio中用c#语言编写相关程序 在Vidual Studio中,如何用C#语句表示两个TextBox中的内容相除并赋予到另一个TextBox中,希望大家帮我解决一下,谢了. 解决方案 textBox3.Text = (double.Parse(textBox1.Text) / double.Parse(textBox2.Text)).ToString(); 解决方案二: 楼上正解,如果不会的时候可以先分成3个语句写,然后拼成一个

c语言-本人编程初学,刚刚编写了一个整数的比较大小的小程序,希望大神帮我看看

问题描述 本人编程初学,刚刚编写了一个整数的比较大小的小程序,希望大神帮我看看 希望大神帮我看一下是不是可以比较整数的所有情况,而且此算法有点复杂,可以怎样简化 #include int main() { int compare(int a,int b); int x,y,c,g; printf("请输入两个整形数用于比较大小:n"); scanf("%d,%d",&x,&y); c=compare(x,y); if(c==g) printf(&qu

malloc-小弟谢了一个简单的字符串求最大子串的程序不知道错哪里,請大神帮忙回答下

问题描述 小弟谢了一个简单的字符串求最大子串的程序不知道错哪里,請大神帮忙回答下 程序要求如下: 一个字符串,字符连续的部分为子串(不含带数字的部分) 下面是我写的程序 #include using namespace std; char* BiggestStr(char* str) { char* pStr = (char*)malloc(sizeof(str)+1); //申请一个空间存最大子串 int nCount = 0; //用于记录最大子串的长度 int J_nCount=0; ch

c++-一段代码,迷宫问题,求大神加注释

问题描述 一段代码,迷宫问题,求大神加注释 5C maze::maze(){ int ij; cout<<""请输入迷宫规模,长.宽,以空格隔开:""; cin>>Height>>Width; a = new int*[Height]; for(i = 0;i != Height;i++) { a[i] = new int[Width]; } rd = new Road*[Height*Width]; Road *temp = n