




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章 练习题选择题1 一个C程序的执行是从 。A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2 以下叙述不正确的是 。A) 一个C源程序必须包含一个main函数B) 一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面3 以下叙述正确的是 。A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句D) C程序的每行中只能写一条语句4 一个C语言程序是由 。A)一个主程序和若干个子程序组成B) 函数组成C) 若干过程组成D) 若干子程序组成5. C语言规定:在一个源程序中,main函数的位置( )。A)必须在最后 B)必须在系统调用的库函数的后面C)必须在最开始 D)可以任意第三章 练习题(一)选择题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) -123abcTEMP4 下列四组选项中,均是合法转义字符的选项是 。A) ”nB) 017”C) 018fxabD) 0101xlf5 下面正确的字符常量是 。A) “c”B) C) D) K6.下列选项中字符串和字符常量都正确的是( )。A)china 和 ”a” B)12 和 C)”string” 和 S D)”678” 和 0787 以下叙述正确的是 。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设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 。A) float B) char C) int D) double11设以下变量均为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) (二)填空题1 若有以下定义,则计算表达式y+=y-=m*=y后的y值是【1】。 int m=5,y=2;2. 在C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为【2】。3 若s是int型变量,且s6,则下面表达式的值为【3】。s%2+(s+1)%24. 若a是int型变量,则下面表达式的值为【4】。 (a=4*5,a*2),a+65 若x和a均是int型变量,则计算表达式(1)后的x值为【5】,计算表达式(2)后的x 值为【6】。 (1) x=(a=4,6*2)(2) x=a=4,6*26. 若a是int型变量,则计算下面表达式后a的值为【7】。 A=25/3%37 若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为【8】,n的值为【9】。x+=n+8. 若有定义:char c=010;则变量c中包含的字符个数为【10】。9 若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为【11】 (x+y)%2+(int)a/(int)b10. 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=a+8-3的值为【12】。第四章 练习题(一)选择题1 putchar函数可以向终端输出一个 。A) 整型变量表达式 B) 实型变量值C) 字符串 D) 字符或字符型变量值2. 有以下语句:int b;char c10; ,则正确的输入语句是( )。A)scanf(%d%s,&b,c); B) scanf(%d%s,b,c);C)scanf(%d%s,&b,&c); D) scanf(%d%s,b,&c);3 阅读以下程序,当输入数据的形式为:25,13,10(注:表示回车),则正确的输出结果为 。 main() int x,y,z; scanf(“%d%d%d”,&x,&y,&z); printf(“x+y+z=%dn”,x+y+z);A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 不确定值4 根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为 。main() char ch1,ch2,ch3; 输入语句 printf(“%c%c%c”,ch1,ch2,ch3); 输出形式:A B C 输入形式:A BA) scanf(“%c%c%c”,&ch1,&ch2,&ch3);B) scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);/PC) scanf(“%c %c %c”,&ch1,&ch2,&ch3);D) scanf(“%c%c”,&ch1,&ch2,&ch3);5 已知ch是字符型变量,下面正确的赋值语句是 。A) ch=a+b; B) ch=0; C) ch=7+9;D)ch=5+9;(二)填空题1 以下的输出结果是【1】。main() short i; i=-4; printf(“ni:dec=%d,oct=%o,hex=%x,unsigned=%un”,i,i,i,i);2. 以下的输出结果是【2】。main() char c=x; printf(“c:dec=%d,oct=%o,hex=%x,ASCII=%cn”,c,c,c,c);3 以下的输出结果是【3】。main() int x=1,y=2; printf(“x=%d y=%d * sum * =%dn”,x,y,x+y); printf(“10 Squared is : %dn”,10*10);第五章 练习题(一)选择题1 逻辑运算符两侧运算对象三数据类型 。A) 只能是0和1 B) 只能是0或非0正数C) 只能是整型或字符型数据 D) 可以是任何类型的数据2 判断char型变量ch是否为大写字母的正确表达式是 。A) A=ch=A)&(ch=A)&(ch=Z) D) (A= ch)3 若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是 。 A) A%2=1 B) !(A%2=0) C) !(A%2) D) A%24 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=ab)&(n=cd)后n的值为 。 A) 1 B) 2 C) 3 D) 45 以下程序的运行结果是 。main() int a,b,d=241; a=d/100%9; b=(-1)&(-1); printf(“%d,%d”,a,b);A) 6,1 B) 2,1 C) 6,0 D) 2,06 已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 。 if(xy) z=x; x=y; y=z;A) x=10, y=20, z=30 B) x=20, y=30, z=30C) x=20, y=30, z=10 D) x=20, y=30, z=20/P7 以下程序的运行结果是 。main() int m=5; if(m+5) printf(“%dn”,m); else; printf(“%dn”,m-);A) 4 B) 5 C) 6 D) 78 若运行时给变量x输入12,则以下程序的运行结果是 。main() int x,y; scanf(“%d”,&x); y=x12 ? x+10 : x-12;printf(“%dn”,y);A) 4 B) 3 C) 2 D) 1第6章 练习题(一)选择题1设有程序段 int k=10; while(k=0)k=k-1; 这下面描述中正确的是_. a)while循环执行10次 b)循环是无限循环 c)循环体语句以此也不执行 d)循环体语句执行一次2语句while(!E);中的表达式!E等价于_. a)E=0 b)E!=1 c)E!=0 d)E=13下面程序段的运行结果是_. int n=0; while(n+=2);printf(%d,n); a)2 b)3 c)4 d)有语法错4下面程序的运行结果是_. #include main() int num=0; while(num=2) num+; printf(%dn,num); a)1 b)1 c)1 d)1 2 2 2 3 3 45以下程序段_. x=-1; do x=x*x; while(!x); a)是死循环 b)循环执行二次 c)循环执行一次 d)有语法错误6若有如下语句 int x=3; doprintf(%dn,x-=2);while(!(-x); 则上面程序段_. a)输出的是1 b)输出的是1和-2 c)输出的是3和0 d)是死循环7下面程序的运行结果是_. #include/Pmain() int y=10; doy-;while(-y); printf(%dn,y-); a)-1 b)1 c)8 d)08若i为整型变量,则以下循环执行次数是_. for(i=2;i=0;)printf(%d,i-); a)无限次 b)0次 c)1次 d)2次9.以下循环体的执行次数是( )。main() int i,j; for(i=0,j=1; i=j+1; i+=2, j-) printf(%d n,i);a) 3 b) 2 c) 1 d) 010以下正确的描述是_. a)continue语句的作用是结束整个循环的执行 b)只能在循环体内和switch语句体内使用break语句 c)在循环体内使用break语句或continue语句的作用相同 d)从多层循环嵌套中退出时,只能使用goto语句11、有以下程序main( ) int i,s=0; for(i=1;i10;i+=2) s+=i+1; printf(“%dn”,s); 程序执行后的输出结果是( )。a)自然数19的累加和 b)自然数110的累加和 c)自然数19中的奇数之和 d)自然数110中的偶数之和(二)、填空题 1下面程序的功能是用辗转相除法求两个正整数的最大公约数。请填空。 #include main() int r,m,n; scanf(%d%d,&m,&n); if(mn)_; r=m%n; while(r)m=n;n=r;r=_; printf(%dn,n); 2下面程序的运行结果是_. #include main() int a,s,n,count; a=2;s=0;n=1;count=1; while(count=7)n=n*a;s=s+n;+count; printf(s=%d,s); 第七章 练习题1.以下为一维整型数组a的正确说明是_. a)int a(10); b)int n=10,an; c)int n; d)#define SIZE 10; scanf(%d,&n); int aSIZE; int an;2以下对二维数组进行正确初始化的是_.a) int a23=1,2,3,4,5,6; b) int a3=1,2,3,4,5,6; c) int a2=1,2,3,4,5,6;d) int a2=1,2,3,4;3若二维数组a有m列,则计算任一元素aij在数组中位置的公式为_.(假设a00位于数组的第一个位置上。) a)i*m+j b)j*m+i c)i*m+j-1 d)i*m+j+14若二维数组a有m列,则在aij前的元素个数为_. a)j*m+i b)i*m+j c)i*m+j-1 d)i*m+j+1525.若有以下程序段:int a=4,0,2,3,1,i,j,t; for(i=1;i=0&taj) aj+1=aj;j-; aj+1=t; . . 则该程序段的功能是_. a)对数组a进行插入排序(升序) b)对数组a进行插入排序(降序) c)对数组a进行选择排序(升序) d)对数组a进行选择排序(降序)6有两个字符数组a、b,则以下正确的输入语句是_. a)gets(a,b); b)scanf(%s%s,a,b); c)scanf(%s%s,&a,&b); d)gets(a),gets(b);7已有定义:char a=xyz,b=x,y,z;,以下叙述中正确的是( )。a) 数组a和b的长度相同 b) a数组长度小于b数组长度 c)a数组长度大于b数组长度 d) 上述说法都不对8判断字符串s1是否大于字符串s2,应当使用_. a)if(s1s2) b)if(strcmp(s1,s2) c)if(strcmp(s2,s1)0) d)if(strcmp(s1,s2)0)二、填空题1 若有定义:double x35;则x数组中行下标的下限为_,列下标的上限为_.2下面程序以每行4个数据的形式输出a数组,请填空。 #define N 20 main() int aN,i; for(i=0;iN;i+)scanf(%d,_); for(i=0i=0;i-) s=s+ai*j; j=j*10; printf(s=%dn,s); 第八章 练习题一、选择题1.以下正确的说法是_. 建立函数的目的之一是 a)提高程序的执行效率 b)提高程序的可读性 c)减少程序的篇幅 d)减少程序文件所占内存2以下正确的函数定义形式是_. a)double fun(int x,int y) b)double fun(int x; int y) c)double fun(int x, int y); d)double fun(int x,y);3C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式为_. A)地址传递 B)单向值传递 C)由实参传给形参,再由形参传回给实参 D)由用户指定传递方式 4C语言允许函数值类型缺省定义,此时该函数值隐含的类型是_. a)float b)int c)long d)double5已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的错误定义方式为_. int a34; f(a); a)f(int array6) b)f(int array3) c)f(int array4) d)f(int array25)6以下程序的正确运行结果是_. #include void num()extern int x,y;int a=15,b=10; x=a-b; y=a+b; int x,y; main() int a=7,b=5; x=a+b; y=a-b; num(); printf(%d,%dn,x,y); a)12,2 b)不确定 c)5,25 d)1,12/P二、填空题1以下程序的运行结果是_. #include main() int a=1,b=2,c; c=max(a,b); printf(max is %dn,c); max(int x,int y) int x; z=(xy)?x:y; return(z); 2.以下程序的运行结果是: void func(int x) x=20; main() int x=10;func(x);printf(“%d”,x);3函数gongyu的作用是求整数num1和num2的最大公约数,并返回该值。请填空。 gongyu(int num1,int num2) int temp,a,b; if(num1(_) num2) temp=num1;num1=num2;num2=temp; a=num1;b=num2; while(_) temp=a%b;a=b;b=temp; return(a);3以下程序的运行结果是_. int a=5;int b=7; main() int a=4,b=5,c; c=plus(a,b); printf(A+B=%dn,c); plus(int x,int y) int z; z=x+y; return(x); 第10章 指针一、选择题1变量的指针,其含义是指该变量的_. a)值 b)地址 c)名 d)一个标志2若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是_. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point 3若有说明;int *p,m=5,n;以下正确的程序段的是_. a)p=&n; b)p=&n; scanf(%d,&p); scanf(%d,*p); c)scanf(%d,&n); d)p=&n; *p=n; *p=m; 4下面程序段的运行结果是_. char *s=abcde; s+=2;printf(%d,s); a)cde b)字符c c)字符c的地址 d)无确定的输出结果5设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是_.a)c=*p1+*p2; b)p2=c c)p1=p2 d)c=*p1*(*p2);6以下正确的程序段是_. a)char str20; b)char *p; scanf(%s,&str); scanf(%s,p); c)char str20; d)char str20,*p=str; scanf(%s,&str2); scanf(%s,p2);7若有说明语句 char a=It is mine; char *p=It is mine; 则以下不正确的叙述是_. a)a+1表示的是字符t的地址 b)p指向另外的字符串时,字符串的长度不受限制 c)p变量中存放的地址值可以改变 d)a中只能存放10个字符 8下面程序的运行结果是_. #include #include main() char *s1=AbDeG; char *s2=AbdEg; s1+=2;s2+=2; printf(%dn,strcmp(s1,s2); a)正数 b)负数 c)零 d)不确定的值9.设有说明:char *str10;则标识符的意义是( )。a)str是一个指向有10个元素的数组的指针b)str 是一个有10个元素的数组,数组元素的数据类型是指向char型的指针c)str是一个指向char型函数的指针d)str是具有10个指针元素的一维指针数组,每个元素都只能指向整型变量 10若有以下定义,则对a数组元素的正确引用是_. int a5,*p=a; a)*&a5 b)a+2 c)*(p+5) d)*(a+2) 11若有定义:int a23,则对a数组的第i行j列元素地址的正确引用为_. a)*(ai+j) b)(a+i) c)*(a+j) d)ai+j 12若有以下定义,则p+5表示_. int a10,*p=a; a)元素a5的地址 b)元素a5的值 c)元素a6的地址 d)元素a6的值2下面程序段的运行结果是_. #includeint f(char *s) char *p=s;while( *p!=0) p+;return(p-s);main()printf(%dn,f(ABCDEF);3下面程序段的运行结果是_. char str=abc0def0ghi,*p=str; printf(%s,p+5);4若有定义:int a=2,4,6,8,10,12,*p=a;则*(p+1)的值是_. *(a+5)的值是_.5若有以下定义:int a23=2,4,6,8,10,12
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年急诊医学部护理核心制度专项考核试题(附答案)
- 2025年商务师职业资格考试题库:商务平台运营数据分析试题
- 2025年新能源企业绿色信贷与技术创新研发投入战略研究报告
- 2025年大学警卫学专业题库- 警卫学专业就业形势
- 2025年大学警卫学专业题库- 大学校园安保政策与法规
- 2025年麻醉科全麻患者监测技术评估试题答案及解析
- 2025年大学警卫学专业题库- 危险品泄漏事故应急处理
- 2025年大学科学教育专业题库- 现代教育技术与科学教育
- 2025年大学融合教育专业题库- 新技术在融合教育中的应用
- 2025年大学科学教育专业题库- 学习策略对科学教育的影响
- 2025年新滑索设备供应与安装合同10篇
- 医院中央运送服务方案(包括但不仅限于护送或陪检)
- 聚焦财税场景的AIBM生态服务行业白皮书
- 《教育心理学》教材
- 教育部《中小学德育工作指南》-德育工作指南
- 柜式七氟丙烷操作培训
- 知识产权代理服务协议
- 东亚文化视野下的日本语言文学知到智慧树章节测试课后答案2024年秋华东师范大学
- 2024年08月北京2024年建信养老金管理有限责任公司校园招考笔试历年参考题库附带答案详解
- DG-TJ 08-2445-2024 城镇排水管渠在线监测技术标准
- 强信念 转作风 提能力 促发展 学习心得体会
评论
0/150
提交评论