#include <stdioh>
#define max(a,b) (a>ba:b)
int main(){
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%d\n",max(max(a,b),c));
return 0;
}
扩展资料:
public class TestJava4_3
{
public static void main(String args[])
{
int i,min,max;
int A[]={74,48,30,17,62}; // 声明整数数组A,并赋初值
min=max=A[0];
Systemoutprint("数组A的元素包括:");
for(i=0;i<Alength;i++)
{
Systemoutprint(A[i]+" ");
if(A[i]>max) // 判断最大值
max=A[i];
if(A[i]<min) // 判断最小值
min=A[i];
}
Systemoutprintln("\n数组的最大值是:"+max); // 输出最大值
Systemoutprintln("数组的最小值是:"+min); // 输出最小值
}
}
该程序输出结果:
数组A的元素包括:74 48 30 17 62
数组的最大值是:74
数组的最小值是:17
#include<iostream>
using namespace std;
int main()
{
int n,m;
int id_i,id_j;
int a[100][100];
cin>>n>>m;
int ans=-1000000;//把这个初始化很小
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
cin>>a[i][j];
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(ans<a[i][j])
{
ans=a[i][j];
id_i=i;//记录下标
id_j=j;
}
}
}
cout<<id_i<<" "<<id_j<<endl;//这个是从0起的,如果要从1开始,加1即可
return 0;
}
复杂度是O(nm)
两层循环很明显嘛
有啥不懂HI我
可以直接比较也可以用内部函数。内部函数max是只能一次得到2个数比较的较大值。你可以先任取2个数调用max得到其较大值,再次调用max比较这个较大值与剩下的一个数,结果就是三数中的最大值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)