#include
struct { int year,month,day ;} birthday; float score[3]; }STU;
/**********found**********/ void show(STU ___1___) { int i;
printf(\ tt.birthday.year, tt.birthday.month, tt.birthday.day); for(i=0; i<3; i++)
/**********found**********/ printf(\ printf(\ } main( )
{ STU std={ 1,\ printf(\ /**********found**********/ show(___3___); }
解题思路:
本题是利用结构体变量存储了一名学生的信息。 第一处:tt变量在函数体fun已经使用,所以应填:tt。
第二处:利用循环分别输出学生的成绩数据,所以应填:tt.score[i]。 第三处:函数的调用,所以应填:std。
***************************************************
给定程序MODI1.C中函数 fun 的功能是:求出数组中最大数和次最大数,并 把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。 请改正程序中的错误,使它能得出正确的结果。
注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 给定源程序:
#include
/**********found**********/ m=0;
for(k=i+1;k /**********found**********/ if(a[k]>a[m]) k=m; t=a[i];a[i]=a[m];a[m]=t; } } main( ) { int x, b[N]={11,5,12,0,3,6,9,7,10,8}, n=10, i; for ( i=0; i for ( i=0; i 解题思路: 第一处:外循环每循环一次,把当前位置i赋值给m,所以应改为:m=i;。 第二处:通过内循环来找出最大的一个数的位置k,所以应改为:if(a[k]>a[m]) m=k;。 *************************************************** 请编写一个函数 unsigned fun ( unsigned w ),w 是一个大于10的无符 号整数,若 w 是 n (n ≥ 2)位的整数,函数求出w的低 n-1位的数作为函数值返 回。 例如:w 值为 5923,则函数返回 923; w 值为 923 则函数返回 23。 注意: 部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入 你编写的若干语句。 给定源程序: #include { } main( ) { unsigned x; printf ( \ printf ( \ if ( x < 10 ) printf (\ else printf ( \ NONO( ); } 解题思路: 本题是考察考生怎样获取一个符合要求的无符号整数。本题是应用if条件语句首先判断给 出的数是几位数,再模相应的值,最后得出的余数就是结果。 参考答案: unsigned fun ( unsigned w ) { if(w>10000) w %= 10000 ; else if(w>1000) w %= 1000 ; else if(w>100) w %= 100 ; else if(w>10) w %=10 ; return w ; } ※※※※※※※※※※※※※※※※※※※※※※※※※ 第08套: 给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、 姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结 果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include typedef struct { int num; char name[9]; float score[3]; }STU; void show(STU tt) { int i; printf(\ for(i=0; i<3; i++) printf(\ printf(\ } /**********found**********/ void modify(___1___ *ss,float a) { int i; for(i=0; i<3; i++) /**********found**********/ ss->___2___ *=a; } main( ) { STU std={ 1,\ float a; printf(\ show(std); printf(\ /**********found**********/ modify(___3___,a); printf(\ show(std); } 解题思路: 本题是利用结构体存储学生记录并由实参ss返回。 第一处:实参ss是一个结构型指针变量,所以应填:STU。 第二处:该学生的各科成绩都乘以一个系数a,所以应填:score[i]。 第三处:函数的调用,由于函数定义时使用的指针结构型变量,所以应填:&std。 *************************************************** 给定程序MODI1.C中函数fun的功能是:求k!(k<13),所求阶乘的值作为函 数值返回。例如:若k = 10,则应输出:3628800。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include /************found************/ if k > 0 return (k*fun(k-1)); /************found************/ else if ( k=0 ) return 1L; } main() { int k = 10 ; printf(\ } 解题思路: 第一处:条件判断缺少圆括号。 第二处:判断相等的符号是==。 *************************************************** 程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数 fun(int a[][N], int n),函数的功能是:使数组左下三角元素中的值乘以n 。 例如:若n的值为3,a 数组中的值为 | 1 9 7 | | 3 9 7 | a = | 2 3 8 | 则返回主程序后a数组中的值应为 | 6 9 8 | | 4 5 6 | | 12 15 18| 注意: 部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入 你编写的若干语句。 给定源程序: #include int fun ( int a[][N], int n ) 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库全国计算机二级C语言题库 - 南开100题(6)在线全文阅读。
相关推荐: