user-0 提问: 找最值

回复:
user: user-1
content: /* 函数功能：找出数列中的最大值  */ 仅供参考

user: user-1
content: /* º¯Êý¹¦ÄÜ£ºÕÒ³öÊýÁÐÖÐ×î´óµÄÊý²¢·µ»Ø  */  int nmax(int ser[],int n) { 	int max; 	max = ser[0]; 	for(int i = 1;i < n;i++) 	{ 		if(ser[i] > max) 			max = ser[i]; 	} 	return max; }

user: user-2
content: #include "stdafx.h"  int main(int argc, char* argv[]) { float a,b,c,d; printf("请输入4个实数a,b,c,d的值：");     scanf("%f%f%f%f",&a,&b,&c,&d);   if(a>b) { if(b>c) { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,b,c,d); } else { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,b,d,c); } else { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,d,b,c); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,a,b,c); } } } } else { if(a>c) { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,c,b,d); } else { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,c,d,b); } else { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",a,d,c,b); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,a,c,b); } } } }   else { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,a,b,d); } else { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,a,d,b); } else { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,d,a,b); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,c,a,b); } } } } } }     else { if(a>c) { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,a,c,d); }             else { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,a,d,c); } else { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,d,a,c); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,b,a,c); } } } } else { if(b>c) { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,c,a,d); } else { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,c,d,a); } else { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",b,d,c,a); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,b,c,a); } } } } else { if(a>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,b,a,d); } else { if(b>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,b,d,a); } else { if(c>d) { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",c,d,b,a); } else { printf("4个实数a,b,c,d从大到小的排列顺序为：%f → %f → %f → %f",d,c,b,a); } } } } } } return 0; }     这是四个数的    我现在只会用if、esle做    现在回帖蹭个积分

user: user-3
content: #include<stdio.h> int main() {     int a,b,c,d,e,max1=0;     printf("请输入五个数字：");     scanf("%d %d %d %d %d",&a,&b,&c,&d,&e);     if(a>=b)         max1=a;     else max1=b;     if(max1>=c)         max1=max1;     else max1=c;     if(max1>=d)         max1=max1;     else max1=d;     if(max1>=e)         max1=max1;     else max1=e;         printf("max=%d\n",max1);     return 0;  } 新手留个印

user: user-4
content: 基本的排序！

user: user-5
content: #include <stdio.h> #include <stdlib.h>  int main(int argc,char** argv){ 	int* x=new int[argc-1];  // stored compared number 	int i, 		max;  // stored max number 	// init array 	for(i=0;i<argc-1;i++) 		*(x+i)=atoi(argv[i+1]); 		 	max=x[0]; 	// display 	// for(i=0;i<argc-1;i++) 	//   printf("%d	",*(x+i)); 	// printf("\r\n"); 	 	for(i=0;i<argc-1;i++) 		*(x+i)>max? 			max=*(x+i):1; 	printf("max=%d\r\n",max); 	return 0; }   在编译后调用时传入参数，传入一组数列即可！ 如： cmp  10 20 31 32 342 21

user: user-6
content: 仅供参考（3个数的）： #include <iostream.h> class zkk{   public:   	int max(int a,int b,int c);   	int min(int a,int b,int c);  }  int zkk::max(int a,int b,int c) {   	if(a>b && a>c)   		return a;   	else if(b>a && b>c)   		renturn b;   	else    		return c; } int zkk::min(int a,int b,int c) {   	if(a<b && a<c)   		return a;   	else if(b<a && b<c)   		return b;   	else  return c; } void main(){   	int x,y,z;   	zkk h;   	cout<<"请输入三个整数:"<<endl;   	cin>>x>>y>>z;   	h.max(x,y,z);   	h.min(x,y,z);   	cout<<"最大值:"<<h.max()<<endl;   	cout<<"最小值:"<<h.min()<<endl;} }

user: user-7
content: 不需要排序，一个循环，一个比较大的，一个比较小的就可以了

user: user-8
content: 3楼正解。。。。

user: user-9
content: 你想干什么？ 你不会？两个两个数比较，做不出来吗？排序或查找，网上资料有很多

user: user-10
content: #include<iostream> void main() { 	int array[5]; 	int *ptr = array; 	int i = 5; 	scanf("%d %d %d %d %d",ptr,ptr+1,ptr+2,ptr+3,ptr+4); 	int max = array[0],min = array[0]; 	for (i = 0;i < 5;i++) 	{ 		printf("%d ",array[i]); 		if (array[i] > max) max = array[i]; 		else if(array[i] < min) min = array[i]; 	} 	printf("最大值：%d   最小值：%d\n",max,min); }

user: user-11
content: 我来练练手的 /*************************************************************************     > File Name: max_min.c     > Author: Jukay     > Mail: hellojukay@gmail.com      > Created Time: 2014年10月17日 星期五 15时29分17秒  ************************************************************************/ #include<stdio.h> int MAX(int A,int B){return (A>B)?A:B; } int MIN(int A,int B){return (A<B)?A:B; } int min(int arry[],int n) { 	int i; 	int	min = arry[0]; 	for(i=0; i < n; i++) 		min =MIN(min,arry[i]); 	return min; } int max(int arry[],int n) { 	int i; 	int max = arry[0]; 	for(i=0; i < n; i++) 		max =MAX(max,arry[i]); 	return max; } int main() { 	int test[10]={2,3,-5,8,5,182,5,2,84,2}; 	printf("the max is:%d\n",max(test,10)); 	printf("the min is:%d\n",min(test,10)); 	return 0; }