如何用c语言编写一个程序 就是有三个数 求最大的一个

三个数 比较大小 求输出的 是最大的一个
任意输出三个数

程序如下:

#include<stdio.h>

int main()

{

int a,b,c,max;

scanf("%d,%d,%d",&a,&b,&c);

max=a;

if(b>a) max=b;

if(b>c) max=b;

else if (c>a) max=c;

printf("max=%d\n",max);

return 0;

}

基本思想:依次选出数组最小的数放到数组的前面。首先从数组的第二个元素开始往后遍历,找出最小的数放到第一个位置。再从剩下数组中找出最小的数放到第二个位置。以此类推,直到数组有序

扩展资料:

C语言经典排序算法

一、交换排序

1、冒泡排序

基本思想:比较相邻的两个数,如果前者比后者大,则进行交换。每一轮排序结束,选出一个未排序中最大的数放到数组后面。

2、快速排序

基本思想:选取一个基准元素,通常为数组最后一个元素(或者第一个元素)。从前向后遍历数组,当遇到小于基准元素的元素时,把它和左边第一个大于基准元素的元素进行交换。在利用分治策略从已经分好的两组中分别进行以上步骤,直到排序完成。下图表示了这个过程。

二、插入排序

1、希尔(shell)排序

基本思想为在直接插入排序的思想下设置一个最小增量dk,刚开始dk设置为n/2。进行插入排序,随后再让dk=dk/2,再进行插入排序,直到dk为1时完成最后一次插入排序,此时数组完成排序。

三、选择排序

1、堆(Heap)排序

基本思想:先把数组构造成一个大顶堆(父亲节点大于其子节点),然后把堆顶(数组最大值,数组第一个元素)和数组最后一个元素交换,这样就把最大值放到了数组最后边。

把数组长度n-1,再进行构造堆,把剩余的第二大值放到堆顶,输出堆顶(放到剩余未排序数组最后面)。依次类推,直至数组排序完成。

四、归并排序

基本思想:归并算法应用到分治策略,简单说就是把一个答问题分解成易于解决的小问题后一个个解决,最后在把小问题的一步步合并成总问题的解。这里的排序应用递归来把数组分解成一个个小数组,直到小数组的数位有序,在把有序的小数组两两合并而成有序的大数组。

参考资料来源:百度百科-C语言

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-12-07
#include<stdio.h>#define MAX(a,b) (a)>(b)?(a):(b)int main(){int a,b,c,max; scanf("%d%d%d",&a,&b,&c); max=MAX(MAX(a,b),c); printf("最大值=%d\n",max); return 0; 

}

#include <stdio.h>
main()
{ int x,y,z;
int max;
printf("Input three numbers:");
scanf("%d%d%d",&x,&y,&z);
max=x;
if(y>max)
max=y;
if(z>max)
max=z;
printf("The max number is %d\n",max);
}

扩展资料:

C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。

在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。

当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。

在学习中,对此合理进行分类,找出它们与数学中所学到运算之间的不同点之后,记住这些运算也就不困难了,有些运算符在理解后更会牢记心中,将来用起来得心应手,而有些可暂时放弃不记,等用到时再记不迟。

参考资料:C语言-百度百科

本回答被网友采纳
第2个回答  2018-12-19

c语言编写一个程序求三个数中最大的一个代码如下:

#include<stdio.h>

int main()

{

int max(int x,int y,int z);

int a,b,c,d; 

scanf("%d,%d,%d",&a,&b,&c);

d=max(a,b,c);

printf("max=%d\n",d);

return 0;

int max(int x,int y,int z)

{

int e,f;

if(x>y)e=x;

else e=y;

if(e>z)f=e;

else f=z;

return(f);

}

扩展资料:

其他代码如下:

#include<stdio.h>

int max(int x,int y,int z);

int main()

{    int a,b,c,d;    

scanf("%d,%d,%d",&a,&b,&c);     

d = max(a,b,c);    

printf("max=%d\n",d);    

return 0;

}

int max(int x,int y,int z)

{

int e,f;

if(x>y)        

e=x;

else        

e=y;    

if(e>z)        

f=e;    

else        

f=z;    

return(f);

}

本回答被网友采纳
第3个回答  2007-09-09
呵呵,很简单的问题呀,我这里有四种方法,你参考一下
#include<stdio.h>
void main()
{
int a,b,c,max; //这里只能为整形,不能为double型
printf("please input three number a,b,c:\n");
scanf("%d%d%d",&a,&b,&c);

// method one:
max=a;
if(b>=max) max=b;
if(c>=max) max=c;
printf("the max is:%d\n",max);

// method two:
if(a>=b&&a>=c)
printf("the max is %d\n",a);
else if(b>=a&&b>=c)
printf("the max is %d\n",b);
else
printf("the max is %d\n",c);

// method three:
printf("the max is: %d\n",a>=b&&a>=c?a:(b>=a&&b>=c?b:c));

// method four:
int a[3],max=-32768;
for(int i=0;i<3;i++)
{
scanf("%d",&a[i]);
if(a[i]>max) max=a[i];
}
printf("the max is:%d\n",max);
}本回答被提问者和网友采纳
第4个回答  2016-01-26
#include <stdio.h>
int main()
{
int a,b,c,MAX,;
MAX = a>b ? a : b
MAX = MAX>c ? MAX : c
printf("max=%d min=%d",MAX,MIN);
}
原理就是两两比较得出最大的那个数

如何用c语言编写一个程序 就是有三个数 求最大的一个
int a,b,c,max;scanf("%d,%d,%d",&a,&b,&c);max=a;if(b>a) max=b;if(b>c) max=b;else if (c>a) max=c;printf("max=%d\\n",max);return 0;} 基本思想:依次选出数组最小的数放到数组的前面。首先从数组的第二个元素开始往后遍历,找出最小的数放到第一个位置。再从剩下...

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者?
\\x0d\\x0a \/\/下面是最简单的if循环求出这三个数最大值存入max中\\x0d\\x0a if(a>b)\\x0d\\x0a {\\x0d\\x0a if(a>c)\\x0d\\x0a {\\x0d\\x0a max=a;\\x0d\\x0a }\\x0d\\x0a else\\x0d\\x0a {\\x0d\\x0a max=c;\\x0d\\x0a }\\x0d\\x0a }\\x0d\\x...

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
用if的话,可以这么写:include <stdio.h>int main(void){ int a, b, c, _max; scanf("%d%d%d", &a, &b, &c); if(a > b) { if(a > c) _max = a; else _max = c; } else if(a <= b) { if(b > c) _max = b; el...

c语言编写程序求3个数中最大的数。
if(c>max)max = c;printf("三个数中最大的数为:%d",max);return 0;}

c语言求3个数的最大值是多少?
c语言求三个数的最大值的回答如下:在C语言中,我们可以使用条件语句(if...else)来比较三个数并找出最大值。以下是一个简单的示例程序:#include <stdio.h> int main() { int a, b, c, max; printf("请输入三个整数:"); scanf("%d %d %d", &a, &b, &c);if (a >...

怎样用C语言编写这样一个程序:输入三个整数,求其中的最大值?
include<stdio.h> include<stdlib.h> int x,y,z;int max;int main(void){ printf("请输入三个整数:\\n");scanf("%d%d%d",&x,&y,&z);if(x>y)max=x;else max=y;if(max>z);else max=z;printf("最大值为%d",max);system("pause");} ...

如何在C语言编程中求取三个数中的最大值
编写一个C程序,运行时输入a,b,c三个值,输出其中值最大者的步骤:1、首先输入三个数,求三个数中的最大值 include<stdio.h> int main(){ int max(int x,int y,int z); int a,b,c,m; scanf("%d,%d,%d",&a,&b,&c); m=max(a,b,c); printf("the max numb...

如何编写一个程序,计算3个数的最大值?
1、首先在Visual Studio 2019中新建一个C语言文件,如下图所示。2、接着导入如下图所示的库文件,所需要的数学计算函数都在里面。3、然后运用scanf函数来接收用户输入的三个数字,如下图所示。4、接着利用逐个比较的方式计算三个数中的最大值,如下图所示。5、运行编写的C语言文件,会弹出如下图...

用c语言编写程序计算3个数中最大值
程序如下:include <stdio.h> int main(){ int a,b,c,Max;printf("请输入3个数:\\n");scanf("%d%d%d",&a,&b,&c);Max=a>b?(a>c?a:c):(b>c?b:c);printf("3个数中最大值为:%d\\n",Max);return 0;}

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
如果最后一个数大,就把第一个数换走,否则不换 a=c; \/\/此时第一个数是最大的 printf("最大值为:%d",a);\/\/输出第一个数 } 这种方法可以完成题目要求,但是无法实现排序,因为第一个数丢了,只要不丢数,多用几次if就可以再实现排序.当然,只看本题的话以上代码是比较简洁的....

相似回答