IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言习题小练 -> 正文阅读

[C++知识库]C语言习题小练

先写个小结

1.多组输入的方法
在这里插入图片描述

2.处理后面字符换行符
在这里插入图片描述
3.
在这里插入图片描述
4.计算数组元素个数:sizeof(数组)/sizeof(数组[0])
5.p是一指向结构体类型的指针变量,其初始值是让其指向结构体变量a,要通过指针变量p来引用结构体变量的成员next,通常可使用两种形式:p->next 或(*p).next,而p.next是非法的引用。

习题练习

在这里插入图片描述
答案:24

在这里插入图片描述在这里插入图片描述
尴尬了 我还以为是函数

在这里插入图片描述

在这里插入图片描述
答案:错误

在这里插入图片描述
在这里插入图片描述答案:单向值传递
本题考查函数调用时的数据流向问题。简单变量只能实现单向的值传递。在调用函数时,通常在主调函数和被调函数之间有数据传递关系。在定义函数时,函数名后面括号中的变量名称为“形参”;在调用函数时,函数名后面括号中的变量名称为“实参”。有关实参和形参的说明如下: (1)形参在函数未被调用时,不占用存储单元,只有在发生函数调用时形参才被分配内存空间,函数调用结束后,释放形参所占的内存空间。 (2)在被定义的函数中,必须指定形参的类型。 (3)实参可以是常量、变量或表达式。 (4)实参与形参的类型应一致。 (5)如果形参是简单变量,实参对形参的数据传递是按值传递,即单向传递,只能由实参传给形参,不能由形参传回来给实参。 如果形参是地址变量,实参对形参的数据传递是按地址传递,可以实现双向传递,既能由实参传给形参,又能由形参传回来给实参

在这里插入图片描述
答案:8
在这里插入图片描述
在这里插入图片描述答案:515

union为共享体,共享存储空间,在给i 分配存储空间后,并不会为char再开辟新的存储空间。此时union里的存储情况为 0000 0000 0000 0000 0000 0000 0000 0000,然后再从低8位开始分别存储3和2,低16位变为0000 0010 0000 0011(高16位全为0),再把它当做i来输出,自然就是515

下面程序运行后,输出的结果是()
#include“studio.h”
void main(void)
{union{char c: int i:}u;
u.c=‘A’; u.i=0×0143;
printf("%d,%d",u.c,u.i);
}

答案:67,323
在这里插入图片描述
在这里插入图片描述
答案:装载阶段、执行阶段

在这里插入图片描述在这里插入图片描述

答案:C
考察的是实参调用和形参声明的参数匹配。根据题干声明定义的f1 (int x,int y,int*p)函数中参数类型,调用所需要的实参类型也应该对应匹配。B、D语法错误。 A中的实参为整型变量和形参中的声明指针不匹配。

在这里插入图片描述答案:错误

宏定义不做语法检查。
预处理是在编译之前的处理,而编译的工作之一便是语法检查,所以预处理不做语法检查。
题中的S(a,b)是没问题的,有问题的调用的地方。
宏定义在代码中只是简单的替换,调用时简单的将S(a,b)替换为“t=a;a=b;b=t“,编译时会显示t未定义。
但是若是只是有宏定义,但代码中未使用S(a,b)的话,是不会出现t未定义的情况的,因为在代码中压根就没有替换来的”t=a;a=b;b=t“。

在这里插入图片描述答案:
a构造 b构造 b析构 a析构
按变量声明顺序构造对象,然后入栈。按相反顺序出栈,析构对象。

在这里插入图片描述答案:12
在这里插入图片描述

在这里插入图片描述
答案:4

32位计算机指针大小为4字节,64位计算机指针大小是8字节

在这里插入图片描述
答案:36

这就是一个递归题目 最终答案是 1+ 8 + 27 = 36

在这里插入图片描述答案:D
在这里插入图片描述

在这里插入图片描述
答案:A

看定义记得注意优先级,int * pa[5],首先[]优先级比高,所以pa与[]先结合,pa[5]表明pa是一个数组,大小是5,既然知道pa是数组了,接下来就是确认数组元素了,int表明数组元素是指针;
int(* p)[5],首先()优先级比[]高,所以pa先与*结合,*pa表明pa是一个指针,既然知道pa是指针,接下来确认指针指向的数据类型,int [5]表明指针指向大小为5的int型数组。

在这里插入图片描述
答案:7
在这里插入图片描述
在这里插入图片描述答案:0
这道题最主要考察了变量自动初始化相关知识点:
变量自动初始化分为内置类型和类类型之分:
1.内置类型的自动初始化:程序中有一个数据区,用来存放已初始化全局变量,静态变量和常量,这部分增加了目标文件的大小;还有一个未初始化数据区(BSS),用来存放未初始化全局变量,BSS的数据在程序开始执行之前被初始化为0或NULL,实际上BSS段数据在目标文件中只占一个符号位,编译器并没有给变量分配空间,“初始化为0”是指链接阶段才申请空间,并初始化。局部 非静态变量未显示初始化时是一个随机值。
2.类类型的自动初始化:没什么特别的,无论是全局的还是局部的,都会调用默认构造函数进行初始化,有一点需要注意的是,当对象为全局作用域或者静态局部对象时,类的内置成员变量被初始化为0,而局部作用域时,内置成员变量不被自动初始化。

在这里插入图片描述答案:4294967285 -128
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-10-24 14:45:41  更:2021-10-24 14:47:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:02:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码