用C语言,任意输入10个数,求其中的最大值和最小值

能给出完整的答复吗?谢谢!!

任意输入10个数,求其中的最大值和最小值的源代码如下:

#include<stdio.h>

#define SIZE_MAX 30

int max(int b[],int n);

int min(int b[],int n);

int main(void)

{

int  a[SIZE_MAX],b,c,i,m;

printf("任意多个数,判断最大值和最小值:\n");

printf("输入一个数,表示你想比较多少个数字:\n");

scanf("%d",&m);

printf("你输入了%d个数\n",m);

printf("请你输入%d个数\n",m);

for(i=0;i<m;i++)

 {

scanf("%d",&a[i]);

}

b=max(a,m);

c=min(a,m);

printf("你输入的%d分别是:\n",m);

for(i=0;i<m;i++)

{

printf("%d\n",a[i]);

printf("最大数是:%d\n",b);

printf("最小数是:%d\n",c);

return 0;

}

扩展资料

1、如果一个函数确定无需传入任何参数,那么用void限定是一个不错的选择。函数没有声明返回值时,编译器默认其返回值为int。

2、main函数的返回值最终会作为程序的退出状态,而一旦声明为void,在程序退出后,想要获取其退出状态也就不可以了。因此不建议其返回值为void。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-12-27

思路:定义一个变量,并键盘输入一个数赋值给该变量,且把该数赋值给最大值和最小数。接着for循环输出剩下9个数,并判断该数和最大值最小值的大小关系,更新最大值和最小值,最后输出最大值和最小值。

参考代码:

#include "stdio.h"
int main()
{
int a,max,min,i;
scanf("%d",&a);
max=min=a;
for(i=1;i<10;i++){
scanf("%d",&a);
if(max<a) max=a;
if(min>a) min=a;
}
printf("最大值为:%d,最小值为:%d\n",max,min);       
}
/*
运行结果:
8 7 3 4 1 9 2 0 5 6
最大值为:9,最小值为:0
*/

第2个回答  2007-01-11
这也不会?

输入和输出部分 自己去翻书吧 几句话而已
用一个数组来接收输入的数

比较部分的程序
int temp;
for(i=0;i<10;i++)
{if (a[i]<a[i+1])
{temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;}
}

a[0]就是最大数 a[9]就是最小数
第3个回答  2007-01-11
// 求最大和最小值
#include<stdio.h>
main()
{
int i ,j,m,a[10],max,min;
for(i=0;i<10;i++)
{printf("输入第%d个数",i+1);
scanf("%d",&a[i]);}

for(j=0;j<10;j++)
{
min=a[0];
min=min<a[j+1]?min:a[j+1];
}

for(m=0;m<10;m++)
{
max=a[0];
max=max>a[m+1]?max:a[m+1];
}
printf("MAX=%d\nMIN=%d\n",max,min);
}
第4个回答  2007-01-11
#include "stdio.h"
main()
{int i,a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);
ff(a);
}

ff(int *p)
{int i,max,min;
max=p[0];
min=p[0];
for(i=1;i<10;i++)
{if(p[i]>max) max=p[i];
if(p[i]<min) min=p[i];
}
printf("max=%d\n",max);
printf("min=%d\n",min);
}本回答被提问者采纳
相似回答