c语言面试常见的tips

简介: 笔者在C语言面试中,经常会遇到的问题记录了下来

++意味着加一,不是加本身。单目运算符。

判断一段字符串的单词数,设计一个数,当本身不是空格,下一个不是空格和结束符。

one world

二叉树中度为0的结点总是比度为2的结点多一。

常用的黑盒测试方法和技术有:等价类划分法、边界值分析法、错误推测法和因果图。

白盒测试方法有:逻辑覆盖测试(语句覆盖、路径覆盖、判断覆盖、条件覆盖)、基本路径测试。

合法的标识符必须是:由字母下划线数字组成,且开头为字母或下划线。

当程序对文件操作完成时,必须调用fclose函数文件。

用do—while时,当while中的值为0时,结束。

NULL的代码值为0;

\单线杠

双斜杠、\n都是转义字符,都是字符变量。

算法时间复杂度的度量方法:执行算法所需要的基本运算次数。

continue语句之能用在循环结构之中,其作用时结束本次循环,即不再执行循环体中cnontinue之后的语句,而是立即转入对循环条件的判断与执行。

m—>n:将n的值赋给m。

sqrt计算平方根

static能记住值

'0'的ASCII的值为48。

时间复杂度与计算工具无关。

需求分析阶段的工作分为4个方面:需求获取、需求分析、撰写需求规格说明书和需求评审。

软件需求分析阶段的主要任务是 确定软件系统的功能。

全局变量是从定义的位置到源文件的结束。并不是函数外部定义的变量。

函数声明分为局部声明和全局声明。

叶子结点==度为0的结点。比度为2的多一

https://www.zhihu.com/question/287005214:如何快速学会二进制。

用来存放指针的变量,叫做指针变量。

一个非空的数据结构得满足以下两个条件:有且只有一个根节点,每一个节点最多有一个前件,也有一个后件。也称为线性表。可以采用线性存储和链式存储。其中线性存储连续而链式存储不连续。

在数据库系统中,数据模型包括概念模型,逻辑模型和物理模型。

数组下标不能为负。

标识符不能用dollar符,美元符。

树中的节点数=树中所有节点的度之和+1。

数据流图(DFD)的作用是:支持软件系统功能建模。

C语言被称为“高级语言”的原因是用接近人们习惯的自然语言和数学语言作为表达形式,使人们的学习和操作感到方便。

四舍五入算法:如果四舍五入要求精确到小数点后面的第n位,则需要对第n+1位进行运算,方法是将该小数乘以10的n+1次方后加5,然后再除以10;再缩小为原来的位数。

1.2数据的逻辑结构:

​ 逻辑结构指的是数据中数据元素之间的相互关系。

​ (1)线性结构:线性的数据元素结构关系是一对一的,并且是一种先后的次序,就像a-b-c-d-e-f-g.......被一根线穿起来。

1.3数据的存储(物理)结构:

​ (1)顺序存储结构:是把数据元素存放在一组存储地址连续的存储单元里,其数据元素之间的逻辑关系和物理关系是一致的。

​ (2)链式存储结果:是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的,数据元素的存储关系不能反映其逻辑关系,因此需要借助指针来表示数据元素之间的逻辑关系。

当front=rear时队列为空要么为满。

软件工程的三要素:方法、工具、过程。

程序流程图是详细设计阶段的表达工具。

int类型的字节数为4,double类型的字节数为8,char类型的字节数为1.

a&b:

&为位与运算,先将a与b转化为二进制,然后对齐排列,同一纵列都为1,结果为1,否则为0;

a|b:

|为逻辑运算符,先将a与b转化为二进制,然后对齐排列,同一纵列中有1,则结果为1,只有两个都为0,结果为0。

关于冯.若一曼计算机结构描述正确的是:存储程序控制的计算机结构。

对象的主要特征不包括对象的可移植性。

DB包括DBS和DBMS.

关系模型属于逻辑模型。

使用三种的基本结构可以实现任何算法。

数组名是一个地址常量,而字符指针变量是一个变量。

转置算法:主对角线元素列标和行标相等,次对角线指的是行下标和列下标之和为N-1;

下标算法:只要下标是0或N-1就是周边元素。

对数据进行压缩存储会降低算法的空间复杂度。

树的总的结点树为度为3的结点数+度为2的结点数+度为1的结点数+度为0的结点数。

树的总的结点为树中所有结点的度数之和再加1。

在数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(文件系统阶段和数据库阶段)。

pow(n,x) n的x次方。

顺序程序不具有(并发性)

不可以给指针变量赋一个整数作为地址值。

不能在定义结构体的同时,又用结构体类型名定义变量。

scanf(“%s”,s)表示输入一个字符串,遇到空格会结束输入。

在C语言中,只有在使用时才占用内存单元的变量,其存储类型为 auto和register。

strlen是函数,sizeof是运算符。

strlen测量的是字符的实际长度,以'\0'结束(不包含'\0')。

sizeof测量的是字符的分配大小,则遇到'\0'结束。也就是strlen测量的长度加1。

getchar函数用于从终端读入字符。

不能将一个整数直接赋给指针变量作为地址。

在关系数据库中,用来表示实体间联系的是(二维表)。

软件测试实施步骤是单元测试、集成测试、确认测试和系统测试。

文件指针是程序中用FILE定义的指针变量。

位运算的对象只能是字符型或整形数据。

E-R图中用来表示实体的图形是矩形。

在关系表中,属性值必须是另一个表的有效值和空值,这样的属性是(外键)。

每个后缀为.c的C语言源程序都可以单独编译。

在循环队列中,队头指针和队尾指针的动态变化决定队列的长度。

顺序结构不包括并发性。

对象的特征不包括复用。

程序可以作为算法的一种描述方法。

数据模型包括数据结构、数据操作和数据约束。

不能作为软件需求分析工具的是 PAD图。

对于有序表进行对分查找,则要求有序表只能顺序存储。

使用三种基本结构可以实现任何复杂算法。

数据只能从实参单向传递给形参。

所有类型的指针变量所占内存大小是一样的。

文件指针是指针类型的变量。

在最坏情况下,希尔排序的时间复杂度比直接插入排序的时间复杂度小。

若循环队列的存储空间为(1,m),在循坏队列运转起来后,如果front<rear,则队列中的元素个数为rear-front;如果front>rear,则队列中的元素个数为rear-front+m。

黑盒测试技术依据的是(软件功能的描述)

实体—联系模型是概念模型。

计算机能直接执行的程序是(可执行程序)。

I/O方式中使计算机系统并行工作程度最高的是(通道)。

字符串分别转换成面值相同的整数减去'0';

矩阵转置算法:即将右上角数组元素和左下角数组元素对换。

控制右上半三角的方法是在内层循环中循环变量j从i+1或j开始。

for(i=0;i<3;i++)

{

for(j=i+1;j<3;j++)

{t=arrayi;

arrayi=arrayj;

arrayj=t;

}

}

质数又称素数,一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。

判断一个数是否是素数的算法:

if(j=2;j<i;j++)

if(i%j==0) break;

属于软件概要设计阶段任务的是:概要设计文档评审。

在使用格式符"%s"进行字符串的输入时,空格和回车(Enter)会被读入,并且函数scanf以它们作为分隔符停止一个字符串的输入。

通过强制类型转换可以将一种类型的指针变量赋给另一种类型的指针变量。

次对角线元素是指:行下标和列小标之和为N-1的元素。

目录
相关文章
|
6月前
|
C语言
C语言操作符逻辑与,逻辑或面试真题(2)
C语言操作符逻辑与,逻辑或面试真题(2)
|
1月前
|
网络协议 编译器 Linux
【C语言】结构体内存对齐:热门面试话题
【C语言】结构体内存对齐:热门面试话题
|
5月前
|
存储 安全 编译器
C语言面试题1-10
指针声明后立即初始化。 内存释放后将指针置为NULL。 避免越界访问。 10. 一个指针变量占几个字节? 一个指针变量的大小与系统和编译器相关。在32位系统中,指针变量占4个字节;在64位系统中,指针变量占8个字节。 通过深入了解以上问题,能够更好地掌握C语言内存管理的核心概念,提高编写高效、安全代码的能力。
55 1
|
1月前
|
Serverless 编译器 C语言
【C语言】指针篇- 深度解析Sizeof和Strlen:热门面试题探究(5/5)
【C语言】指针篇- 深度解析Sizeof和Strlen:热门面试题探究(5/5)
|
3月前
|
C语言
C语言操作符(补充+面试)
C语言操作符(补充+面试)
45 6
|
3月前
|
算法 C语言
【面试题】【C语言】寻找两个正序数组的中位数
【面试题】【C语言】寻找两个正序数组的中位数
30 0
|
5月前
|
存储 安全 编译器
C语言面试题11至20题
在C语言中,可以使用以下方式实现循环: for循环:用于确定次数的循环。 for (int i = 0; i < 10; i++) { // 循环体 } while循环:用于条件控制的循环。 while (condition) { // 循环体 } do-while循环:至少执行一次的条件循环。 do { // 循环体 } while (condition); 通过深入理解这些面试题,可以更好地准备编程面试,展示对编程原理和技术细节的深刻掌握。
49 3
|
5月前
|
存储 缓存 C语言
C语言面试题30至39题
. 用变量a给出下面的定义 由于题目未明确定义,这里给出几个常见定义: 整数变量:int a; 字符变量:char a; 浮点变量:float a; 双精度浮点变量:double a; 指针变量:int *a; 通过理解和掌握这些面试题,可以更好地准备编程面试,展示对编程原理和技术细节的深刻掌握。
53 2
|
6月前
|
存储 算法 C语言
从C语言到C++_39(C++笔试面试题)next_permutation刷力扣
从C语言到C++_39(C++笔试面试题)next_permutation刷力扣
61 5
|
6月前
|
存储 编译器 C语言
从C语言到C++_23(多态)抽象类+虚函数表VTBL+多态的面试题(下)
从C语言到C++_23(多态)抽象类+虚函数表VTBL+多态的面试题
60 1
下一篇
无影云桌面