C语言:在main函数中,定义一个含N个元素的数组,其中N是符号常量,然后编写下列各子函数完成相应的功能
在main函数中,定义一个含N个元素的数组,其中N是符号常量,然后编写下列各子函数完成相应的功能:(1)编写函数sr:为该数组各元素赋值(要求调用随机函数为各数组元素赋值...
在main函数中,定义一个含N个元素的数组,其中N是符号常量,然后编写下列各子函数完成相应的功能:
(1)编写函数sr:为该数组各元素赋值(要求调用随机函数为各数组元素赋值)。
(2)编写函数sc:打印该数组各元素,要求每行打印m个数,其中m作为形参传递。
(3)编写函数js:求该数组元素的最大值和最小值,最大值和最小值通过参数传递返回主调函数。
(4)编写函数px:实现对数组的排序。
各个函数编写完成后,请编写main函数,并在main中分别调用以上四个函数,以验证各子函数的功能。 展开
(1)编写函数sr:为该数组各元素赋值(要求调用随机函数为各数组元素赋值)。
(2)编写函数sc:打印该数组各元素,要求每行打印m个数,其中m作为形参传递。
(3)编写函数js:求该数组元素的最大值和最小值,最大值和最小值通过参数传递返回主调函数。
(4)编写函数px:实现对数组的排序。
各个函数编写完成后,请编写main函数,并在main中分别调用以上四个函数,以验证各子函数的功能。 展开
1个回答
2013-06-14
展开全部
试试..
#define N 10
#include<stdio.h>
void main()
{
void sr(int a[]);
void sc(int a[],int m);
void js(int a[],int *max,int *min);
void px(int a[]);
int a[N],m,max,min;
/***************************/
printf("输入一个数m ");
scanf("%d",&m);
sr(a);
sc(a,m);
js(a,&max,&min);
printf("最大值max=%d,最小值min=%d\n",max,min);
px(a);
sc(a,m);
}
/***********************/
void sr(int a[])
{
int i;
printf("初始化数组,输入 %d 个数 :\n",N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
}
/************************/
void sc(int a[],int m)
{
int i;
printf("输出数组a,每行%d 个数:\n",m);
for(i=0;i<N;i++)
printf("%5d",a[i])&&((i+1)%m==0)&&printf("\n");
printf("\n");
}
/*************************/
void js(int a[],int *max,int *min)
{
int i;
printf("求最大最小值\n");
*max=*min=a[0];
for(i=1;i<N;i++)
{
if(*max<a[i])*max=a[i];
if(*min>a[i])*min=a[i];
}
}
void px(int a[])
{
int i,j,tmp;
printf("数组排序\n");
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(a[i]<a[j])
{
tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
#define N 10
#include<stdio.h>
void main()
{
void sr(int a[]);
void sc(int a[],int m);
void js(int a[],int *max,int *min);
void px(int a[]);
int a[N],m,max,min;
/***************************/
printf("输入一个数m ");
scanf("%d",&m);
sr(a);
sc(a,m);
js(a,&max,&min);
printf("最大值max=%d,最小值min=%d\n",max,min);
px(a);
sc(a,m);
}
/***********************/
void sr(int a[])
{
int i;
printf("初始化数组,输入 %d 个数 :\n",N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
}
/************************/
void sc(int a[],int m)
{
int i;
printf("输出数组a,每行%d 个数:\n",m);
for(i=0;i<N;i++)
printf("%5d",a[i])&&((i+1)%m==0)&&printf("\n");
printf("\n");
}
/*************************/
void js(int a[],int *max,int *min)
{
int i;
printf("求最大最小值\n");
*max=*min=a[0];
for(i=1;i<N;i++)
{
if(*max<a[i])*max=a[i];
if(*min>a[i])*min=a[i];
}
}
void px(int a[])
{
int i,j,tmp;
printf("数组排序\n");
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(a[i]<a[j])
{
tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询