机电C理论习题13章1.docx
- 文档编号:14297350
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:33
- 大小:35.01KB
机电C理论习题13章1.docx
《机电C理论习题13章1.docx》由会员分享,可在线阅读,更多相关《机电C理论习题13章1.docx(33页珍藏版)》请在冰点文库上搜索。
机电C理论习题13章1
第一章C语言基础知识
一、选择题:
1.下列关于C语言用户标识符的叙述中正确的是()
A)用户标识符中可以出现下划线和中划线(减号)
B)用户标识符中不可以出现中划线,但可以出现下划线
C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头
D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头
2.①下列选项中,不能用作标识符的是()
A)_1234_B)_1_2C)int_2_D)2_int_
②以下选项中合法的用户标识符是()
A)longB)_2TestC)3DmaxD)A.dat
③以下不能定义为用户标识符的是()
A)scanfB)VoidC)_3com_D)int
3.可用作C语言用户标识符的一组标识符()
A)voiddefineWORDB)a3_b3_123IFC)For-abcCase
D)2aDOsigeofE)f2_G3IFabc
4.以下4组用户定义标识符中,全部合法的一组是()
A)_mainB)IfC)txtD)int
enclude-maxREALk_2
sinturbo3COM_001
5.以下叙述正确的是()
A)可以把define和if定义为用户标识符
B)可以把define定义为用户标识符,但不能把if定义为用户标识符
C)可以把if定义为用户标识符,但不能把define定义为用户标识符
D)define和if都不能定义为用户标识符
6.如果下面的变量都是int类型,则输出结果是()
main(){intsum=pad=5;pAd=sum++,pAd++,++pAd;printf(“%d\n”,pad);}
A)7B)6C)5D)4
7.C语言中最简单的数据类型包括()
A)整型、实型、逻辑型B)整型、实型、字符型
C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型
8.以下选项中属于C语言的数据类型的是()
A)复数型B)逻辑型C)双精度型D)集合型
9.下列叙述中正确的是()
A)C语言中既有逻辑类型也有集合类型B)C语言中没有逻辑类型但有集合类型
C)C语言中有逻辑类型但没有集合类型D)C语言中既没有逻辑类型也没有集合类型
10.C语言提供的合法的数据类型关键字是()()()
①A)DoubleB)shortC)integerD)Char
②A)swicthB)cherC)CaseD)default
③A)VARB)cherC)integerD)default
11.以下选项中不属于C语言类型的是()
A)signedshortintB)unsignedlongintC)unsignedintD)longshort
12.若有以下定义:
chara;intb;floatc;doubled;则表达式a*b+d-c值的类型为()
A)floatB)intC)charD)double
13.sizeof(double)是()
A)一种函数调用B)一个双精度型表达式C)一个整型表达式D)一个不合法的表达式
14.
①在C语言中,不合法的整型常数是()
A)32768B)0C)037D)0xAF
②以下选项中可作为C语言合法整数的是()
A)10110BB)0386C)0XffaD)x2a2
15.在C语言中,合法的长整型常数是()
A)0LB)C)0.D)2.1869e10E)&F)216D
16.在C语言中,合法的实型常数是()()
①A)5E2.0B)E-3C).2E0D)1.3E
②A)1.2E0.5B)3.14159EC).5E-3D)E15
17.16位C编译系统中,若定义longa;能给a赋40000的正确语句()
A)a=20000+20000;B)a=4000*10;C)a=30000+10000;D)a=4000L*10L;
18.下列变量定义中合法的是()
A)short_a=1-.1e-1;B)doubleb=1+5e2.5;
C)longdo=0xfdal;D)float2_and=1-e-3;
19.C语言中,运算对象必须是整型数的运算符是()()()
①A)%B)/C) ②A)%B)\C)%和\D)** ③A)%=B)/C)=D)<= 20.设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b 的值是() A)6.B)6C)5.D)6. 21.下列关于单目运算符++、--的叙述中正确的是() A)它们的运算对象可以是任何变量和常量 B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量 C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量 D)它们的运算对象可以是char型变量、int型变量和float型变量 22.以下程序的输出结果是()()()()() 1main(){inti=10,j=1;printf(“%d,%d\n”,i--,++j);} 2main(){intx=10,y=10;printf(“%d%d\n”,x--,--y);} 3main(){inta=12,b=12;printf(“%d%d\n”,--a,++b);} 4main(){inti=010,j=10;printf(“%d,%d\n”,++i,j--);} 5main(){intx=023;printf(“%d\n”,--x);} ①A)9,2B)10,2C)9,1D)10,1 ②A)1010B)99C)910D)109 ③A)1010B)1212C)1110D)1113 ④A)11,10B)9,10C)010,9D)10,9 ⑤A)17B)18C)23D)24 23.设有intx=11;则表达式(x++*1/3)的值是() A)3B)4C)11D)12 24.设有以下定义,则下面语句中错误的是() inta=0;doubleb=1.25;charc=‘A’; #defined2 A)a++;B)b++;C)c++;D)d++; 25.有以下程序,程序运行后的输出结果是() main() {intm=3,n=4,x; x=-m++;x=x+8/++n;printf(“%d\n”,x);} A)3B)5C)-1D)-2 26.以下选项中,与k=n++完全等价的表达式是() A)k=n,n=n+1B)n=n+1,k=nC)k=++nD)k+=n+1 27.以下程序的输出结果是() main(){intx=10,y=3;printf(“%d\n”,y=x/y);} A)0B)1C)3D)不确定的值 28.若有以下程序段,执行后c3中的值是() intc1=1,c2=2,c3;c3=1.0/c2*c1; A)0B)0.5C)1D)2 29.若有定义: inta=8,b=5,c;执行语句c=a/b+0.4;后,c的值为() A)1.4B)1C)2.0D)2 30.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(),则表达式x=2,y=x+3/2的值是() A)1B)2C)2.0D)2.5E)3.5F)3G)3.0 31.以下程序的输出结果是() main() {doubled=3.2;intx,y; x=1.2;y=(x+3.8)/5.0;printf(“%d\n”,d*y);} A)3B)3.2C)0D)3.07 32. ①设有语句: inta=3;则执行了语句a+=a-=a*a;后,变量a的值是() ②设有语句: inta=12;则执行了语句a+=a-=a*a;后,变量a的值是() ③设有语句: intx=10;则执行了语句x+=x-=x-x;后,变量x的值是() ④设有语句: inta=5;则执行了语句a*=a/=a++;后,变量a的值是() ①A)3B)0C)9D)-12 ②A)552B)264C)144D)-264 ③A)10B)20C)40D)30 ④A)2B)1C)40D)3 33.以下程序的输出结果是() main() {intk=2,i=2,m; m=(k+=i*=k);printf(“%d,%d\n”,m,i); A)8,6B)8,3C)6,4D)7,4 34.假定有以下变量定义: intk=7,x=12;则能使值为3的表达式是() A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5) 35.设x和y均为int型,则以下语句: x+=y;y=x-y;x-=y;的功能() A)把x和y按从大到小排列B)把x和y按从小到大排列 C)无确定结果D)交换x和y中的值 36.设有如下程序段,则以下叙述中正确的是() main(){intx=2002,y=2003;printf(“%d\n”,(x,y));} A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出 B)运行时产生出错信息 C)输出值为2002 D)输出值为2003 37.设x,y,z和k都是int型变量,则执行表达式: x=(y=4,z=16,k=32)后,x的值为() A)4B)16C)32D)52 38.执行下面程序中的输出语句后,a的值是() main(){inta;printf(“%d\n”,(a=3*5,a*4,a+5));} A)65B)20C)15D)10 39.给出以下程序Ⅰ和Ⅱ,判断它们的输出() Ⅰmain()Ⅱmain() {inta=4,b=7;{inta=1,b=2; printf(“%d\n”,(a=a+1,b+a,b+1));}printf(“%d\n”,a=a+1,a+b,b+1);} A)Ⅰ输出5B)Ⅰ输出5 Ⅱ输出2Ⅱ中printf函数调用语句的输出项包含了a=a+1形式,不合法 C)Ⅰ输出8D)Ⅰ中printf函数调用语句的格式描述符不够,输出无定值 Ⅱ输出2Ⅱ输出2 40.若有以下程序段,其输出结果是() inta=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\n”,a,b,c); A)3,0,-10B)0,0,5C)-10,3,-10D)3,0,3 41. ⑴设有如下的变量定义,则以下符合C语言语法的表达式是() inti=8,k,a,b;unsignedlongw=5;doublex=1.42,y=5.2; A)x%(-3)B)a=a*3=2C)y=float(i)D)a+=a-=(b=4)*(a=3) ⑵以下定义语句,若各变量已正确赋值,下列选项中正确的表达式() doublea,b;intw;longc; A)a=a+b=b++B)w%((int)a+b)C)(c+w)%(int)aD)w=a==b; ⑶若变量已正确定义并赋值,下面符合C语言语法的表达式是() A)a: =b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+bE)a=7+b+c,a++ F)a=a+7; ⑷以下选项中非法的表达式是() A)0<=x<100B)i=j==0C)(char)(65+3)D)x+1=x+1 ⑸①若变量a、i已正确定义,且i已正确赋值,则合法的语句是() A)a==1B)++i;C)a=a++=5;D)a=int(i); ②若以下选项中的变量已正确定义,则正确的赋值语句是() A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3; ⑹请选出合法的C语言赋值语句()()() ①A)a=b=58B)i++;C)a=58,b=58D)k=int(a+b);E)x+y; ②A)x=3,y=5B)a=b=6C)i--;D)y=int(x); ③A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,c=a+7;D)a=7+b,b++,a+7 ⑺下列选项中不正确的赋值语句是()() ①A)++t;B)k=i==j;C)a=b+c=1;D)n1=(n2=(n3=0)); ②A)j++;B)++(i+1);C)x=j>0;D)n=(i=2,++i); 42. ⑴设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是() A)x=x*100+0.5/100.0;B)x=(x*100+0.5)/100.0; C)x=(int)(x*100+0.5)/100.0;D)x=(x/100+0.5)*100.0; E)x=(x*100+0.5)/100.0,x=(int)(x*100)/100.0; ⑵若变量a已说明为float类型,i为int类型,则不能实现将a中的数值保留小数点后两位,第三位进行四舍五入运算的语句是() A)a=(a*100+0.5)/100.0,a=(int)(a*100)/100.0;B)i=a*100+0.5,a=i/100.0; C)a=(int)(a*100+0.5)/100.0;D)a=(a/100+0.5)*100.0; 43.C语言程序的基本单位是() A)程序行B)语句C)函数D)字符 44.在一个C程序中() A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现 C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置 45.以下说法中正确的是() A)C语言程序总是从第一个函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 46.假设在程序中a、b、c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式 的表达式是() A)1/a*b*cB)1/(a*b*c)C)1.0/a/b/cD)1/a/b(float)c 47.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的 描述中错误的是() A)有零个或多个输入B)有穷性C)有零个或多个输出D)可行性 48.C语言中用于结构化程序设计的三种基本结构是() A)顺序结构、选择结构、循环结构B)if、switch、break C)for、while、do-whileD)if、for、continue 49.结构化程序由三种基本结构组成,三种基本结构组成的算法() A)可以完成任何复杂的任务B)只能完成部分复杂的任务 C)只能完成符合结构化的任务D)只能完成一些简单的任务 50.以下叙述中正确的是() A)C程序中注释部分可以出现在程序中任意合适的地方 B)花括号“{”和“}”只能作为函数体的定界符 C)构成C程序的基本单位是函数,所有函数名都可以由用户命名 D)分号是C语句之间的分隔符,不是语句的一部分 51. ⑴语句inti=3;则k=(i++)+(i++)+(i++);执行过后k的值为()i的值为() A)9,6B)12,5C)18,6D)15,5 ⑵如果inti=3;则k=(i++)+(++i)+(i++);执行过后k的值为()i的值为() A)12,6B)12,5C)18,6D)15,5 ⑶如果inti=3;则k=(++i)+(++i)+(i++);执行过后k的值为()i的值为() A)15,6B)12,5C)18,6D)15,5 ⑷如果inti=3;则k=(++i)+(++i)+(++i);执行过后k的值为()i的值为() A)9,6B)12,5C)18,6D)15,5 二、填空题: 1.C语言源程序文件的后缀是___,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是_____。 2.结构化程序设计所规定的三种基本控制结构是________结构,选择结构和循环结构。 3.设有以下变量定义,并已赋确定的值charw;intx;floaty;doublez;则表达式w*x+z-y所求得值的数据类型为_________。 4.设x和y均为int型变量,且x=1,y=2,则以下表达式1.0+x/y的值为____。 5.有语句inti=-19,j=i%4;printf(“%d\n”,j);则输出结果是____。 6.设a,b,c为整型,且a=2,b=3,c=4,则执行完以下语句: a*=16+(b++)-(++c);后,a的值是______。 7.若有定义: inta=10,b=9,c=8;接着顺序执行下列语句后,变量b中的值是____。 c=(a-=(b-5));c=(a%11)+(b=3); 8.已有定义: intk=3,j=4;则运行表达式: k+=j,j/=4.0,++j,j+2后,表达式的值是__,变量k的值是__,变量j的值是__。 9.以下程序的输出结果是_____。 main(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(“%d,%d\n”,a,b);} 10.以下程序的输出结果是____。 main(){inta=0;a+=(a=8);printf(“%d\n”,a);} 11.语句: x++;++x;x=x+1;x=1+x;执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)______。 12.下列程序的输出结果是16.00,请填空。 main() {inta=9,b=2;floatx=_____,y=1.1,z; z=a/2+b*x/y+1/2;printf(“%5.2f\n”,z);} 第二章顺序结构 一、选择题: 1.以下4个选项中,不能看作一条语句的是() A){;}B)a=0,b=0,c=0;C)if(a>0);D)if(b==0)m=1;n=2; 2.有定义: longx=-L;则以下能够正确输出变量x值的语句() A)printf(“x=%d\n”,x);B)printf(“x=%ld\n”,x); C)printf(“x=%8dL\n”,x);D)printf(“x=%LD\n”,x); 3.以下程序的输出结果是()()()() 1main(){inta=1234;printf(“%2d\n”,a);} ②main(){intx=102,y=012;printf(“%2d,%2d\n”,x,y);} ③main(){inta=2,c=5;printf(“a=%%d,b=%%d\n”,a,c);} ①A)12B)34C)1234D)提示出错,无结果 ②A)10,01B)02,12C)102,10D)02,10 ③A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%d 4.以下程序的输出结果是()()()()()() ①main(){intk=11;printf(“k=%d,k=%o,k=%x\n”,k,k,k);} A)k=11,k=12,k=11B)k=11,k=13,k=13 C)k=11,k=013,k=0xbD)k=11,k=13,k=b ②main(){intk=17;printf(“%d,%o,%x\n”,k,k,k);} A)17,021,0x11B)17,17,17C)17,0x11,021D)17,21,11 ③main(){intu=010,v=0x10,w=10;printf(“%d,%d,%d\n”,u,v,w);} A)8,16,10B)10,10,10C)8,8,10D)8,10,10 ④main(){intm=0256,n=256;printf(“%o%o\n”,m,n);} A)02560400B)0256256C)256400D)400400 ⑤main(){intm=32767,n=;printf(“%d%o\n”,m,n);} A)32767,32767B)32767,C)32767,77777D)32767, ⑥main(){intm=0xabc,n=0xabc;m-=n;printf(“%X\n”,m);} A)0X0B)0x0C)0D)0XABC 5.以下程序的输出结果是()(小数点后只写一位) main() {doubled;floatf;longl;inti; i=f=l=d=20/3;printf(“%d%ld%f%f\n”,i,l,f,d);} A)666.06.0B)666.76.7C)666.06.7D)666.76.0 6.以下程序的输出结果是() main() {inta;charc=10;floatf=100.0;doublex; a=f/=c*=(x=6.5);printf(“%d%d%3.1f%3.1f\n”,a,c,f,x);} A)16516.5B)1651.56.5C)1651.06.5D)2651.56.5 7.已知i、j、k为int型变量,若从键盘输入: 1,2,3<回车>,使i的值为1,j的值为2,k的值为3.以下选项中正确的输入语句是() A)scanf(“%2d%2d%2d”,&i,&j,&k);B)scanf(“%d%d%d”,&i,&
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机电 理论 习题 13
![提示](https://static.bingdoc.com/images/bang_tan.gif)