早教吧作业答案频道 -->其他-->
c语言:在main函数中,定义一个含N个元素的数组,其中N是符号常量,然后编写下列各子函数完成相应的功能(1)编写函数sr:为该数组各元素赋值(要求调用随机函数为各数组元素赋值)。
题目详情
c语言:在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中分别调用以上四个函数,以验证各子函数的功能。
▼优质解答
答案和解析
你看看是这个吧,常量N定义的是10
#define N 10
#include
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 scanf("%d",&a[i]);
}
/************************/
void sc(int a[],int m)
{
int i;
printf("输出数组a,每行%d 个数:\n",m);
for(i=0;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 {
if(*max if(*min>a[i])*min=a[i];
}
}
void px(int a[])
{
int i,j,tmp;
printf("数组排序\n");
for(i=0;i for(j=i+1;j if(a[i] {
tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
#define N 10
#include
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
}
/************************/
void sc(int a[],int m)
{
int i;
printf("输出数组a,每行%d 个数:\n",m);
for(i=0;i
printf("\n");
}
/*************************/
void js(int a[],int *max,int *min)
{
int i;
printf("求最大最小值\n");
*max=*min=a[0];
for(i=1;i
if(*max if(*min>a[i])*min=a[i];
}
}
void px(int a[])
{
int i,j,tmp;
printf("数组排序\n");
for(i=0;i
tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
看了c语言:在main函数中,定义...的网友还看了以下:
excel里的VB语句怎么写?定义一个过程Bonus,在该过程内部定义三个long型变量:perf 2020-05-13 …
已知二次函数y=a(x-m)的平方-a(x-m),求证,不论a与m为何值,该函数的图像与y轴总有两 2020-06-02 …
已知函数y=(m-3)*x^m²+m²+m-2当m取什么值时,该函数是一次函数?当m取什么值,该函 2020-06-03 …
已知二次函数y=x^2+(a+1)x+a-1,无论a取何值,该函数的图像必过一定点 2020-07-16 …
已知函数y=mx∧2-6x+1(m是常数).⑴求证:不论m为何值,该函数的图像都经过y轴上的一个定 2020-07-30 …
对于函数f(x)=x3+ax2-x+1的极值情况,4位同学有下列说法:甲:该函数必有2个极值;乙: 2020-07-31 …
十万火急~二次函数已知函数y=mx^2-6x+3(m是常数).(1)求证:不论m为何值,该函数的图象 2020-12-08 …
输出语句PRINTA=4这样为什么错误什么不能用赋值符号赋值符号是哪个应该怎么书写才正确?麻烦写给我 2020-12-31 …
如图是某一函数的求值流程图,则该函数为(注:框图中的符号“=”为赋值符号,也可以写成“←”或“:=” 2020-12-31 …
VB里面过程的问题子过程返回值只能赋值给参数,函数过程返回值只能赋值给函数名子过程返回值只能赋值给参 2020-12-31 …