[关闭]
@caelumtian 2017-08-21T13:24:36.000000Z 字数 3421 阅读 752

C 语言与web 2013年A卷

胡杨考研试题

C语言部分

单选题

  1. C p是指针
  2. C
  3. A
  4. B
  5. D
  6. D
  7. A 详解见附录1

程序阅读题

1 ) GAE8
2)

  1. 4;3;13;12;2;1;11;11;1;1;
  2. 2, 0

3)

  1. hijklmno
  2. fghijk
  3. def
  4. abcdef

4)2, 6, 10, 20

程序填空题

1. 将偶数下标元素从小到大排序

  1. j = j + 2;
  2. a[i] > a[j]
  3. puts

杨辉三角

  1. a[i][0]
  2. a[i][i]
  3. a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
  4. j <= i

代码已整理在附录2

编写程序题

1. 将D根目录下data1.txt文件中回车,大写改小写,写入data2.txt中

  1. #include <stdio.h>
  2. int main() {
  3. char c;
  4. FILE *fin, *fout;
  5. fin = fopen("D:\\data1.txt", "r");
  6. fout = fopen("D:\\data2.txt", "w");
  7. // 重复读入字符,直到到达文件尾
  8. while ((c = fgetc(fin)) != EOF) {
  9. // 如果是回车,不输出直接跳过
  10. if (c == '\r')
  11. continue;
  12. // 如果是大写字母,转换成小写
  13. if (c >= 'A' && c <= 'Z')
  14. c += 'a' - 'A';
  15. // 输出
  16. fputc(c, fout);
  17. }
  18. fclose(fin);
  19. fclose(fout);
  20. return 0;
  21. }

2. 输出200到50000之间能被3整除,且个位数为6,十位数不为7的所有整数以及他们的和

  1. #include <stdio.h>
  2. int main() {
  3. int a, b, j = 200;
  4. int sum = 0;
  5. for(; j <= 50000; j++) {
  6. //个位数
  7. a = j % 10;
  8. //十位数
  9. b = ((j - a) / 10) % 10;
  10. if(j % 3 == 0 && a == 6 && b != 7) {
  11. sum += j;
  12. printf("%d ", j);
  13. }
  14. }
  15. printf("\n%d", sum);
  16. }

web 技术部分

单选题

  1. B
  2. B
  3. A
  4. B OSI 七层模型 见附录3
  5. D
  6. C
  7. C
  8. D XHTML要求标签必须闭合
  9. A
  10. A 你还应该记住DTD与schema的区别,后面卷纸有详细解释

填空题

  1. background
  2. width;height
  3. href
  4. <tr></tr>
  5. maxlength
  6. alert;prompt;confirm
  7. <option></option>
  8. 序言;文档元素
  9. submit;reset;button
  10. &lt;
  11. 协议类型;主机名;路径及文件名

简答题

红黄蓝白十六进制标标记

  1. 红:#ff0000
  2. 蓝:#0000ff
  3. 白:#ffffff
  4. 黄:#ffff00 (黄 = 红 + 绿)

id与name的区别

html的name和id可以类比身份证的姓名和身份证编号
编号id具有唯一性,一个id只出现一次。
名称name具备可重复性,可以多次出现。
在css中两者都具备识别html元素的作用,name用点号属性选择器表示,id用井号#
id用于唯一性元素样式定义。
在表单当中,由于有些控件具备多元素特性,例如radio checkbox等,使用id不便于表单数据的提交,此外浏览器会根据name来设定发送到服务器的request,因此在表单当中,用name来提交数据。

XML 应该符合哪儿些规则

  1. 文档的第一行必须是XML文档说明;
  2. 文档必须包含至少一个元素;
  3. 每个开始标记必须和结束标记配套使用;
  4. 文档中必须包含惟一的打开和关闭标记,文档中的所有其他标记都必须包含在这两个文档中;⑤标记之间不能重叠忙活着说是不能交叉定义。

编程题

图片的变换

html补全部分

  1. <img src="1.jpg" width="240" height="120" onMouseover="changeImg(true)" onMouseout="changeImg(false)"/>

js 代码部分

  1. function changeImg(flag) {
  2. var ele = document.getElementsByTagName("img")[0];
  3. if(flag) {
  4. ele.src = "2.jpg";
  5. }else {
  6. ele.src="1.jpg";
  7. }
  8. }

js CountDown倒计时程序

html 部分

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>CountDown</title>
  6. </head>
  7. <body>
  8. <p id="wrap">****年还剩***天</p>
  9. </body>
  10. </html>

js 部分

  1. function countDown() {
  2. var date = new Date();
  3. var year = date.getFullYear();
  4. var dayArr = (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0 ?
  5. [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] : [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  6. var daysSum = 0;
  7. for(var i = 11; i >= date.getMonth(); i--) {
  8. daysSum += dayArr[i];
  9. }
  10. //+1是因为一月一号才是新的一年
  11. daysSum = daysSum - date.getDate() + 1;
  12. document.getElementById("wrap").textContent = year + "年还剩" + daysSum + "天";
  13. return daysSum;
  14. }
  15. countDown();

附录

1. 文件操作描述符详解

模式字符串 含义
"r" 打开一个文本文件,可以读取文件
"w" 打开一个文本文件,可以写入文件,现将文件的长度截为0.如果该文件不存在则先创建
"a" 打开一个文本文件,可以写入文件,向已有文件的尾部追加内容,如果该文件不尊在则先创建
"r+" 打开一个文本文件,可以进行更新,也可以读取和写入文件
"w+" 打开一个文本文件,可以进行更新(读取和写入),如果该文件存在则首先将其长度截为0
"a+" 打开一个文本文件,可以进行更新(读取和写入),向已有文件的尾部追加内容,如果该文件不存在则先创建;可以读取整个文件,但写入时只能追加内容
"rb","wb","ab"..."ab+" 与前面的模式相似,只是使用二进制模式而非文本模式打开文件

r+ 通常用来修改文件
w+ 是新创建一个文件来写入如果已经存在同名文件,则先销毁原文件
a+ 只能在文件末尾追加内容,不能修改已经存在的内容

2. 杨辉三角代码

建议背一下,考了两次

  1. #include <stdio.h>
  2. #define N 11
  3. int main() {
  4. int i;
  5. int j;
  6. int a[N][N];
  7. for (i = 0; i < N; i++) {
  8. a[i][0] = 1;
  9. a[i][i] = 1;
  10. }
  11. for (i = 1; i < N; i++) {
  12. for (j = 1; j < i; j++)
  13. a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
  14. }
  15. for (i = 0; i < N; i++) {
  16. for (j = 0; j <= i; j++)
  17. printf("%d ", a[i][j]);
  18. printf("\n");
  19. }
  20. }

3. OSI 7层网络模型

具体7层 数据格式 功能与连接方式 常见协议/设备
物理层Physical 传输比特(bit)流 建立、维护和取消物理连接 光纤、同轴电缆、双绞线、网卡、中继器
数据链路层 Data Link 将比特信息封装成数据帧Frame 在物理层上建立、撤销、标识逻辑链接和链路复用 以及差错校验等功能。通过使用接收系统的硬件地址或物理地址来寻址 设备:网桥、交换机/协议:SDLC、HDLC、PPP、STP、帧中继
网络层 Network 分割和重新组合数据包Packet 基于网络层地址(IP地址)进行不同网络系统间的路径选择 设备:路由器/协议:IP、IPX、OSPF等
传输层 Transport 数据组织成数据段Segment 数据组织成数据段Segment 设备:终端设备/协议:TCP、UDP、SPX
会话层 Session 数据Data 会话层连接到传输层的映射;会话连接的流量控制;数据传输;会话连接恢复与释放;会话连接管理、差错控制 设备:终端设备
会话层 Session 数据Data 会话层连接到传输层的映射;会话连接的流量控制;数据传输;会话连接恢复与释放;会话连接管理、差错控制 设备:终端设备
表示层 Presentation 数据Data 数据表示、数据安全、数据压缩 设备:终端设备
应用层 Application 数据Data 网络服务与使用者应用程序间的一个接口 设备:终端设备/协议:Telnet、FTP、HTTP、SNMP、DNS
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注