程序如下:
#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语言
}
或
#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语言-百度百科
本回答被网友采纳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);
}
本回答被网友采纳