嵌入式岗位语言与数据结构综合题.pdfVIP

  • 0
  • 0
  • 约1.87万字
  • 约 22页
  • 2025-10-11 发布于北京
  • 举报

第4章第4节C语言&数据结构与算法(99道)***4***

4.综合题(18道)

4.1下面代码输出是几?

intmain()

{

intj=2;

inti=1;

if(i=1)j=3;

if(i=2)j=5;

printf(%d,j);

}

:输出为5。

解读:注意if的条件语句用的是赋值符“=”而不是等号“”,因此条件一直为真。

4.2负数和正数的反码、补码分别?

(1)负数的反码:对原码除符号位外的其余各位逐位取反就是反码。

(2)负数的补码:负数的补码就是对反码加1。

(3)正数的原码、反码、补码都一样。

4.3编译和有什么不同?(如对外部符号的处理)

(1)编译(+汇编)生成的是目标文件(*.o)。编译过程中对于外部符号(如用extern

跨文件的全局变量)不做任何解释和处理,外部符号对应的就是“符号”。

(2)生成的是可执行程序。将会解释和处理外部符号,外部符号对应的是

地址。

4.4函数参数的传递方式有几种?

(1)两种:值传递、指针传递。

(2)严格来看,只有一种传递,值传递,指针传递也是按值传递的,的是地

址。

4.5局部变量能否和全局变量重名?

:能,局部会全局。要用全局变量,需要使用“::”。

注意:对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在

两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体

内。

Chapter4Section4CLanguageDataStructuresandAlgorithms(99

Channels)***4***

4.Comprehensive

questions(18questions)

4.1Whatistheoutputofthe

followingcode?

intmain(){intj=2;

inti=1;if(i=1)j=3;

if(i=2)j=5;printf(%

d,j);}

Answer:Theoutputis

5.

解读:注Theconditionalstatementmeaningifusestheassignment=insteadoftheequalsign,so

theconditionisalwaystrue.

4.2Whataretheinverseandcomplementcodesofneiveandpositivenumbers?

(1)Inversecodeofneivenumbers:Inversebitbybitfortheotherbit

文档评论(0)

1亿VIP精品文档

相关文档