中山大学软件学院2011程序设计期末试题:C语言选择题
需积分: 0 113 浏览量
更新于2024-08-05
收藏 403KB PDF 举报
"中山大学软件学院2011级软件工程专业《SE-122程序设计I》期末试题(A卷),包含选择题,涉及C语言的变量命名规则、指针、数组、字符串、表达式及输入输出操作。"
这篇资料是关于C语言程序设计的一份考试试卷,主要测试学生对C语言基础知识的掌握程度。以下是根据题目内容提炼出的相关知识点:
1. **变量命名规则**:
- 在C语言中,变量名不能以数字开头,所以选项(C)2F是无效的变量名。有效的变量名可以是字母、数字或下划线的组合,并且首字符不能是数字。因此,(A)M.Jordan由于包含了非法字符".",也是无效的。而(B)char是一个保留字,不能用作变量名。正确的变量名示例是(D)_b2c。
2. **指针与数组**:
- 题目中的`inta[3]={3,2,5},*p=a,b=4;`定义了一个整型数组和一个指向数组首元素的指针`p`,以及一个整型变量`b`。`printf`语句涉及了指针运算、取模运算、自增运算以及条件运算符。在C语言中,指针可以用作表达式的部分,如`(*a+b)`,这会先解引用`a`,然后将结果与`b`相加。
3. **字符串和字符数组**:
- `char *s="Programming"`定义了一个指向字符串常量的指针`s`。字符串在C语言中是字符数组,以空字符`\0`结束。选项(A)、(B)、(C)描述的是关于`s`的正确性质,而(D)错误地认为`s`存储了一个字符,实际上它存储的是字符串的首地址。
4. **指针和输入**:
- 当需要通过指针读取变量的值时,应使用`&`操作符获取变量的地址。因此,正确读取`a`的值的方法是(B) `scanf("%d", a);`。选项(A)是将地址传递给`scanf`,选项(C)错误地对指针使用了`&`,选项(D)尝试解引用指针并传递给`scanf`,这是错误的,因为`scanf`需要地址作为参数。
5. **指针运算和表达式求值**:
- 题目没有给出完整的表达式,但`*(*p+1)+3`涉及到指针解引用、自增运算以及加法。在C语言中,`*p+1`会先解引用`p`,然后加上1,得到下一个元素的地址,再解引用得到该位置的值。这个值与3相加,最终结果取决于原始指针`p`的初始位置。
以上知识点涵盖了C语言的基础,包括变量命名、指针、数组、字符串、输入输出和表达式求值。这些知识对于理解和编写C程序至关重要。
2022-08-03 上传
2011-01-12 上传
2022-08-03 上传
2013-04-21 上传
2009-05-12 上传
2011-11-06 上传
点击了解资源详情
点击了解资源详情
SLHJ-Translator
- 粉丝: 34
- 资源: 297
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析