重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include "stdio.h"
目前创新互联已为数千家的企业提供了网站建设、域名、虚拟主机、网站托管维护、企业网站设计、樊城网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
int main()
{
int x[100],max,min,i,n;
printf("输入整数个数:");
scanf("%d",n);
printf("输入一组正整数:");
scanf("%d",x[0]);
max=0;min=0;
for(i=1;in;i++)
{
scanf("%d",x[i]);
if(x[max]x[i]) max=i;
if(x[min]x[i]) min=i;
}
printf("最大值是%d,下标(从0开始)%d\n最小值是%d,下标(从0开始)%d\n",x[max],max,x[min],min);
}
max函数用于求最大值,可以定义如下函数:
int max(int a, int b)
{
if(ab) return a;
return b;
}
不过该函数只能用于整型而不能用于其它类型。如果有其它类型,比如浮点型,则需要再重新修改。
float max(float a , float b)
{
if( a b) return a;
return b;
}
其实这样代码量比较少的操作,可以定义为宏函数,即带参宏定义的形式。
#define max(a,b) ((a)(b)?(a):(b))
这样既可以不受参数类型限制,又可以提高执行效率。
不过从你的代码来看,只需要定义int类型的max函数即可。
扩展资料:
max(x,y)=0.5*(x+y+|x-y|);在概率论中多有使用,可以将参数指定为数字、空白单元格、逻辑值或数字的文本表达式。如X、Y独立同分布,X~N(0,1),求期望E(max(x,y))。
参考资料来源:百度百科-max函数
自定义函数实现
int max(int a,int b)
{
return ab?a:b;
}
#include stdio.h
#include conio.h
void array_input (int array[], int n);
int max (int array[], int n);
int main (void) {
int array[10];
printf ("请输入10个数据:");
array_input (array, 10);
printf ("10个元素最大值:%d\n", max (array, 10));
getch (); /*屏幕暂留*/
return 0;
}
/* 输入数组 */
void array_input (int array[], int n) {
int i;
for (i=0; in; i++)
scanf ("%d", array[i]);
putchar ('\n');
}
/* 计算数组最大值 */
int max (int array[], int n) {
int i;
int max = array[0];
for (i=0; in; i++) {
if (array[i] max)
max = array[i];
}
return max;
}