编写三个程序(C语言编写)

来源:百度知道 编辑:UC知道 时间:2024/05/26 21:36:01
(1).编写一程序,设置一个排序函数将数组按照从小到大的顺序进行排序,其中有两个形式参数,一个为指向数组的指针P,另一个参数为数组的元素个数N.在主函数main()中要求输入10个书存入数组data[10]中,同时要求调用函数sort对data进行排序,并在main()中输出最终的排序结果.2.编写一程序,从3行4列的二维数组中找出最大数所在的行和列,并将最大值及所在的行和列值打印出来.要求将查找和打印的功能编一个函数.二维数组的输入在主函数中进行,并将二维数组通过传递指针参数的方式由主函数传递到子函数中.
3.编程实现以下功能:struct stud{ char num[5],name[10];int s[4];double ave;};(1).函数readrec把30名学生的学号,姓名,四项成绩以及平均分放在一个结构体数组中,学生的学号,姓名和四项成绩由键盘输入,然后计算出平均分放在结构体对应的域中.(2).函数writerec输出30名学生的记录.(3).main()函数调用readrec函数和writerec函数,实现全部功能.(注:不允许使用全局变量,函数之间的数据全部使用参数传递.)
谢谢大家了, 这是我期中考试的题,谢谢了.

1 编写一程序,设置一个排序函数将数组按照从小到大的顺序进行排序,其中有两个形式参数,一个为指向数组的指针P,另一个参数为数组的元素个数N.在主函数main()中要求输入10个书存入数组data[10]中,同时要求调用函数sort对data进行排序,并在main()中输出最终的排序结果:

#include<stdio.h>
void sort(int *p,int n) /*从大到小排列*/
{ int max, i,j;

for(i=0;i<9;i++)
{ max=p[i];
for(j=i+1;j<10;j++)
if(max<p[j])
max=p[j];
}
}
main()
{int date[10],*p,n;
for(n=o,n<10,n++)
scanf("%4d",&date[n]); /*为数组赋初值*/
for(n=o,n<10,n++)
printf("%4d",&date[n]); /*输出数阻值*/
p=date;
sort(p,n); /*调用函数*/
for(n=o,n<10,n++) /*输出调用后的数阻值*/
printf("%4d",&date[n]);
printf("\n");
}