指针与结构体习题解析:选择与实例
需积分: 0 31 浏览量
更新于2024-08-05
收藏 83KB PDF 举报
在本篇关于《第6章指针与结构体》的C#编程习题中,我们将探讨一系列关于指针和结构体的概念。首先,选择题部分涉及指针的正确用法:
1. 不正确的定义是(C)。在C语言中,指针定义应先声明指针变量再初始化,选项C中先定义了整型变量`i`再将其地址赋给指针`p`,是不正确的。
2. 非法的赋值语句是(D)。`p=n`试图将一个整型变量的地址赋给另一个整型变量,这在C语言中是不允许的,因为`p`是存储整型地址的指针,而`n`是一个变量。
3. 正确的指针定义和初始化是(B)。`int *p=a;`将指针`p`指向数组`a`的首元素,这是对数组元素间接访问的常见方式。
4. 对数组元素的正确引用是(C)。使用指针加法`(p+2)`表示数组元素的偏移,然后使用解引用操作`*(p+2)`来访问该元素。
5. 数值为9的表达式是(B)。在给定的数组`inta[]`中,元素索引从0开始,所以数值为9的元素对应于索引8,因此`(P+8)`指向该位置,即`*(P+8)`。
6. 程序输出结果是(C)。在`fun`函数中,`*a`和`*b`的值会发生交换,所以原`x=2`和`y=3`调用后变为`x=3`和`y=2`,输出为`3,2`。
7. 结构体相关知识点中,(D)是不正确的。`stu`是用户自定义的结构体类型名,但不是关键字。
8. 错误的叙述是(D)。结构变量与基本类型的变量间不能直接赋值,它们必须通过成员名间接进行。
9. 对结构体成员`age`的非法引用是(B)。在C语言中,`student.age`是语法错误,应该是`stu1.age`或`(*p).age`来访问结构体变量的成员。
10. 最后,题目要求定义一个结构体(联合)数组,但是给出的信息不完整,无法提供完整的代码示例。通常会定义一个`struct`或`union`类型,然后分配数组来存储结构体或联合类型的实例。
总结这些习题,本章的核心内容包括指针的声明、赋值、数组操作以及结构体的基础概念,如成员访问、类型定义和错误使用。熟练掌握这些概念对于理解C#中的数据组织和内存管理至关重要。
2012-10-09 上传
2014-06-29 上传
2023-06-09 上传
2023-06-11 上传
2023-05-23 上传
2023-06-11 上传
2023-06-25 上传
2023-06-20 上传
2023-07-08 上传
生活教会我们
- 粉丝: 33
- 资源: 315
最新资源
- 彩虹rain bow point鼠标指针压缩包使用指南
- C#开发的C++作业自动批改系统
- Java实战项目:城市公交查询系统及部署教程
- 深入掌握Spring Boot基础技巧与实践
- 基于SSM+Mysql的校园通讯录信息管理系统毕业设计源码
- 精选简历模板分享:简约大气,适用于应届生与在校生
- 个性化Windows桌面:自制图标大全指南
- 51单片机超声波测距项目源码解析
- 掌握SpringBoot实战:深度学习笔记解析
- 掌握Java基础语法的关键知识点
- SSM+mysql邮件管理系统毕业设计源码免费下载
- wkhtmltox下载困难?找到正确的安装包攻略
- Python全栈开发项目资源包 - 功能复刻与开发支持
- 即时消息分发系统架构设计:以tio为基础
- 基于SSM框架和MySQL的在线书城项目源码
- 认知OFDM技术在802.11标准中的项目实践