大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#includestdio.h
我们提供的服务有:网站设计、成都网站制作、微信公众号开发、网站优化、网站认证、灞桥ssl等。为千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的灞桥网站制作公司
int Max(int a[],int n)
{
int s,max=0;
for(s=1;s=9;s++)//逐个循环进行比较大小找出最大值
{
if(a[max]a[s])
max=s;
}
return max;
}
int Min(int a[],int c)
{
int d,min=0;
for(d=1;d=9;d++)
{
if(a[min]a[d])
min=d;
}
return min;
}
main()
{
int a[10],i,n;
printf("请任意输入10个数字\n");
for(i=0;i10;i++)
scanf("%d",a[i]);
int larger;
larger=Max(a,10);//调用Max函数找出最大值并赋值
printf("最大数为%d\n",a[larger]);
int smaller;
smaller=Min(a,10);
printf("最小数为%d\n",a[smaller]);
n=a[larger];
a[larger]=a[smaller];
a[smaller]=n;
for(i=0;i10;i++)
printf("%2d",a[i]);
}
#include stdio.h
#include stdlib.h
int main()
{
int n,a,max,i;
scanf("%d",n);
scanf("%d",max);
for(i=1;in;i++)
{
scanf("%d",a);
if(amax)max=a;
}
printf("%d",max);
return 0;
}
//修改如下
#include stdio.h
#include stdlib.h
void main()
{
float averMaxMin(int a[],int n,int *pmax, int *pmin);
int i,n,a[100],*pmax,*pmin;
printf("请输入需要比较的数的个数:");
scanf("%d",n);
printf("请输入需要比较的数:");
for(i=0;in;i++)
scanf("%d",a[i]);
pmax=(int *)malloc(sizeof(int));//分配内存,我帮你改了这里
pmin=(int *)malloc(sizeof(int));
//多余的averMaxMin(a,n,pmax,pmin);
printf("平均值是%f\n",averMaxMin(a,n,pmax,pmin));
printf("最大值为%d,最小值为%d\n",*pmax,*pmin);
}
float averMaxMin(int a[],int n,int *pmax, int *pmin)
{
int i;
float aver,sum=0.0;
*pmax=*pmin=a[0];
for(i=0;in;i++)
{
sum+=a[i];
if(a[i]*pmax)//这里也修改了,应该让*pmax=a[i],这里才能改变地址的内容
*pmax=a[i];
if(a[i]*pmin)
*pmin=a[i];
}
aver=sum/n;
return (aver);
}
用指针求含有十个元素的数组最大值和最小值
主函数参考
int main()
{
int a[10],i,maxnum,minnum;
for(i=0;i10;i++)
scanf("%d",a[i]);
FindMaxandMin(a,10,maxnum,minnum);
printf("%d %d",maxnum,minnum);
}
输入格式:
数组
输出格式:
最大值 最小值
输入样例:
1 2 3 5 4 6 7 8 9 10
输出样例:
10 1
扩展资料
#include
int main()
{
int a[3];
int i,j,temp;
printf("请输入3个数:");
for(i=0;i scanf("%d",a[i]);
for(i=0;i for(j=0;j if(a[j]a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
printf("最大值%d最小值%d",a[2],a[0]);
return 0;
}
参考资料:百度百科 - C语言
#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;
}
您的程序有多处错误。既然是初学,就先把最基本的东西都弄清楚啊,否则别人都不愿意帮您。简单列出您的错误如下:
1)在max函数内又声明了a[10],这和传递给max函数的参数同名。
2)在max函数内声明了一个变量max,这与max函数又是同名,虽然不一定会出错,但需要尽量避免啊。
3)int max(int a[], int i)是正确的写法,不必写int a[10]。
4)在主函数main中的max(a[10],i)就是错误的写法了,把数组传递给函数时,只能写数组名a,不能写a[10],a[10]只代表了数组中的一个元素。
5)printf中的那个max,属于未声明就使用的变量,而且又与函数max同名。
给个修改后的程序,您自己对照吧。
6)printf函数没指定最大值的输出位置与格式。
#include "stdafx.h"
#include "stdio.h"
int max(int a[])//原代码中将i传递进来,毫无必要
{
int maxv=a[0];//原代码取max,与函数同名,要避免
int i;
for(i=1;i10;i++)
if(maxva[i])
maxv=a[i];
return(maxv);
}
int main()
{
int i,a[10],maxvalue;
printf("请输入10个数:\n");
for(i=0;i10;i++)
scanf("%d",a[i]);
maxvalue = max(a);//原代码max(a[10],i),a[10]只会传递一个数而不是数组
printf("最大的数是:%d\n",maxvalue);//您别漏了%d啊
}