1、(B)将一个无符号整数转换为二进制表示存入字符数组中。
3、(B)已知n个学生的注册号和成绩,计算他们的平均成绩,并列出成绩最好的前t名学生的注册号和分数。
5、(B)利用顺序查找法从数组a的10个元素中对关键m进行查找。顺序查找法的思路是:从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。若找到,返回此元素的下标;若仍未找到,返回值-1。请通过参数间的传递来实现
第二题:
/*1.已知n个学生的注册号和成绩,计算他们的平均成绩。 并列出成绩最好的前t名学生的注册号和分数*/
#define N 5 #define T 3
struct student { int ID; int result; }stu[N];
main() { int n,i,j,temp;
for(n=0;n<N;n++){ printf("Please input the student ID:"); scanf("%d",&stu[n].ID); printf("Please input hte student result:"); scanf("%d",&stu[n].result); printf("_________________________________\n"); }
for(i=0;i<N;i++){ for(j=N-2;j>=i;j--){ if(stu[j+1].result>stu[j].result){ temp=stu[j+1].result; stu[j+1].result=stu[j].result; stu[j].result=temp;
temp=stu[j+1].ID; stu[j+1].ID=stu[j].ID; stu[j].ID=temp;
} } }
printf("\n\n");
for(n=0;n<T;n++){ printf("The top_______________________%d\n",1); printf("%d\n",stu[n].ID); printf("%d\n",stu[n].result); getch(); }
}
第三题:
/*5、(B)利用顺序查找法从数组a的10个元素中对关键m进行查找。 顺序查找法的思路是: 从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。 若找到,返回此元素的下标;若仍未找到,返回值-1。请通过参数间的传递来实现*/
#define N 10
int search(int *a,int m) /*查找的函数*/ { int i; for(i=0;i<N;i++) if(a[i]==m) return i;
return -1; }
main() { int a[N],n,m;
for(n=0;n<N;n++){ /*输入数组a的值*/ printf("Please input a[%d] ",n); scanf("%d",&a[n]); }
printf("Please input m:"); /*输入m的值*/ scanf("%d",&m);
n=search(a,m); /*调用函数判断*/
if(n==-1) printf("Can't found!"); else printf("Found! %d",n);
getch();
}