




免费预览已结束,剩余11页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据类型及表达式习题1. 选择题1 若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 x=(i=4,j=16,k=32)A) 4B) 16C) 32D) 522 下列四组选项中,均不是C语言关键字的选项是( )A) define IF typeB) getc char printfC) includecasescanfD) whilegopow3下列四组选项中,均是不合法的用户标识符的选项是( )A) W P_0 doB) b-a goto intC) floatla0_AD) -123 abcTEMP4 下列四组选项中,均是合法转义字符的选项是( )A) ” nB) 017 ”C) 018fxabD) 0101 xlf5 下面正确的字符常量是( )A) “c”B) C) D) K6 以下叙述不正确的是( )A) 在C程序中,逗号运算符的优先级最低B) 在C程序中,MAX和max是两个不同的变量C) 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变D) 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值7 以下叙述正确的是( )A) 在C程序中,每行只能写一条语句B) 若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C) 在C程序中,%是只能用于整数运算的运算符D) 在C程序中,无论是整数还是实数,都能被准确无误地表示8 已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2A+6-3后,c2中的值为( )A) DB) 68 C) 不确定的值 D) C9 sizeof(float)是( )A) 一个双精度型表达式 B) 一个整型表达式C) 一种函数表达式 D) 一个不合法的表达式10设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为( )A) 0255 B) 032767 C) 065535 D) 0214748364711设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为( )A) float B) char C) int D) double12设以下变量均为int类型,则值不等于7的表达式是( )A) (x=y=6,x+y,x+1) B) (x=y=6,x+y,y+1) C) (x=6,x+1,y=6,x+y) D) (y=6,y+1,x=y,x+1)13、如下所示,执行以下程序段后,变量a,b,c的值分别是() int x =10, y = 9;int a, b, c;a = (-x = y+)? -x : +y; b = x+; c = y; A、a = 9, b = 9, c = 9 B、a = 8, b = 8, c = 10 C、a = 9, b = 10, c = 9 D、a = 1, b = 11, c = 1014、若有以下定义,int k = 7, x = 12; 则能使值为3的表达式是() A、x %= (k %= 5) B、x %= (k - k %= 5) C、x %= k - k%5 D、(x %= k) - (k %= 5) 15.若已定义x是int和y为double类型,则表达式:x=1,y=x+3/2的值是( )A)1 B)2 C)2.0 D)2.516.若有以下定义和语句 char c1=b,c2=e; printf(%d,%cn,c2-c1,c2-a+A); 则输出结果是( ) A)2,MB)3,E C)2, E D)输出项与对应的格式控制不一致,输出结果不确定17.设 a、b、c、d、m、n均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式 (m=ab)&(n=cd) 运算后,n的值为( )A) 0 B) 1 C) 2 D) 32. 填空题1 若有以下定义,则计算表达式y+=y-=m*=y后的y值是_2y-m*y_2. 在C语言中,一个short型数据在内存中占2个字节,则 short型数据的取值范围为_(-32768-32767)_ 3 若s是int型变量,且s6,则下面表达式的值为_1_ s%2+(s+1)%2 4. 若a是int型变量,则下面表达式的值为_46_ (a=4*5,a*2),a+65 若x和a均是int型变量,则计算表达式(1)后的x值为 12_,计算表达式(2)后的x 值为_4_ (1) x=(a=4,6*2)(2) x=a=4,6*26. 若a是int型变量,则计算下面表达式后a的值为_2_ a=25/3%3 7 若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为_10_ ,n的值_5_。X += n+; 8. 若有定义:char c=010;则变量c中包含的字符个数为 _3_9 若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为_1_ (x+y)%2+(int)a/(int)b10. 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=a+8-3的值为_f_.11.看下列程序,请填空:#include int a;int main(void)static int b; int sum = 0;a+;b+; printf(“a = %d b = %dn”, a, b);return 0;a的值为:_1_,b的值为_1_12.看下列程序,请填空:#include int main(void)int a = 5;int b = 5;b = a+ + +a + a+;printf(“a = %d b = %dn”, a, b);return 0;程序会输出:_18 8_3. c面试题1. 关键字static的作用是什么?2. 全局变量和局部变量在内存中是否有区别?如果有,是什么区别?3. 局部变量能否和全局变量重名?4.全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?5.程序的内存分配方式?6.位运算实现指定位清零/写入操作?4. c面试题答案1. 关键字static的作用:这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。 大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。2. 全局变量和局部变量的区别:答 :全局变量储存在静态数据区有初始值为0,局部变量在堆栈中没有初始值。3. 局部变量能否和全局变量重名?答:能,局部会屏蔽全局。局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内4.全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么? 答 :可以,在不同的C文件中以static形式来声明同名全局变量。可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错5. 程序的内存分配方式?答:一个由c/C+编译的程序占用的内存分为以下几个部分1、栈区(stack)由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。3、全局区(静态区)(static)全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。程序结束后由系统释放。4、文字常量区常量字符串就是放在这里的。程序结束后由系统释放。5、程序代码区存放函数体的二进制代码6. 例子程序#include #include #include int a=0; /全局初始化区char *p1; /全局未初始化区main()intb;栈char s=”abc”; /栈char *p2; /栈char *p3=”123456; /1234560在常量区,p3在栈上。static int c=0; /全局(静态)初始化区p1 = (char*)malloc(10);p2 = (char*)malloc(20); /分配得来得10和20字节的区域就在堆区。strcpy(p1,”123456); /1234560放在常量区,编译器可能会将它与p3所向”123456优化成一个地方。6.位运算实现指定位清零/写入操作?答: 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。对这个问题有以下基本的反应1)不知道如何下手。该被面者从没做过任何嵌入式系统的工作。2) 用 #define
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络设计与实施的经验总结试题及答案
- 提高医学基础知识应对能力的方法试题及答案
- 财务分析工具在初级会计师考试的应用试题及答案
- 图书管理员跨界服务拓展试题及答案
- 计算机二级考试中理论知识与实践能力的平衡策略试题及答案
- 走向未来护士资格证考试的试题及答案
- 网络规划设计师考试方式与内容分析试题及答案
- 零件检验试题及答案
- 项目砌筑工试题及答案
- 鼻拭子采集试题及答案
- 《遥感导论》全套课件
- 希尔国际商务第11版英文教材课件完整版电子教案
- 《学弈》优质课一等奖课件
- 2023年6月大学英语四级考试真题(第1套)(含答案)
- 飞行器总体设计(二)
- 奥迪A7L汽车说明书
- 栖居之桥的现象学沉思-海德格尔的栖居之思(续)
- 钢结构焊接施工方案最终版
- 围绝经期妇女保健指导
- 谈判药品审核备案表
- 果蔬采摘机器人
评论
0/150
提交评论