当前位置:首页 > 计算机二级南开百题 程序填空题要点
2 4 6 3 6 9
/**************found**************/ ___1___ = (k+1)*(j+1);} /**************found**************/ fun ( ___2___ ) ;
/**************found**************/ printf ( \
第一空:a[j][k] 第二空:a,n 第三空:a[i][j]
39.给定程序的功能是对a数组中n个人员的工资进行分段统计,各段的人数存到b数组中;工资为1000元以下的人数存到b[0]中, 工资为1000元到1999元的人数存到b[1]中, 工资为2000元到2999元的人数存到b[2], 工资为3000元到3999元的人数存到b[3], 工资为4000元到4999元的人数存到b[4],工资为5000元以上的人数存到b[5]中。例如,当a数组中的数据为:900、1800、2700、3800、5900、3300、2400、7500、3800,调用该函数后,b中存放的数据应是:1、1、2、3、0、2 /**************found**************/ for (i=0; i<6; i++) b[i] = ___1___;
/**************found*************/ ___2___ b[a[i]/1000]++;}
/**************found**************/ printf(\ printf(\
第一空:0 第二空:else 第三空:b[i]
40.给定程序的功能是将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0], 成绩为70到79的人数存到b[1], 成绩为80到89的人数存到b[2], 成绩为90到99的人数存到b[3],成绩为100的人数存到b[4],成绩为60分以下的人数存到b[5]中。例如,当a数组中的数据是:93、85、77、68、59、43、94、75、98。调用该函数后,b数组中存放的数据应是:1、2、1、3、0、2。
/**************found**************/ for (i=0; i< ___1___; i++)
/**************found**************/ ___2___ b[(a[i]- 60)/10]++;}
/**************found**************/ fun(___3___, 9);
第一空:n 第二空:else 第三空:a,b
41.给定程序的功能是求出1到1000之内能被7或11整除但不能同时被7和11整除的所有整数放存数组a中,通过n返回这些数的个数。
/**************found**************/
if(((i % 7 == 0) || (i % 11 == 0)) && i % 77 != 0) /**************found**************/ *n = ___2___ ;}
/**************found**************/ fun ( ___3___ ) ;
第一空:i 第二空:j 第三空:aa,&n
42.给定程序中已经建立一个带有头结点的单向链表,在main函数中将多次调用fun函数,每调用一次fun函数,输出链表尾部结点中的数据,并释放该结点,使链表缩短。
/**********found**********/ t=t->___1___; }
/**********found**********/ printf(\
/**********found**********/ free(___3___);}
第一空:next 第二空:t->data 第三空:t
43.给定程序的功能是计算score中m个人的平均成绩aver,将低于aver的成绩放在below中,通过函数名返回人数。例如,当
socre={10,20,30,40,50,60,70,80,90},m=9时,函数返回的人数应该是4,below={10,20,30,40}。 /**************found**************/
below[j++] = ___1___ ;
/**************found**************/ n = fun(score, 9, ___2___) ;
/**************found**************/
for (i = 0 ; i < n ; i++) printf(\第一空:score[i] 第二空:below 第三空:below[i]
44.给定程序的功能是求出能整除x且不是偶数的各整数,并放在数组pp中,这些除数的个数由n返回。例如,若x的值为30,则有4个数符合要求,它们是1,3,5,15。 /**************found**************/ if((x % i) == 0) pp[j++] = ___1___ ; /**************found**************/ *n = ___2___ ;}
/**************found**************/ fun(x, ___3___ ) ;
第一空: i 第二空: j 第三空:aa,&n
45.已知学生的记录由学号和学习成绩构成,N名学生的数据已经存入a结构体数组中。给定程序的功能是找出成绩最低的学生记录,通过形参返回主函数。 {/**************found**************/ ___1___ h; int i ;
/**************found**************/ if ( a[i].s < h.s ) ___2___ = a[i]; /**************found**************/ *s = ___3___ ;}
第一空:STU 第二空:h 第三空:h
46.给定程序中已经建立一个带有头结点的单项链表,链表中的各结点按照数据域递增有序链接。函数fun的功能是:函数链表中数据域值相同的结点,使之只保留一个。
/**********found**********/ free(___1___); /**********found**********/ q=p->___2___; } /**********found**********/ q=q->___3___; } } }}
第一空:q 第二空:next 第三空: next
47.给定程序的功能是实现矩阵(3行3列)的转置。 /**************found**************/ array[i][j] = ___1___ ;}
/**************found**************/
fun(___2___);
/**************found**************/ printf(\ 第一空:arr[j][i] 第二空:array 第三空:array[i][j] 48.函数fun的功能是:统计长整数n的各个位上出现数字1、2、3的次数,并通过上部(全局)变量 c1、c2、c3返回主函数。例如:当n=123114350时,结果应该是:c1=3 c2=1 c3=2。 /**********found**********/ switch(___1___){
/**********found**********/ case 1: c1++;___2___; /**********found**********/ case 2: c2++;___3___;
第一空:n 第二空:break 第三空:break
49.函数fun的功能是进行字母转换,若形参ch中小写英文字母,则转换成参应的大写英文字母;若ch中是大写英文字母,则转换成对应的小写英文字母;若是其它字母则保持不变;并转换后的结果作为函数值返回。 {/**********found**********/ if ((ch>='a')___1___(ch<='z')) /**********found**********/ return ch +'a'-___2___ ; /**********found**********/ return ___3___;}
第一空:&& 第二空:?A? 第三空:ch
50.给定程序的功能是对指定字符在字符串a中出现的次数进行统计,统计的数据存到b数组中。其中:字符?Z? 出现的次数存放到b[0]中,字符?Y?出现的次数存放到b[1],字符?X?出现的次数存放到b[2]中,字符?W?出现的次数存放到b[3],字符?V?出现的次数存放到b[4]中,其它字符出现的次数存到b[5]中。
/**************found**************/ for (i=0; i< ___1___(a); i++)
/**************found**************/ ___2___ b[5]++;}
/**************found**************/ fun(___3___);
第一空:strlen 第二空:else 第三空:a,b
50.函数fun的功能是:将形参a所指数组中的前半部分元素中的值和后半部分元素中的值对换。形参n中存放数组中的数据的个数,若n为奇数,则中间的元素不动。例如:若a所指数组中的数据一次为:1、2、3、4、5、6、7、8、9,则调换后为:6、7、8、9、5、1、2、3、4。
/**********found**********/
p = (n%2==0)?n/2:n/2+___1___; /**********found**********/ a[i] = a[p+___2___]; /**********found**********/ ___3___ = t; }}
第一空:1 第二空:i 第三空:a[p+i]
52.给定程序的功能是把s串中所有的字符前移一个位置,串中的第一个字符移到最后。例如:s串中原有的字符串为:Mn.123xyZ,则调用函数后,s串中的内容为:n.123xyZM
/**************found**************/ strcpy(___1___) ;}
/**************found**************/ fun ( ___2___ );
/**************found**************/ ___3___ ( a );}
第一空:s,b 第二空:a 第三空:puts
53.给定程序的功能是计算并输出high以内最大的10个素数和。high由主函数传给fun函数。例如:high值为100,函数的值为732。
/************found************/ while ((high >= 2) ___1___ (n < 10)) /************found************/ yes=0; ___2___; }
/************found************/ ___3___; }
第一空:&& 第二空:break 第三空:high=high-1 54.给定程序的功能是删除w数组中下标为k的元素中的值。程序中,调用了getindex、arrout和arrdel三个函数,getindex用以输入所删除元素的下标,函数中对输入的下标进行检查,若越界,则要求重新输入,直到正确为止。arrout用以输出数组中的数据,arrdel进行所要求的删除操作。
/************found************/ for (k = 0; k < ___1___; k++) /************found************/ return ___2___;}
/************found************/ ___3___
第一空:m 第二空:n 第三空: do
55.给定程序的功能是从字符串s尾部开始,按逆序把在其中出现的每相邻的两个字符,紧随其后重复出现一次,放在一个新串t中,若字符串s中头部有剩余的单个字符也重复,放在t的最后。例如:当s中的字符串为:”12345”时,则t中的字符串应该为:”5454323211” /************found************/ t[j++] = ___1___;
/************found************/ if (i-1 ___2___ 0)
/************found************/ fun(___3___);
printf(\第一空:s[i] 第二空:>= 第三空:s,t
56. 给定程序的功能是建立一个带有头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括结点)数据域为偶数的值累加起来,并且作为函数值返回。 /***********found**********/ ___1___ *p;
/***********found**********/ p=___2___;
/***********found**********/ p=___3___; }
第一空:NODE 第二空:h->next 第三空:p->next
57.给定程序的功能是把在字符串s中出现的每个字符,紧随其后重复出现一次,形成一个新串放在t中,且在t中把原相邻字符的位置进行了互换。例如:当s中的字符串为:”12345”时,则t中的字符串应该为:”2211443355”。
/************found************/ sl = ___1___(s);
/************found************/ ___2___; }
/************found************/ fun(___3___);
第一空:strlen 第二空:j=j+1 第三空:s,t
58.给定程序的功能是根据公式求P的值,结果由函数值带回。mm与!n为两个正整数且要求m>n。
P? 例如:m=11,n=4时,运行结果为 /**************found**************/ n!(m?n)! for(i=1;i<=m;i++) s=___1___ ;
/**************found**************/ p=1.0*jc(m)/jc(n)/jc(___2___) ;
/**************found**************/ ___3___;}
第一空:s*i 第二空:m-n 第三空:return p
59.给定程序的功能是把a数组中的n个数,和b数组中逆序的n个数一一对应相乘求平方,结果存在c数组中。例如:当a数组中的值是:1、3、5、7、8,b数组中的值是:2、3、4、5、8,c中存放的数据是:64、225、400、441、256。
/**************found**************/ _1___ = (a[i] * b[n-1-i]) *(a[i] * b[n-1-i]);} /**************found**************/ fun(___2___, 5);
/**************found**************/
for (i=0; i<5; i++) printf(\ 第一空:c[i] 第二空:a,b,c 第三空:c[i]
60.给定程序的功能是根据公式计算S,计算结果通过形参指针sn传回;n通过形参传入。
Sn?111?3?15?17???12n?1例如,若n的值
为15时,输出结果是:S=0.769788 N=15。
{/**************found**************/ int i,j=___1___;
/**************found**************/ ___2___=s;}
/**************found**************/ fun(___3___);
第一空:1 第二空:*sn 第三空:&s,n
61.给定程序的功能是把s 串中所有的字母改写该字母的下一个字母,字母z改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其它字符不变。 {/**************found**************/ char *p = ___1___ ;
/**************found**************/ if(*p == 'Z') *p = ___2___ ;
/**************found**************/
else if(*p == 'z') *p = ___3___ ;
第一空:s 第二空:?A?或65 第三空:?a?或97
62.给定程序中,函数fun的功能是:有N×N矩阵,根据给定的m(m 第一空:i++ 第二空:m 第三空:m 63.给定程序的功能是建立一个带有头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能查找结点数据域最大值,并且作为函数值返回。 /***********found**********/ ___1___ *p; /***********found**********/ max=___2___ /***********found**********/ ___3___ } 第一空:NODE 第二空:p->data 第三空:p=p->next 64.给定程序的功能是把一个字符串的字符复制到另外一个字符串中。 /******found******/ ___1___; } /******found******/ *pd=___2___;} /******found******/ ___3___ 第一空:ps++ 第二空:?\\0?或0 第三空:strcpy(pa,pb); 65.给定程序的功能是:从键盘输入一个字符串(长度不超过80个字符),依次扫描字符串中的小写字母o,每次将小写字母o的左右字符串部分作交叉换位,即左边字符串移到小写字母o的右边,而原先右边的则返之。并把小写字母o删除,依次直至小写字母o处理完,之后已处理的字符串出到屏幕。例如:输入字符串为:”123oabco98”,处理后输出为”98123abc”。 /******found******/ if ___1___ /******found******/ ___2___; } ___3___; 第一空:(ch[i]==?o?) 第二空:i++ 第三空:break 66.给定程序的功能是:从键盘输入一个字符串(长度不超80个字符),依次扫描字符串的小写字母o,每次将小写字母o左侧所有小写字母转换为大写字母,大写字母转换为小写字母。并把小写字母o删除,依次直至小写字母o处理完,之后把已处理的字符串输出到屏幕。例如:输入字符串为”aA1BoCao”,处理后输出为”aA1BcA”。输入字符串”aAobC”,输出为”AabC”。 第一空:nulin=strlen(ch); 第二空:else 第三空:ch[nulin-1]=?\\0?; 67. 给定函数countValue(int n),它的功能是:求n以内(不包括n)同时被3与7整除的所有自然数之和的平方根s,s作为函数返回值。主程序调用该函数输出n为1000时的函数值153.909064。 ___1___ countValue(int n) /******found******/ for(i=8;__2___;i++) 第一空:double 第二空:i ___2___; printf(\ 第一空:double 第二空:xy=xy+sqrt((double)i) 第三空:countValue(1000) 69.给定程序的功能分别求7个学生三门课程的平均成绩,在主程序中输出各学生平均成绩和最大平均成绩 /**********found************/ ___1___; return(aver);} /**********found************/ {b[i]=___2___; /**********found************/ if ___3___ 第一空:aver=sum/3.0 第二空:b[i]=fun(a[i][0],a[i][1],a[i][2]); 第三空:if(av 70.给定程序的功能是用递归法计算n!。用递归方法计算n!,可使用如下公式表示 ┌1 (n=0,1) n!= ┤ └n×(n-1)!(n>1) /************found************/ else if (___1___) m=1; /************found************/ else ___2___; /************found************/ scanf(\第一空:(n==0||n==1)第二空:m=ref(n-1)*n 第三空:&n 71.给定程序的功能是求出数组中的最大数max及最大数的个数cnt数组xx中值能被3整除或能被7整除的算术平均值pj(保留职位小数),结果max,cnt,pj输出到屏幕。 /*************found************/ ___1___ /*************found************/ for(___2___;I /*************found************/ {if (xx[I]>max) ___3___; 第一空:max=xx[0];第二空: for(i=0,k=0;i /***************found***************/ if(___1___) tag=0; /***************found***************/ for(I=1;___2___;I++) /***************found***************/ {___3___;}} 第一空:number%i==0 第二空:I<90 第三空:cnt++;sum+=xx[I] 73.给定程序的功能是对从键盘输入的字符数组xx(不超过80个字符),按字符从大到小的顺序进行排序,排序后的结果存入字符串数组xx中。例如:输入:dAe,BfC.结果:fedCBA. /***************found***************/ for (numj=___1___;numj /***************found***************/ ___2___; /***************found***************/ ___3___;} 第一空:numi+1 第二空:ch=xx[numi] 第三空:xx[numj]=ch 74.给定程序的功能是:对字符数组xx中字符按给定的替代关系对所有字符进行替代,仍存入数组xx的对应的位置上。替代关系:f(p)=p*11 mod 256(p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是大写字母或计算后f(p)值小于等于32, 则该字符不变,否则将f(p)所对应的字符进行替代。 /***************found***************/ for (i=0;___1___;i++) /***************found***************/ ___2___ /***************found***************/ xx[i]=___3___; 第一空:i /***************found***************/ sum+=___1___; /***************found***************/ if (___2___) c+=1;} /***************found***************/ ___3___; 第一空:sum+=s[i].score 第二空:if(s[i].score<60) c+=1 第三空:ave=sum/5; 76.给定程序的功能是在三位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b[]中;它既是完全平方数,又有两位数相同,例如144,676等。函数int jsValue(int n)判断参数是否满足该条件,如果满足该条件函数返回值为1,否则返回值为0。 #include /***************found***************/ n2=___1___;
共分享92篇相关文档