- 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)