int max = A[0];
for(int i = 1; i < n; ++i)
{
if(A[i] > max)
max = A[i];
}
思路:假定一个数为最大值,如果有个数比假定的最大值还大,那么该数就为最大值。
最小值同理。
使用for循环。
/
public class MaxMin{
public static void main(String[]args){
int[]array={13,56,45,48,26,55,7,3,9,468,4589,76,4,3,18};//声明数组并赋值
int i=0;
int max=array[0];//最大值
int min=array[0];//最大值
int indexMax=-1;//最大值索引
int indexMin=-1;//最小值索引
//使用for循环判断
for(i=0;i<arraylength;i++){
if(array<i>>max){
max=array<i>;
indexMax=i;
}
if(array<i><min){
min=array<i>;
indexMin=i;
}
}
Systemoutprintln("最大值为:"+max+",索引为:"+indexMax);
Systemoutprintln("最小值为:"+min+",索引为:"+indexMin);
}
}
扩展资料:
system()函数用于向 *** 作系统传递控制台命令行,以WINDOWS系统为例,通过system()函数执行命令和在DOS窗口中执行命令的效果是一样的,所以只要在运行窗口中可以使用的命令都可以用SYSTEM()传递,但要注意的是输入斜线时要输入两个,以名C语言当作转义字符处理。
#include <stdioh>int getMax(int a[],int n)
{int i,m=0;
for(i=1;i<n;i++)
if(a[i]>a[m])m=i;
return a[m];
}
int main()
{int a[]={45,6,56,23,28,26};
int i,n=sizeof(a)/sizeof(a[0]);
printf("数组a的最大值是%d\n",getMax(a,n));
return 0;
}//更改好了的程序
#include "stdioh"
void main( )
{ int max,j,m;
int a[5];
/FOUND1/
for(j=0;j<05;j++)//数组下标从0-n-1
/FOUND2/
scanf("%d",&a[j]); //scanf要加上取取地址&
max=a[0];
/FOUND3/
for(j=0,m=0;j<5;j++)//i还是从0开始,但是,你上面默认了max=a[0],当然,m=0
/FOUND4/
if(max<a[j])
/FOUND5/
{max=a[j];
/FOUND6/
m=j;}
/FOUND7/
printf("下标:%d\n最大值:%d", m, max); //输出的是m,max
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)