分支程序设计1任意输入5个整数输出其中的最大值

分支程序设计1任意输入5个整数输出其中的最大值,第1张

1)获绝余取用户输入的五个整数

2)判定五个整数中的最大值

3)输出最大值

其中第二点位重要的 很雀宏档多方式,取一个简单的

//设定一个最大值变量

Int Max=0;

//把用户输入的值放在数组中

Int[5] intLis=new Int[5]

Int[0]=数值1

Int[1]=数值2

. .

. .

Int[5]=数值5

//循环判断出最大值

//这个位置是

//循环判断数组中

//每个数字与这个数字之前的所有数字中最大的数字

//如果当前数字大于之前的最大数字 则吧Max改为当前的 反之不变

for(int i =0i<= intLis.Lenghi++){

if(int[i]>顷乱Max){

Max=int[i]

}

}

不知道你题目中的塔是柱状塔还是锥状塔,启肢腔对于柱状塔,源代码如下。

#include "stdio.h"

#include "math.h"

double Dist(double x1, double y1, double x2, double y2)

{

return sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * ( y1 - y2))

}

double GetHigh(double x, double y),

{

int signx = 1, signy = 1

if(x <0) signx = -1 /*先求点(x, y)所在象限*/

if(y <0) signy = -1

if(Dist(x, y, signx * 10, signy * 10) <= 2.0) /*求点(x, y)与最近的塔心悄衫的距离*/

return 25

else 0

}

void main( )

{

double x, y

scanf("%lf%lf", &x, &y)

printf("high = %lf", GetHigh(x, y))

}

如果是锥状塔,将求高度的函数代饥培码修改如下,其余的代码同上:

double GetHigh(double x, double y)

{

int signx = 1, signy = 1

double dist

if(x <0) signx = -1 /*先求点(x, y)所在象限*/

if(y <0) signy = -1

dist = Dist(x, y, signx * 10, signy * 10) /*求点(x, y)与最近的塔心的距离*/

if(dist <= 2.0)

return 25 * (2.0 - dist) / 2.0

else 0

}

分支跟RAM没有关系,当然,不能分支套分支套的太多,比如

if(con1)

{

if(con2)

{

if(con3...)。。。。

}

}

你套的层数太困汪多了就不行了,堆栈就不够用了,一般不过6层;

这是其一,另外,如果你真必须要套很多层,那么,还有一个办法,把所有的全局变量和局部静态变量用pdata或者xdata修饰,即,把这些变量放到外空间,把内空间尽量省出来,这样丛尺悉,渗乎内空间基本可专门用于堆栈。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12442924.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存