2012年9月最新版二级C语言上机题库汇编2012年9月最新版二级C语言上机题库汇编
一、程序填空题
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序,即若原链表结点数据域从头到尾的数据为:10,4,2,8,6,排序后链表结点数据域从头到尾的数据为:2,4,6,8,10。
填空:(1)p->next (2)q (3)p->next
改错:(1)while(*s!='\0') (2)s++;
编程:int b[N],i,j=0;
for(i=p+1;i
{b[j]=w[i];j++;}
for(i=0;i<=p;i++)
{b[j]=w[i];j++;}
for(i=0;i
二、程序填空题
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。
填空:(1)"rb" (2)> (3)fwrite
改错:(1)p=s; (2) ; (缺分号)
编程:int i;
for(i=0;j
for(i=0;i
if(a[i]>=100)b[10]++;
else b[a[i]/10]++;
三、程序填空题
给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序,即若原链表结点数据从头至尾的数据为:10,4,2,8,6,排序后链表结点数据域从头至尾的数据为:2,4,6,8,10。
填空:(1)h->next (2)p->next (3)>=
改错:(1)p=h->next; (2)p=p->next;
编程:int i,j;
for(i=0;i
for(j=0;j
{b[*n]=*(*(s+i)+j);
*n=*n+1;}
四、程序填空题
给定程序中,函数fun的功能是:找出形参s所指字符串出现频率最高的字母(不区分大小写),并统计出其出现的次数,例如,形参s所指的字符串为:abcAbsmaxiess,程序执行后的输出结果为:
letter 'a':3 times
letter 's':3 times
填空:(1)*s (2)1 (3)k[n]
改错:(1) double fun(int k) (2); (缺分号)
编程:double s=0.0;
int i;
for(i=1;i<=n;i++)
s=s+1.0/(i*(i+1));
return s;
五、程序填空题
给定程序中,函数fun的功能是:在3*4的矩阵中代出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。
例如:有下列矩阵
1 2 13 4
7 8 10 6
3 5 9 7
程序执行的结果为:find:a[2][2]=9
填空:(1)j (2)0 (3)i++
改错:(1)for(i=2;i<=m;i++) (2)y-=1.0/(i*i);
编程:float av=0.0;
int i,j=0;
for(i=0;i
av+=score[i];
av/=m;
for(i=0;i
if(av>score[i])below[j++]=score[i];
return j;
六、程序填空题
给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原位从高位到低位的顺序组成一个新的数,并作为函数值返回。
例如,从主函数输入一个整数函数返回值为:26845.
填空:(1)1 (2)s (3)i*10
改错:(1)int fun(int n,int xx[][M]) (2)printf("%d",xx[i][j]);
编程:*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);
七、程序填空题
给定程序中已经建立一个带有头结点的单向链表,链表中的各结点数据域中的数据递增有序链接,函数fun的功能是:把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。
填空:(1)x (2)p (3)s
改错:(1)long k=1; (2)num/=10;
编程:int i;
float aver=0.0;
for(i=0;i
aver=aver/n;
return aver;
八、程序填空题
给定程序中,函数fun的功能是:讲自然数1~10以及它们的平方根写到名为myfile3.tx