【计算机类职业资格】初级程序员下午试题-38及答案解析.doc
《【计算机类职业资格】初级程序员下午试题-38及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】初级程序员下午试题-38及答案解析.doc(5页珍藏版)》请在麦多课文档分享上搜索。
1、初级程序员下午试题-38 及答案解析(总分:120.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)1.说明 设学生某次考试的成绩按学号顺序逐行存放于某文件中,文件以单行句点“.”为结束符。下面的流程图读取该文件,统计出全部成绩中的最高分 max和最低分 min。(分数:15.00)_二、B试题二/B(总题数:1,分数:15.00)2.函数 2.1说明 Fibonacci 数列中头两个数均为 1,从第三个数开始,每个数等于前两个数之和。下述程序计算 Fibonacci数列中前 15个数,并以每行 5个数的格式输出。 函数 2.1 #include stdio.h m
2、ain() int i,f,f1=1,f2=1; printf(“%5d%5d“,f1,f2); for(i=3;i=15;i+) f=U (1) /U; printf(“%5d“,f); if(U (2) /U= =0) printf(“/n“); f1=12; U (3) /U; 试题一流程图 (分数:15.00)_三、B试题三/B(总题数:1,分数:15.00)3.说明 链式存储的队列称为链队。根据队列的 FIFO原则,为了操作上的方便,可以使用带头指针front和尾指针 rear的单链表来实现链队。若链队元素的数据类型为 datatype,则链队结构描述如下: typedef stru
3、ct node datatypedata; structnode *next; QNode; /*链队结点的类型*/ typedef struct QNnode *front,*rear; LQueue; /*将头尾指针封装在一起的链队*/ 以下这种链队的几个例子: (分数:15.00)_四、B试题四/B(总题数:1,分数:15.00)4.说明 函数 encode()和 decode()分别通过参数传递实现对字符串的变换和复原,返回值均为处理以后的字符串长度。变换函数 encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串: (1)若已知字符串的当前字符不是数字字符,则复制该字符
4、于新字符串中; (2)若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它复制到新字符串中; (3)若已知字符串的当前字符是一个数字字符,并且还有后继字符,设该数字值为 n,则将其后继字符重复复制 n+1次到新字符串中; (4)以上述一次变换为一组,在不同组之间另插入一个下划线_用于分隔。 例如:encode()函数对字符中26a3t2的变换结果为 666_a_tttt_2。 函数 decode()用于经函数 encode()处理的字符中,即复制不连续相同的单个字符,而将一组连续相同的字符(不超过 10个)变换成一个用于表示重复次数的数字符和一个重复出现的字符,并在复原过程
5、中掠过变换函数为不同组之间添加的一个下划线字符。 注:假定调用变换函数 encode()时的原始字符串中不包含下划线字符。 函数 int encode(char *instr,char *outstr) char *ip, *op,c; int k,n; ip=instr; op=outstr; while ( * ip) if(*ip=0 c=U (1) /U; for (k=0;kn;k+) *op+=c; else *op+=*ip; U(2) /U; ip+; if (opoutstr) U(3) /U; *op=/0; U(4) /U; int decode(char *instr,
6、char *outstr) char *ip,*op,c; int n; ip=instr; op=outstr; while ( *ip) c=*ip; n=0; while( *ip=c n+; if(n1) *op+ + =0+n-1; * op+=c; if(*ip=_) ip+; *op=/0; U (4) /U; (分数:15.00)_五、B试题五/B(总题数:1,分数:15.00)5.说明 某银行新近开通外汇定期存款业务。为方便用户查询不同存款方式下的日利率、计算本利,特开发了日利率查询及本利计算程序,其运行窗口如下图所示。用户只要在界面上选择相应的存款方式(包括外汇币种、存期等
7、),便可单击按钮一查询存款日利率。若输入一定数量的本金。程序还会根据所选择的存期计算并输出本利和。 (分数:15.00)_六、B试题六/B(总题数:1,分数:15.00)6.说明 当用户启动 html浏览器并首次打开下面的 html文档时,Java Applet 小程序在第一个显示面板上显示字符串“HelloWorld“;在第二个显示面板上画一条直线。 Java 代码 import java.awt. *; import javax.swing. *; public class HelloWorldApplet extends JApplet pubhc void U(1) /U U(2) /
8、U str=“HetloWorld“; JLabel label = new JLabel(str); this. getContentPane().add(label); import java.applet.Applet; import java.awt.Graphics; public class AppletPaint extends U(3) /U public void paint(U (4) /U) g.drawLine(0,0,300,200); HTML文档 html head title HTML Test Page /title /head body applet cod
9、e=“U (5) /U“ width=“300“ height=“100“ /applet applet code=“ AppletPaint.class“ width=“300“ height=“100“ /applet /body /html(分数:15.00)_七、B试题七/B(总题数:1,分数:15.00)7.说明 下图是一个简易文本编辑器程序的运行界面: (分数:15.00)_八、B试题八/B(总题数:1,分数:15.00)8.说明 本程序中预设了若干个用户名和口令。用户输入正确的用户名后,可以查找对应的口令,一旦输入结束标记“end”,程序结束。 C+程序 #include ios
10、tream. h #include string. h class User protected: char user10; char pass7; public: User(char ,char); U(1) /Ureturn user; U(2) /Ureturn pass; ; User:User(char u,char p) strcpy(user,u); strcpy(pass,p); void main() User ua=User(“Li“,“123456“),User(“wang“,“654321“),User(“Song“,“666666“) char name10; whi
11、le(1) cout “输入用户名:“; cin name; if(U (3) /U= =0) break; for(int i=0;i3;i+ +) if(strcmp(name,uai.getuser() = =0) cout “密码:“ uai.getpass() endl; U(4) /U; if(U (5) /U)cout “该用户不存在!“ endl; (分数:15.00)_初级程序员下午试题-38 答案解析(总分:120.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)1.说明 设学生某次考试的成绩按学号顺序逐行存放于某文件中,文件以单行句点“.”为结
12、束符。下面的流程图读取该文件,统计出全部成绩中的最高分 max和最低分 min。(分数:15.00)_正确答案:()解析:(1) maxa (2) mina (3) a=“.“ (4) amax 或 amax 或 maxa 或 maxa (5) amin 或amin 或 mina 或 mina 解析 本题用到的三个变量及其作用分别为:a,存放读入的一行数据;max存放最高分;min 存放最低分。算法首先读入文件的第一行数据 a,若 a为文件结束符“.”,则算法提前结束;否则为 max和 min赋初值 a,循环读入文件其余部分,直至文件末尾。循环过程中,当某行数据 a大于 max时,更新 max
13、的值;当某行数据 a小于 min时,更新 min的值。二、B试题二/B(总题数:1,分数:15.00)2.函数 2.1说明 Fibonacci 数列中头两个数均为 1,从第三个数开始,每个数等于前两个数之和。下述程序计算 Fibonacci数列中前 15个数,并以每行 5个数的格式输出。 函数 2.1 #include stdio.h main() int i,f,f1=1,f2=1; printf(“%5d%5d“,f1,f2); for(i=3;i=15;i+) f=U (1) /U; printf(“%5d“,f); if(U (2) /U= =0) printf(“/n“); f1=1
14、2; U (3) /U; 试题一流程图 (分数:15.00)_正确答案:()解析:(1) f1+f2 (2) i%5 (3) f2=f (4) str1i+=str2j (5) str1i=/0 解析 (1)根据Fibonacci数列的性质,f 等于前两数 f1与 f2之和; (2)每输出 5个数以后应当换行,此条件即:i 除以 5余 0; (3)计算一个数值前,f1 与 f2都应更新,其中 f2应为刚计算出的 f; (4)此循环的功能是将str2的字符添加到 str1末尾; (5)函数结束前应在 str1末尾添加结束符。三、B试题三/B(总题数:1,分数:15.00)3.说明 链式存储的队列
15、称为链队。根据队列的 FIFO原则,为了操作上的方便,可以使用带头指针front和尾指针 rear的单链表来实现链队。若链队元素的数据类型为 datatype,则链队结构描述如下: typedef struct node datatypedata; structnode *next; QNode; /*链队结点的类型*/ typedef struct QNnode *front,*rear; LQueue; /*将头尾指针封装在一起的链队*/ 以下这种链队的几个例子: (分数:15.00)_正确答案:()解析:(1) q-front=q-rear (2) = = (3)q- rear-next
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 初级 程序员 下午 试题 38 答案 解析 DOC
