C语言输出3个整数最大值的案例教程
·
思路分析:
先比出2个整数的最大值,然后用最大值和第三个整数比较从而求出3个整数的最大值。
我们今天用几种办法输出3个整数最大值。
方法一:使用if-else语句以及输入输出语句来编写。
方法二:使用三元运算符以及输入输出语句来编写。
方法三:使用自定义指针函数以及三元运算符来编写。
方法四:使用冒泡排序法以及输入输出语句来编写。
方法五:使用求数组最大值的方法来编写。
方法一代码如下:
方法一代码运行结果如下:
方法二代码如下:
方法二代码运行结果如下:
方法三代码如下:
#include <stdio.h>
int ptr(int *x, int *y,int *z ){//这三个指针形参会接收主函数传来的三个数字的地址
int d,e;
d=*x>*y?*x:*y;//三元运算符
e=d>*z?d:*z;//三元运算符
return e;//返回e的值,e的值就是三个整数最大的值
}
void main(){
int a,b,c,m;
scanf("%d%d%d",&a,&b,&c);
m=ptr(&a,&b,&c);//调用子函数,实参的值为数字对应的地址
printf("三个整数的最大值为%d",m);//打印输出三个整数的最大值
}
方法三代码运行结果如下:
方法四代码如下:
#include <stdio.h>
#define N 3
void main(){
int arr[N];//定义一维数组
int i,d;//定义变量
printf("请输入三个整数:");
for(i=0;i<3;i++){
scanf("%d",&arr[i]);
}//从键盘输入数值,给一维数组赋值
printf("数字从小到大排序为:");
printf("\n");
for(i=0;i<N;i++){
if(arr[i]>arr[i+1]){
d=arr[i];
arr[i]=arr[i+1];
arr[i+1]=d;
}
}//使用冒泡排序法,按从小到大排序
for(i=0;i<N;i++){
printf("%d\t",arr[i]);
}//输出按从小到大排序完的数字
printf("\n");
printf("三个整数的最大值为%d",arr[N-1]);
//一维数组的最后一个值就是三个整数的最大值,所以输出arr[N-1];
}
方法四代码运行结果如下:
方法五代码如下
#include <stdio.h>
void main( )
{
int i,j,arr[3];//定义变量以及初始化数组
printf("请输入三个整数:");
for(i=0;i<3;i++){
scanf("%d",&arr[i]);
}//给数组赋值,输入3个整数
j=arr[0];//初始化数组的最大值为arr[0]
for(i=0;i<3;i++){
if(j<arr[i+1]){
j=arr[i+1];
}
}//找到数组的最大值,也就是3个整数的最大值
printf("数组最大值为%d",j);//输出数组的最大值,也就是3个整数的最大值
}
方法五代码运行结果如下
总结
目前想到用五种办法求3个整数的最大值,我感觉还是用方法二的知识点最方便。
更多推荐
已为社区贡献5条内容
所有评论(0)