设计算法找出三个数中的最大值

作者&投稿:朱珠 (若有异议请与网页底部的电邮联系)
算法设计:找出若干个数中的最大值并输出~

自然语言描述 的算法:
1)输入第一个数,并令其为MAX
2)输入一个数x,若新数x>MAX,则令MAX=x
3)数据输入结束了吗?若是,则输出MAX的值,算法结束;否则,转第2)步。

C算法代码(输入若干非负整数,以输入负数为结束标志):
scanf("%d",&x);
MAX=x;
while(1)
{scanf("%d",&x);
if(x<0)break;
else if(x>MAX)MAX=x;
}
printf("MAX=%d",MAX);


有a,b,c三个数,比较它们的大小

  1. 方法一,按顺序两两比较,取较大的

    if (a > b) {
    max = a;
    } else {
    max = b;
    }
    if (max < c) {
    max = c;
    }

  2. 方法二,假设第一个是最大的,与后面两个数进行比较,将较大的值赋给max

    int max = a;
    if (b > max) {
    max = b;
    }
    if (c > max) {
    max = c;
    }

拓展资料

1、什么是算法

算法(algorithm):就是定义良好的计算过程,他取一个或一组的值为输入,并产生出一个或一组值作为输出。简单来说算法就是一系列的计算步骤,用来将输入数据转化成输出结果。

mark:我们可以把所有的算法想象为一本“菜谱”,特定的算法比如菜谱中的的一道“老醋花生米”的制作流程,只要按照菜谱的要求制作老醋花生米,那么谁都可以做出一道好吃的老醋花生米。so,这个做菜的步骤就可以理解为:“解决问题的步骤”

2、算法的意义

假设计算机无限快,并且计算机存储容器是免费的,我们还需要各种乱七八糟的算法吗?如果计算机无限快,那么对于某一个问题来说,任何一个都可以解决他的正确方法都可以的!

当然,计算机可以做到很快,但是不能做到无限快,存储也可以很便宜但是不能做到免费。

那么问题就来了效率:解决同一个问题的各种不同算法的效率常常相差非常大,这种效率上的差距的影响往往比硬件和软件方面的差距还要大。

3、如何选择算法

第一首先要保证算法的正确性

一个算法对其每一个输入的实例,都能输出正确的结果并停止,则称它是正确的,我们说一个正确的算法解决了给定的计算问题。不正确的算法对于某些输入来说,可能根本不会停止,或者停止时给出的不是预期的结果。然而,与人们对不正确算法的看法想反,如果这些算法的错误率可以得到控制的话,它们有时候也是有用的。但是一般而言,我们还是仅关注正确的算法!

第二分析算法的时间复杂度

算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,在很大程度上能很好反映出算法的好坏。



告诉你思路:
假设这三个数分别为:a、b、c
设最大的数为:max
如果 a >= b,则 max=a,反之 max=b;
如果 max >=c ,则 max=max ,反之 max=c;
这样三个数中最大的数就是max 了。

#include <stdio.h>
int main(){
int a,b,c,max;
printf("\n input three numbers: ");
scanf("%d%d%d",&a,&b&c);
max=a;
if (max<b) max=b;
if (max<c) max=c; printf("max=%d\n",max);
return 0;
}

C:
#include <stdio.h>
int main()
{
int max(int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
return 0;
}
int max(int x,int y)
{
int z;
if (x>y) z=x;
else z=y;
return (z);
}

a>b ? (a>c ? a : c) : (b>c ? b : c)


961232142345678899的最大公因数是多少?
答案:38 计算方法:由前三个数字:961、(25)、432 可看出计算规律是用961的96除以432的32,即96\/32=3 再用961的1加上432的4,即1+4=5 上面的3*5=15 用961的1加上961的9,即1+9=10 最后 15+10=25 同理可得后三位数字:932、( )、731 用932的93除以731的31,即93\/31=3 用...

1到21中,每次框住连续的三个数,有几种不同的框法
1到21中,每次框住连续的三个数。解析:因为要框住三个连续的数 方法一:列出来一个一个框(这是比较笨的方法)方法二:直接计算21-2=19 原因:可以根据框住的三个数最中间的数。根据所有能框的结果,最中间的数范围在2-20中,在这个范围中有十九个整数 所以,所有能框的种类有19种 ...

公务员逻辑推理题
因此,可以从题干中推出的只有D项。所以,正确答案是D。四、矛盾法 当一个题目有多句话,且告诉我们有几真几假时,可以尝试寻找矛盾关系,使用矛盾法解题。互为矛盾关系的两个命题必有一真一假,常见的矛盾关系有以下几种: 直言命题:“所有S都是P”和“有些S不是P”; “所有S都不是P”和“有些S是P”; “...

奥数2,3,6三个数字,利用加减法计算有多少种不同结果?
解:若是加法,加数与被加数交换位置结果不变则是c3(2)=3种若是 减法则减数与被减数交换位置结果不同则是p3(2)二6种

六年级上册比的计算方法给总数和两数比,求三数个数的计算方法
应为黄色与红色4:3 红色与蓝色4:3,黄色与红色比是16:12,红色与蓝色比是12:9,所以黄比红比蓝是16:12:9 259\/(16+12+9)=7 黄色 7*16=112 红色 7*12=84 蓝色 7*9=63

...算出它们的平均数,再加上另一个数,用这种方法计算了四
X2+X3+X4+3X1=32*3 X3+X4+X1+3X2=40*3 X4+X1+X2+3X3=46*3 四个式子相加得 6(X1+X2+X3+X4)=(26+32+40+46)*3 X1+X2+X3+X4=72 用前面的4个式子分别减上面的式子,得 2X4=6,X4=3 2X1=24,X1=12 2X2=48,X2=24 2X4=66,X3=33 所以这四个数中最大的是33。

短除法求最小公倍数时为什么将所有的公因数与最后的二个商相乘
下面是求12、30 以及 12、30和50的最小公倍数的计算:这个原因是因为最小公倍数,它是最小程度地包括了每个数中所有的因数。当某个因数是两个数或三个数中共有的因数时,它就只要计一遍就够 了。而上面的计算方法就是正好将共有的因子只计算一遍。所以就得到了要求的最小公倍数。但是当...

奥数怎么算
根据您的计划,使用适当的数学工具或方法进行计算。4、检查答案:在完成计算后,仔细检查答案,确保其符合问题的要求。二、具体例子:1、列求和:给出一个数列,要求找出其规律并求出下一个数字。例如:1,3,5,7,……下一个数字是什么?2、证明:给出一个几何图形,要求证明某个结论...

三位数加减三位数竖式计算
三位数加减三位数竖式计算方法:相同数位对齐,若和超过10,则向前进1。个位与个位对齐,十位对齐十位,百位对齐百位,以此类推,三个数相加的和超过10,则向前进1。竖式计算是指在计算过程中列一道竖式计算,使计算简便。加法计算时相同数位对齐,若和超过10,则向前进1。减法计算时相同数位对齐,若不...

下面算式中都有一个数字被遮住了,得数一定比40大的是
我们看第三个算式30+△=40。如果△是一个非负数,那么30+△的值一定小于或等于40。因此,这个算式的结果也可能比40大。分析算式的方法:1、逐步计算法:这种方法是从左到右逐步计算,先计算括号内的内容,再计算乘法和除法,最后计算加法和减法。例如:23×(4+5)=23×9=198,这个算式中,先计算...

和布克赛尔蒙古自治县18383234744: 设计算法找出三个数中的最大值 -
植希格列: 告诉你思路: 假设这三个数分别为:a、b、c 设最大的数为:max 如果 a >= b,则 max=a,反之 max=b; 如果 max >=c ,则 max=max ,反之 max=c; 这样三个数中最大的数就是max 了.

和布克赛尔蒙古自治县18383234744: 设计算法,找出3个数中的最大数如题 -
植希格列:[答案] if (a>b)&&(a>c) max=a; else if (b>c) max=b; else max=c;

和布克赛尔蒙古自治县18383234744: 设计算法找出3个数中的最大数?----数学方法 -
植希格列:[答案] 设三个数是X、Y、Z 先求max(X,Y) 然后再求max(max(X,Y),Z)

和布克赛尔蒙古自治县18383234744: 设计算法,求三个数中的最大数. -
植希格列: if(a < b){temp = b;b = a;a = temp;}if(a < c){temp = c;c = a;a = temp;}if(b < c){temp = b;b = c;c = temp;} a 就是最大的值.

和布克赛尔蒙古自治县18383234744: 用C语言设计求三个数中最大数的算法 -
植希格列: 这个很简单啊,不会你一定还是新手哦,我就不弄复杂的了,努力哦main() {int a,b,c,max; /*定义下几个数*/printf("enter a,b,c:"); /*打印一个提示*/scanf("%d%d%d",%a,%b,%c); /*输入3个数*/max=max(max(a,b),c); /*这里套一个...

和布克赛尔蒙古自治县18383234744: 设计算法,找出3个数中的最大值 -
植希格列: if (a>b)&&(a>c) max=a; else if (b>c) max=b; else max=c;

和布克赛尔蒙古自治县18383234744: 设计算法,找出3个数中的最大数 -
植希格列: if (a>b)&&(a>c)max=a;else if (b>c)max=b;else max=c;

和布克赛尔蒙古自治县18383234744: 设计算法,找出3个数中的最大数.怎么做?急!!!!!! -
植希格列: 第一步:输入a,b,c 第二步:判断a>b是否成立,若是,进行第三步,否则,令t=a,a=b,b=t 第三步:判断a>c是否成立,若是,输出a,否则,令t=a,a=c,c=t,输出a,结束算法

和布克赛尔蒙古自治县18383234744: 编程求三个数中最大的 -
植希格列: #include <stdio.h> int main(void){ int a,b,c,max; printf("输入三个数: \n"); scanf("%d, %d, %d",&a,&b,&c); max=a; if(max<b) max=b; if(max<c) max=c; printf("max=%d",max); return 0; 输入三个数: 1,2,3 max=3 扩展资料: printf函数...

和布克赛尔蒙古自治县18383234744: 设计一个表示输入三个数,输出最大数的算法 -
植希格列: 如何设计一个算法: 输入三个数,然后输出其中最大的数? 首先,得先有个地方装这三个数,我们定义三个变量A、B、C,将三个数依次输入到A、 B、C中,另外,再准备一个M A X装最大数. 由于计算机一次只能比较两个数,我们首先把A...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网