浙江大学C语言期末考试试卷
需积分: 10 67 浏览量
更新于2024-09-11
收藏 91KB DOC 举报
"这份资源是一份来自浙江大学2010-2011学年冬学期的《程序设计基础及实验》课程的期末考试试卷,主要针对C语言进行考核。试卷为闭卷形式,考试时长120分钟,旨在帮助学生巩固和检验C语言的掌握程度。试卷包含单选题部分,涉及C语言的基础语法和概念,例如表达式的求值、运算符的使用、数组的引用以及指针的运用等。"
这篇试卷的部分内容展示了C语言的一些核心知识点:
1. 表达式求值:题目中的 `(4>3>2)` 是一个逻辑表达式,比较结果会返回布尔值,但C语言中没有布尔类型,所以 `1` 和 `0` 分别代表真和假。正确的答案是 `B.1`。
2. C语言运算符:`0.5%2` 涉及到浮点数与整数的模运算,这是不合法的;`3&(0.5+0.5)` 中的 `&` 是按位与运算符,不能用于浮点数;`4.6<<2` 是左移运算,同样不适用于浮点数;`2==(3/2)` 比较的是整数除法的结果,即 `1`。正确答案是 `D.2==(3/2)`。
3. 数组引用:C语言数组下标从0开始,`a[2][3]` 和 `a[0][3]` 都越界了;`a[1>2][!1]` 相当于 `a[0][0]`,是合法的。正确答案是 `A.a[2][!1]`,尽管 `!1` 在这里等同于 `0`,但表达式本身是合法的。
4. 指针和输入:`int*p; scanf("%d",&p);` 错误,因为 `%d` 需要地址,而 `p` 已经是地址了;`int*p; scanf("%d",p);` 也是错误的,因为未初始化指针;`int k, *p=&k; scanf("%d", p);` 正确,指针 `p` 初始化为变量 `k` 的地址,然后通过指针读取输入;`int k, *p; *p=&k; scanf("%d", p);` 错误,因为未初始化指针 `p` 就试图给它赋值。正确答案是 `C.intk,*p=&k; scanf("%d",p);`。
5. 多级指针:`int*p[4];` 声明了一个包含4个指向整数的指针的数组;`int**p;` 是一个指向指针的指针;`int*(p[4]);` 和 `int(*p)[4];` 是等价的,声明了指针 `p` 指向一个含有4个整数的数组。正确答案是 `D.int(*p)[4]` 或 `C.int*(p[4]);`。
6. 数组声明:`int a[4]="...";` 是错误的,因为字符串字面量不能赋值给整型数组,需要使用字符数组 `char a[5]`(包括结束符`\0`)。
这些题目覆盖了C语言的关键概念,如逻辑表达式、运算符优先级、数组和指针操作、输入输出以及多级指针的理解。对于准备C语言考试的学生来说,这些都是必备的知识点。
2010-10-19 上传
2011-02-26 上传
2014-06-12 上传
2013-12-15 上传
2012-09-27 上传
2014-12-25 上传
2014-10-27 上传
2013-03-07 上传
gwungwun
- 粉丝: 0
- 资源: 1
最新资源
- WebRTC:适用于 iOSmacOS 的通用 WebRTC XCFramework
- Feature-Detection-and-Matching
- 尖端生长的植物细胞形态发生的各向异性粘塑性模型matlab代码.zip
- [聊天留言]简单·留言本 v1.1_simplegbook11.rar
- Unity古风场景资源
- 基于深度学习方法的车辆上牌量预测_深度学习_
- LibContainer:容器框架
- YelpCamp:Colt Steele在线Web开发人员Bootcamp的YelpCamp项目
- ruTS:从俄语文本中提取统计数据的库
- phpBB-Auto-Database-Backup:phpBB 3.1的扩展,它将使用phpBB 3.1 Cron自动备份您的数据库
- MyJavaStudy:Java算法实践
- VDatum 空间变化的不确定性matlab代码.zip
- 2022最新版HTML只言片语网站导航模板
- go语言编写的兼容redis协议的kv存储
- 数学建模竞赛及备赛用的源代码.zip
- lyceum:Lyceum是用Go编写的开源电子书管理系统