二级C语言上机填空题技巧总结
作者:
日期:
上机填空题技巧总结
填空题之方法
上机填空题占30分,一般有3个空需要填写,每个空为10分;
填空题做题之前必须弄清题目含义,抓住关键字,例如:要求对数组进行从小到大排序, 则将会出现大于符号,如果是从大到小排序则出现小于符号;
填空题中出现频率最高的就是函数的调用、函数的首部、函数的返回值等和函数相关的问
题,因此必须牢牢掌握祝函数的基本特征;
填空题中有的“空”比较难,考生除了掌握必须的C语言知识之外,还需要很好的逻辑思
路,如果一个空将花很多时间来解决,那么建议使用“死记硬背”的方法来缩短复习时间;
上机题库中10 0题有部分题目是重复的或是相似的题目很多,同学们要使用比对的方法 尽量去理解;
多练习,多思考,多总结
填空题与结构体相关
1.结构体成员引用:上机题库P18第9题(和92题一致),P2 7第23题(和51题一样)
程序通过定义学生结构体变量.存储了学生的学号、姓名和3门课的成绩。函 数亦的功能是将形參画指结构体变量中的数据赋给函数中的结构体变量虬并修 改b中的学号和姓名,最后输岀修改后的数据。例如’斬扌旨变量中的学号、姓名、 刑三门课的成绩依欲是:1000b ^ZhangSan*. 95, 80. 88,则傕改后输岀b中的 数据应并 10002. "LiSi*.皈 80. 88.
读清楚题目要求:
要求将形参a所指结构体变量的数据赋值给函数中的结构体变量b
从例如可以看出来:结构体中的学号和姓名变为了1002和“ L 1 Si” ,但是3门课 成绩没有变化
#i nclude
#include struct stude nt { long sno;
char n ame[10]; float score[3];
};
void fun (struct stude nt a) { struct stude nt b; int i;
found
found
b = __1__;题目要求将形参
b = __1__;题目要求将形参a的值赋值给结构体变量
b.s no = 10002;学号变为了 10002
b,因此填:
found
found
strcpy(__2__, "LiSi");姓名要变为” LiSi ” ,则要引用b中的name成员
printf("\nThe data after modified :\n");/*讲解是一句带过不用多讲 */
prin tf("\nNo: %ld Name: %s\nScores: ",b.s no, b. name); /*讲解是一句带
过不用多讲*/
found
found
for (i=0; i<3; i++) prin tf("%6.2f ", b.__3__;分析:这个是一个循环
语句,执行3次循环,printf("%6.2f", b.__3__)要求输出是一个实型数据的成员,
因此可以得知是score成员,因为score是一个数组,因此填:b.score[i],当i变 化就可以取出第一门、第二门、第三门课的成绩
prin tf("\n");
}
mai n()
{ struct student s={10001,"ZhangSan", 95, 80, 88};
int i;
printf("\n\nThe original data :\n");
prin tf("\nNo: %ld Name: %s\n Scores: ",s.s no, s.n ame);
for (i=0; i<3; i++) prin tf("%6.2f ", s.score[i]); prin tf("\n");
fun( s);
23题:
I 程序通过定义学生结构存诸了学主的学号.姓名和3门课的成绩口函 險的功能星对世罢b所指鰭构眸变昼中朗数据进行修改号肓在主函数中输出倏 改后的数据.
例如? b所指变量t中的学号、姓各 和三门课的成蜻依次是:10002.
93> 85. 8T j 俛改后输出 t中的数据应为;ldtKH. “ Lijie \ 93.
8乐 87?
(1)从例如中可以看出:变化的是结构体中的学号和姓名
#i nclude #include struct stude nt {
long sno;
char n ame[10];
float score[3];
};
void fun( struct stude nt *b)
{ int i;
found
found
b__1__ = 10004;题目中t的学号变化为了 10004,因此填写:b->sno,不能填
写b.sno,因为b是一个指针
found
f