3、a.y);}105、#includetypedefstructstudent{charname[10];longsno;floatscore;}STU;main(){STUa={"zhangsan",2001,95},b={"Shangxian",2002,90},c={"Anhua",2003,95},d,*p=&d;d=a;if(strcmp(a.name,b.name)>0)d=b;if(strcmp(c.name,d.name)>0)d=c;printf("%ld%s",d.sno,p->name
4、);}四、程序填空1、以下程序是从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入,请将缺省语句填上。main(){floatx,amax,amin;scanf(“%f”,&x);amax=x;amin=x;while(①)10{if(②)amax=x;if(③)amin=x;scanf(“%f”,&x);}printf(“amax=%f,amin=%f”,amax,amin);}2、下面的程序是用指针来交换两个数据,请将缺省语句填上。voidexchange(int*p,int*q){intt
5、;t=*p;*p=*q;*q=t;}main(){inta,b,*x,*y;a=10;b=20;x=&a;①②printf(“%d%d”,*x,*y);}五、程序设计题1、有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分数。2、用自定义函数和数组求n个数的平均值,并用主函数调用2三、写出程序的运行结果101、#includemain(){inta=1,b=3,c=5,d=4;if(a<
6、b)if(cmain(){intk,j,m;for(k=5;k>=1;k--){m=0;for(j=k,j<=5;j++)m+=k*j;}printf(“m=%d”,m);}10103、#includemain(){unionExa{struct{inta;intb;}out;intc;intd;}e;e.c=1;e.d=2;e.
7、out.a=e.c*e.d;e.out.b=e.c+e.d;printf("%d%d",e.out.a,e.out.b);}4、#include“stdio.h”main(){inta[]={1,2,3,4},i,j,s=0;j=1;for(i=3;i>=0;i--){s=s+a[i]*j;j=j*10;}printf(“s=%d”,s);}5、#include"stdio.h"10#include"string.h"main(){chars1[]="somthings";chars2[]="test";chars3[]="
8、good";printf("%s",strcat(strcpy(s1,s2),s3));}10四、程序填空1、下面程序输出100到200之间的素数,每行输出10个素数,请将缺省语句填上,使算法完整。#include“math.h”main(){intm,k,