四、程序填充题 (本大题共3 小题,每小题6 分,共18 分) 给出下列程序,将横线处缺 少的部分补上,使其能正确运行。 36. 以下程序的功能是用选择法对数组a 中的整数由小到大进行排序。 void sort(int b[],int n) { int i,j,t; for(i = 0;ifor(______;jif(b[i]_____b[j]) {t = b[i];_____________;b[j]=t;} } main() { int a[]={5,8,6,2,7,4,1,3}; int i; sort(a,8); for(i = 0;i<8;i ++ ) printf(″﹪5d″,a[i]); printf(″\ n″); } 37. 输入一字符串(换行为结束标志)统计其中数字(0,1,2,…,9不单独统计)、空白 和其它字符出现的次数。 # include ″stdio.h″ main() { char c; int ___________________________; while((c = getchar())! =′\ n′) { if(__________________________)digit + + ; else if(c = =′′‖c = =′\ t′) ++ blank; else __________________________; } printf(″digit =﹪d,blank =﹪d,other =﹪d \ n″,digit,blank,other); } 38. 先为数组a 输满数据,再为x 输入一个数据,在数组a 中找出第一个与x 相等的元 素并将其下标输出,若不存在这样的元素,则输出“Not found!”标志。 main() {int i,x,a[10]; for(i = 0;i<10;i ++ )scanf(″﹪d″,___________); scanf(″﹪d″,&x);printf(″﹪d″,x); for(i = 0;i<10;i ++) if(_________________)break; if (i _________10)printf(″ position:﹪d \ n″,i); else printf(″ Not found! \ n″,x); } 五、程序设计题 (第39 小题5 分,第40、41小题各6 分,共17 分)。 39. 求出10 至1000 之内能同时被2、3、7整除的数,并输出。 40. 求1 到100 之间的奇数之和及偶数之和,并将二者输出。 41. 输入一字符串,检查是否回文 (回文是指正反序相同,如,LeveL),若是则输出 “Yes”,否则输出“No”。 |