- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机软件及应用]南开二级C语言上机题库
1
分析:
? 由题意已知m个人的成绩存放在score数组中,题目要求编写fun函数返回低于平均分的人数,并将低于平均分的分数放在below所指的数组中。
? 例如,当score数组中的数据为10、20、30、40、50、60、70、80、90时,函数返回的人数应该是4,below中的数据应为10、20、30、40。
? 为了实现题目要求,fun函数必须首先计算平均分数。计算平均分的方法只要使用循环累加score数组中的所有成绩,然后将累加得到的合计值除以人数m就得到平均分。
? 得到平均分之后,可以再次使用循环逐个地判断score数组中的每一个成绩是否低于平均分,如果的确低于平均分,则将该分数放入below数组最后位置,同时将记录低于平均分的人数的变量增加一。当循环结束的时候,就能完成题目的要求。
? 官方答案注解如下:
? #include conio.h
? #include stdio.h
? #include string.h
? int fun(int score[],int m, int below[])
? {
? /* aver变量用于累加score数组中所有的分数,所以初始化为0 */
? int i,k=0,aver=0;
? /* 累加score数组中所有的成绩,aver存放最新的合计值 */
? for(i=0;im;i++)
? aver+=score[i];
? /* 将成绩合计值除以人数m,得到平均分,将其放入aver中 */
? aver/=m;
? /* 再次使用循环统计score数组中低于平均分的人数 */
? /* 并将低于平均分的分数放在below所指的数组中 */
? for(i=0;im;i++)
? /* 判断当前检查的分数是否低于平均分 */
? if(score[i]aver)
? {
? /* 将低于平均分的分数放在below所指的数组中 */
? below[k]=score[i];
? /* k变量的值指示分数放入below数组中的下标 */
? /* 所以放入一分数后需将k加一,否则下一分数放入将覆盖已有分数 */
? k++;
? }
? /* 返回低于平均分的人数k */
? return k;???
? }
? main()
? {
? int i,n,below[9];
? int score[9]={10,20,30,40,50,60,70,80,90};
? /* clrscr函数定义在conio.h,所以存在#include conio.h */
? /* clrscr函数作用是清除输出窗口中已经存在的所有信息 */
? clrscr();
? n=fun(score,9,below);
? printf(people=%d\n,n);
? printf(\nBelow the average score are :);
? for(i=0;in;i++)
? printf(%d ,below[i]);
? printf(\n);
? }
?
2
分析:
? 题目要求编写fun函数求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。
? 要实现以上要求,只要使用循环从1至1000逐个地检查在这个范围之内的所有整数是否能被7或11整除、但不能同时被7和11整除。如果符合能被7或11整除、但不能同时被7和11整除的要求,则将这个符合条件的整数放入a数组中。
? 另外能被7或11整除、但不能同时被7和11整除的条件可以分为两大条件:
? (1)能被7或11整除
? (2)但不能同时被7和11整除
? 以上两个条件的关系是并且的关系,在C语言中可以使用连接这两个条件。
? 第一个条件能被7或11整除可以使用(i%7==0 || i%11==0)来表示,其中i表示要检查的整数。
? 第二个条件但不能同时被7和11整除可以使用(i%7!=0 i%11!=0)来表示。下面给出的答案使用了i%77!=0来表示这个条件,这也是可以的。因为不能整除77的整数当然也不能同时整除7和11。
? 官方答案注解如下:
? #include conio.h
? #include stdio.h
? void fun(int * a, int * n)
? {
? int i,j=0;
? /* 从2至999检查在这个范围之内的整数是否符合条件 */
? for(i=2;i1000;i++)
? /* 判
您可能关注的文档
- [计算机软件及应用]Mathematica 8 教程.doc
- [计算机软件及应用]MDI Jade软件使用手册修改.doc
- [计算机软件及应用]MIS07.ppt
- [计算机软件及应用]MediaCloud分布式存储和并行计算通用平台介绍.pdf
- [计算机软件及应用]MIS4ccx.ppt
- [计算机软件及应用]Mongo资料分享_转.ppt
- [计算机软件及应用]MYSQL_C_API详解.pdf
- [计算机软件及应用]N10_第5章1DataBase.pdf
- [计算机软件及应用]N9_第3章5DataBase.pdf
- [计算机软件及应用]OpenGL 简介.ppt
- 2025年中级人民法院临时聘用人员招聘考试笔试试卷(含答案).docx
- 2025年中小学教师资格证考试试题及答案解析.docx
- 2025年中药房管理制度.docx
- 2025年中级人民法院临时聘用人员招聘考试笔试试卷(附答案).docx
- 2025年全国中小学“学宪法、讲宪法”网络活动知识竞赛题库及答案.docx
- 2025年公务员时事政治考试试题库带答案详解(综合题).docx
- 2025年全国中小学“学宪法、讲宪法”网络活动知识竞赛题库(带答案).docx
- 2025年全国普法知识考试题库与参考答案.docx
- 2025年中级人民法院劳动审判辅助人员招聘考试笔试试卷(附答案).docx
- 2025年全国青少年“学宪法、讲宪法”网络活动知识竞赛题库及答案.docx
文档评论(0)