2023年二级C语言上机填空题技巧总结.doc
《2023年二级C语言上机填空题技巧总结.doc》由会员分享,可在线阅读,更多相关《2023年二级C语言上机填空题技巧总结.doc(21页珍藏版)》请在咨信网上搜索。
1、上机填空题技巧总结一、 填空题之办法1. 上机填空题占30分,普通有3个空需要填写,每个空为10分;2. 填空题做题之前必要弄清题目含义,抓住核心字,例如:规定对数组进行从小到大排序,则将会浮现不不大于符号,假如是从大到小排序则浮现不大于符号;3. 填空题中浮现频率最高就是函数调用、函数首部、函数返回值等和函数有关问题,因而必要牢牢掌握祝函数基本特性;4. 填空题中有“空”比较难,考生除了掌握必要C语言知识之外,还需要较好逻辑思绪,假如一种空将花诸多时间来解决,那么建议使用“死记硬背”办法来缩短复习时间;5. 上机题库中100题有某些题目是反复或是相似题目诸多,同窗们要使用比对办法尽量去理解;
2、6. 多练习,多思考,多总结二、 填空题与构造体有关1. 构造体成员引用:上机题库P18第9题(和92题一致),P27第23题(和51题同样)读清楚题目规定:(1) 规定将形参a所指构造体变量数据赋值给函数中构造体变量b(2) 从例如可以看出来:构造体中学号和姓名变为了1002和“LiSi”,但是3门课成绩没有变化#include #include struct student long sno; char name10; float score3;void fun(struct student a) struct student b; int i;/*found*/ b = _1_;题目规定
3、将形参a值赋值给构造体变量b,因而填:a b.sno = 10002;学号变为了10002/*found*/ strcpy(_2_,LiSi);姓名要变为”LiSi”,则要引用b中name成员 printf(nThe data after modified :n);/*解说是一句带过不用多讲*/ printf(nNo:%ld Name:%snScores: ,b.sno,b.name);/*解说是一句带过不用多讲*/*found*/ for (i=0;i3;i+) printf(%6.2f , b._3_);分析:这个是一种循环语句,执行3次循环,printf(%6.2f , b._3_)规定
4、输出是一种实型数据成员,因而可以得知是score成员,由于score是一种数组,因而填:b.scorei,当i变化就可以取出第一门、第二门、第三门课成绩 printf(n);main() struct student s=10001,ZhangSan,95,80,88; int i; printf(nnThe original data :n); printf(nNo:%ld Name:%snScores: ,s.sno,s.name); for (i=0;i3;i+) printf(%6.2f , s.scorei); printf(n); fun(s);23题:(1) 从例如中可以看出:变
5、化是构造体中学号和姓名#include #include struct student long sno; char name10; float score3;void fun( struct student *b) int i;/*found*/ b_1_ = 10004;题目中t学号变化为了10004,因而填写:b-sno,不能填写b.sno,由于b是一种指针/*found*/ strcpy(b_2_,LiJie);t姓名变为了”LiJie”,因而填写:b-namemain() struct student t=10002,ZhangQi,93,85,87; int i; printf(n
6、nThe original data :n); printf(nNo:%ld Name:%snScores: ,t.sno,t.name); for (i=0;i3;i+) printf(%6.2f ,t.scorei); printf(n);/*found*/ fun(_3_);此处为函数调用,依照形参类型来鉴定实参,形参struct student *b为构造体指针,联系main函数定义某些只有struct student t和b类型相似,因而可知需要填是:&t printf(nThe data after modified :n); printf(nNo:%ld Name:%snScor
7、es: ,t.sno,t.name); for (i=0;i3;i+) printf(%6.2f ,t.scorei); printf(n);2. 函数调用and构造体:上机题库P22第16题(和78、82题同样)重点注意:(1)把a中地址作为函数返回值返回函数(2)观测可知a中学号、姓名边为了10002和“zhangSan”,每门课成绩增长了1分#include #include struct student long sno; char name10; float score3;/*found*/_1_ fun(struct student *a)依照函数调用t = fun(&s);可知函
8、数返回类型和t类型相似,struct student s=10001,ZhangSan,95,80,88, *t;可知t类型为struct student * int i; a-sno = 10002; strcpy(a-name,LiSi);/*found*/ for (i=0;iscorei,不能为a.scorei或是a.score/*found*/ return _3_ ;题目规定返回a地址,a自身就是一种指针,因而填入a即可main() struct student s=10001,ZhangSan,95,80,88, *t; int i; printf(nnThe original
9、data :n); printf(nNo:%ld Name:%snScores: ,s.sno,s.name); for (i=0;isno,t-name); for (i=0;iscorei); printf(n);3. 构造体和排序:上机题库P14第2题 重点注意:(1)排序格式:红色某些为考试中重点,必要记住从小到大排序:for(i=0;in-1;i+)for(j=i+1;jaj) t=ai;ai=aj;aj =t;从大到小排序:for(i=0;in-1;i+)for(j=i+1;jn;j+) if(aiaj) t=ai;ai=aj;aj =t; void fun(struct stud
10、ent a,int n)/*found*/ _1_ t;此处规定填入t类型,可以从t = ai;中得知t和a数组类型必要一致,void fun(struct student a,int n)中得知a为构造体类型,因而填写:struct student int i,j;/*found*/ for (i=0;i_2_;i+)依照排序格式填空,因而记住是核心 for (j=i+1;j 0)按照姓名字典顺序从小到大排序,因而:strcmp(ai.name,aj.name),此处需要特别注意 t = ai; ai = aj; aj = t; main() struct student s4=10001,
11、ZhangSan,95,80,88,10002,LiSi,85,70,78, 10003,CaoKai,75,60,88,10004,FangFang,90,82,87; int i,j; printf(nnThe original data :nn); for (j=0;j4;j+) printf(nNo:%ld Name:%-8s Scores: ,sj.sno,sj.name); for (i=0;i3;i+) printf(%6.2f ,sj.scorei); printf(n); fun(s,4); printf(nnThe data after sorting :nn); for
12、(j=0;j4;j+) printf(nNo:%ld Name:%-8s Scores: ,sj.sno,sj.name); for (i=0;inext,上机题库P21第15题考点分析:(1)带头结点链表体现形式:headabcABCNULL带头结点链表,头结点head不存储任何数据,从头结点下一种结点开始存储数据,因而考试中假如浮现 p = _1_ ;则填入p=h-next(2)链表数据排序对数组元素从小到大排序:for(i=0;in-1;i+)for(j=i+1;jaj) t=ai;ai=aj;aj =t;对链表元素进行从小到大排序:while (p) /*相称于数组排序中for(i=0
13、;inext;/*相称于j=i+1*/ while (q) /*相称于for(;jdata q-data) /*相称于if(aiaj)*/ t = p-data; p-data = q-data; q-data = t; /*假如aiaj成立,则互换数据元素,让数据变成从小到大排序*/ q = q-next;/*相称于q+*/ p = p-next;/*相称于p+*/ 15题:#include #include #define N 6typedef struct node int data; struct node *next; NODE;void fun(NODE *h) NODE *p,*
14、q; int t;/*found*/ p = _1_ ;链表为带头结点,因而填写:p=h-next while (p) /*found*/ q = _2_ ;比较两个链表中元素大小,因而q=p-next,这样q指向了p下一位 while (q) /*found*/ if (p-data _3_ q-data)从小到大排序,因而使用不不大于符号,填写: t = p-data; p-data = q-data; q-data = t; q = q-next; p = p-next; main() NODE *head; int aN= 0,10,4,2,8,6 ; head=creatlist(a
15、); printf(nThe original list:n); outlist(head); fun(head); printf(nThe list after sorting :n); outlist(head);2. 不带头结点链表:p=h(1) 不带头结点链表表达形式:abcABCNULL不带头结点链表没有头结点,链表第一种结点存储就是数据,因而考试中假如浮现 p = _1_ ;则填入p=h(2) 解说P38第42题(和15题类似)void fun(NODE *h) NODE *p,*q; int t; p = h;不带头结点链表 while (p) /*found*/ q = _1_
16、 ;q指向p下一位,因而填入:q=p-next/*found*/ while (_2_)判断q有无到末尾,因而填入p或是p!=NULL if (p-data q-data) t = p-data; p-data = q-data; q-data = t; q = q-next; /*found*/ p = _3_ ; while (p)为循环条件,要构成循环p就得自加或是自减,从循环体中得知没有进行p+之类操作,因而此处填入:p=p-next或是p+ main() NODE *head; int aN= 0,10,4,2,8,6 ; head=creatlist(a); printf(nThe
17、 original list:n); outlist(head); fun(head);3. 链表返回值:P43第50题(和43题类似)/*found*/_1_ fun(NODE *h)依照函数调用head=fun(head);和 NODE *head;懂得函数返回值为NODE * NODE *p,*q,*r; p = h; if (p = NULL)假如p数据位空,则表达p中没有任何数据,因而就无需再进行逆置,故return NULL; return NULL; q = p-next; p-next = NULL;/*found*/ while (_2_)此空判断q有无为空,解说时候不容易理
18、解,考生记住即可,填入:while(q)或是while(q!=NULL) r = q-next; q-next = p; p = q;/*found*/ q = _3_ ;填入:q=r;次空理解起来较难,因而考生必要认真记忆,教师无需多讲 return p;main() NODE *head; int aN=2,4,6,8,10; head=creatlist(a); printf(nThe original list:n); outlist(head); head=fun(head); printf(nThe list after inverting :n); outlist(head);四
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 二级 语言 上机 填空 技巧 总结
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。