C语言入门必做踩坑题《篇六》

简介: C语言入门必做踩坑题《篇六》

第1题

🎗有如下代码

char acHello[] = "hello\0world";
char acNew[15] = {0};
strcpy(acNew,acHello);

strlen(acNew) =_____________, sizeof(acHello) = ______________

📝 分析:

1️⃣ strlen:计算字符串的长度,遇 \0 停止,且不包括 \0

2️⃣ sizeof:计算变量所占的内存大小,单位 (字节),包括 \0

3️⃣ strcpy:拷贝字符串,遇到 \0 就停止拷贝

所以 strlen(acNew) = 5;sizeof(acHello) = 12

第2题

🎗下列程序执行后, n 的值等于____

char a[20];
char *p1 = (char *)a;
char *p2 = (char*)(a+5);
int n = p2-p1;

A. 4

B. 5

C. 10

D. 20

📝 分析:

此题考查指针的运算

在同一块空间内一个指针 - 另一个指针得到的是两个指针之间的元素个数

⚠ 注意

1️⃣ 指针的相减运算只能在同一块空间

2️⃣ 两指针不能相加、乘、除,这是标准未定义的

所以选择 B

第3题

🎗下列程序运行后的输出结果是____

#define F(X,Y) ((X)+(Y))
int main()
{
  int a = 3,b = 4;
  printf("%d\n",F(a++, b++));
}

A. 7

B. 8

C. 9

D. 10

📝 分析:

因为 a 和 b 都是后置++,所以 x = 3, y = 4

所以选择 A

第4题

🎗执行 x = 5 > 1 + 2 && 2 || 2 * 4 < 4 - !0 后, x 的值为____

A. -1

B. 0

C. 1

D. 5

📝 分析:

所以选择 C

第5题

🎗执行以下代码后,a = __ ;b = __ ;c = __ ;d = __ ;

int i = 0, a = 0, b = 2, c = 3, d = 4;
i = a++ && ++b && d++;
printf("a = %d\nb = %d\nc = %d\nd = %d\n", a, b, c, d);

📝 分析:

⚠ 注意

1️⃣ &&,同真为真,其余为假

2️⃣ ||,同假为假,其余为真

3️⃣ 表达式中:对于 && , 只要有一个为假,其余都为假,且后面部分表达式不参与计算;对于 ||,只要有一个为真,其余都为真,且后面部分表达式不参与计算

所以 a = 1 ;b = 2 ;c = 3 ;d = 4 ;



相关文章
|
安全 编译器 C语言
C++入门1——从C语言到C++的过渡
C++入门1——从C语言到C++的过渡
382 2
|
存储 NoSQL 编译器
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !
指针是一个变量,它存储另一个变量的内存地址。换句话说,指针“指向”存储在内存中的某个数据。
623 7
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !
|
存储 编译器 C语言
【C语言程序设计——入门】C语言入门与基础语法(头歌实践教学平台习题)【合集】
本文档介绍了C语言环境配置和编程任务,主要内容包括: - **C语言环境配置**:详细讲解了在Windows系统上配置C语言开发环境的步骤。 - **第1关:程序改错**:包含任务描述、相关知识(如头文件引用、基本语法规则)、编程要求、测试说明及通关代码。 - **第2关:scanf函数**:涉及`scanf`和`printf`函数的格式与使用方法,提供编程要求、测试说明及通关代码。 文档结构清晰,涵盖从环境搭建到具体编程任务的完整流程,适合初学者学习和实践。
589 4
|
C语言
【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
这份文档详细介绍了编程任务的多个关卡,涵盖C语言的基础知识和应用。主要内容包括: 1. **目录**:列出所有关卡,如`print函数操作`、`转义字符使用`、`数的向上取整`等。 2. **各关卡的任务描述**:明确每关的具体编程任务,例如使用`printf`函数输出特定字符串、实现向上取整功能等。 3. **相关知识**:提供完成任务所需的背景知识,如格式化输出、算术运算符、关系运算符等。 4. **编程要求**:给出具体的代码编写提示。 5. **测试说明**:包含预期输入输出,帮助验证程序正确性。 6. 文档通过逐步引导学习者掌握C语言的基本语法和常用函数,适合初学者练习编程技能。
485 1
C语言------程设设计入门
这篇文章是C语言程序设计的入门教程,涵盖了C程序的实现过程、VC集成开发环境的使用、基本数据类型的使用、格式控制字符的作用,以及通过示例代码演示了如何使用printf()函数输出不同类型的数据。
C语言------程设设计入门
|
存储 Java 编译器
初识C语言1——C语言入门介绍
初识C语言1——C语言入门介绍
324 1
|
存储 Java C语言
【C语言入门】初识C语言:掌握编程的基石
【C语言入门】初识C语言:掌握编程的基石
【C语言入门】初识C语言:掌握编程的基石
|
NoSQL Java 编译器
C语言从入门到精通该怎样学?
持续学习与实践:编程是一门需要不断学习和实践的技能,要保持对新技术和新知识的敏感性,并持续进行编程实践。
560 1
|
C语言
回溯入门题,数据所有排列方式(c语言)
回溯入门题,数据所有排列方式(c语言)
260 0
|
编译器 C语言 C++
C++从遗忘到入门问题之C++持从C语言的过渡问题如何解决
C++从遗忘到入门问题之C++持从C语言的过渡问题如何解决
334 0