




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上一、单选题(请将正确答案写在答题纸,120题每题1分,2135题每题2分,共50分)1. 下列关于C语言的说法不正确的是( D )。A.C语言既具有高级语言的一切功能,也具有低级语言的一些功能B.注释可以出现在程序中任意合适的地方C.C语言中的每一条执行语句都必须用分号结束,分号是C语言的一部分D.定义函数的首行要加分号2. C语言程序的执行顺序是( B )。A.从第一个函数开始执行 B.从main函数开始执行C.从任意函数开始执行 D.从第一条语句开始执行3. 以下关于注释的叙述,正确的是( D )。A.注释参与编译,影响程序结果B.注释不参与编译,但影响程序结果C
2、.注释参与编译,但不影响程序结果D.注释不参与编译,不影响程序结果4. 以下叙述正确的是( A )。A.C语言程序可以在任意C编译器下编译B.C语言程序只能在TC环境下编译C.C语言程序只能在VC或TC环境下编译D.C语言程序只能在VC环境下编译5. C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符( B )。A.必须为字母B.必须为下划线或字母C.必须为下划线D.可以是字母,数字和下划线中任一字符6. 下面四个数字常量选项中,书写均正确的是( D )。A.016 0x8f 018 (零开头的是八进制,不能用8) B.0312 7ff -087(8进制没有符号)C.0xbc
3、0a7(8进制没有a) 0xa D.070 0xf1 0x19(16进制以ox开头)7. 若有说明语句:char c=0x7f;则变量c( B )。A.包含3个字符 B.包含1个字符C.包含2个字符 D.说明不合法,c的值不确定8. 设有int x=11;则表达式(+x*1/3)的值是( B )。(11+1再除以3)A.3 B.4 C.11 D.129. 阅读下面程序段,输出结果为( B )。(z-a=25)#include "stdio.h" void main() char c; c=('z'-'a')/3+'A' put
4、char(c); A.H B.J C.I D.K10. 若有定义和语句:int a=23,b=023; printf(“%x,%d n”,a,b);输出结果是( D )。A. 17,15 B.17,18 C.18,19 D. 17,1911. 已有定义语句:int x=3,y=4,z=5;则值为0的表达式是( D )。A.y%z>=y-z B.x<=+y C.x!=y+z>y-z D.x>y+求余数4/5余数4 3小于等于5 x 3>4为假,为012. 有如下程序(1.0除以3.0)#include "stdio.h"void main()fl
5、oat x=3.0,y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf("%fn",y);该程序的输出结果是( A )。A. 0. B.0. C. 0. D.1.*13. 有以下程序#include <stdio.h>void main() int i=5;do if (i%3=1)if (i%5=2) printf("*%d", i); break;i+; while(i!=0);printf("*%dn",i);程序的运行结果是( C )。
6、A.*2*6 B.*3*5 C.*7 D.*514. 以下程序段的变量已正确定义for(i=0;i<4;i+,i+,i+) for(k=1;k<3;k+)printf("#");程序段的输出结果是 ( B )。A.# B.# C.# D.#15. 有以下程序(S是数组)#include <stdio.h>void main() int s12=2,2,3,4,4,3,2,1,1,1,2,3,c5=0,i;for(i=0;i<12;i+)csi+;for(i=1;i<5;i+)printf("%d ",ci);print
7、f("n");程序的运行结果是 ( A )。A. 3 4 3 2 B.2 3 4 4 C. 1 2 3 4 D.1 1 2 316. 有下列程序:#include <stdio.h>#include <string.h>void f(char p 10,int n) char t10; int i,j;for (i=0;i<n-1; i+)for (j=i+1; j<n; j+)if(strcmp(pi, pj)>0) strcpy(t, pi); strcpy(pi, pj); strcpy(pj, t); void main(
8、) char p510="1ha", "abbdfg", "aabd", "dcdbe", "cd"f(p, 5);printf("%dn", strlen(p0);程序运行后的输出结果是 ( D )。A.2 B.4 C.6 D.317. 有下列程序:#include <stdio.h>#include <string.h>void main() char p20='a', 'b', 'c', '
9、d', q="ab", r="abcde"strcpy(p+strlen(q), r); strcat(p, q);printf("%d %dn", sizeof(p), strlen(p);程序运行后的输出结果是 ( A )。A.20 9 B.9 9 C.20 11 D.11 1118. 以下正确的函数定义(函数的功能求两数之和)是 ( C )。A.int fun(int x, int y) z=x+y ; return z ; (Z没有定义)B.fun (int x,int y) double z ;z=x+y ; ret
10、urn z ; (没定义)C.int fun(int x,y) int z ; return z ; (没运算)D.int fun (int x, int y) double z ;return z ; 19. 以下func函数的调用中实参的个数是( B )。func(exp1,exp2),(exp3,exp4,exp5);A.1 B.2 C.5 D.320. 有以下程序:#include <stdio.h>int fun1(double a)return a*=a; int fun2(double x,double y) double a=0,b=0; a=fun1(x); b=
11、fun1(y); return (int)(a+b); void main() double w; w=fun2(2.2,2.0);程序执行后变量w中的值是( D )。A.8.84 B.5.0 C.8 D.8.021. 若有以下程序:#include<stdio.h>void f(int n);void main() void f(int n);f(5); void f(int n)printf("%dn",n); 则以下叙述中不正确的是( D )。A.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fB.函数f无返回值,所以可用void将其类型定义
12、为无值型C.对于以上程序,编译时系统不会提示出错信息:提示对f函数重复说明D.若在主函数前对函数f进行说明,则在主函数和其他函数中都可以正确调用函数f22. 以下叙述不正确的是( A )。A.在函数内复合语句中定义的变量也可在本函数范围内有效B.函数中的形式参数是局部变量C.在函数内定义的变量只在本函数范围内有效D.在不同的函数中可以使用同名的变量23. 若有以下定义,则对a数组元素地址的正确引用是( C )。int a10,*p=a;A.p+10 B.*a+1 C.&a9 D.&a+125. 下面程序段的运行结果是( D )。char *s="abcde"
13、s+=3; printf("%d",s);A.cde B.字符'c' C.无确定的输出结果 D.字符'd'的地址26. 已定义以下函数 fun(char *pa, char *pb) while(*pb=*pa)!='0')pa+;pb+; 函数的功能是( D )。A.检查pa和pb两个指针所指字符串中是否有'0'B.将pa所指字符串的地址赋给指针pbC.对pa和pb两个指针所指字符串进行比较D.将pa所指字符串复制到pb所指内存空间中27. 表达式y=(12>13?15:6>7?8:9)的值为(
14、C )。A.1 B.8 C.9 D.1528. 下列能正确定义字符串的语句是( B )。A.char str ='x6f' B.char str ="1010" C.char str="k" D.char str="29. 有下列程序:#include <stdio.h>#include<string.h>void main() char p ='a', 'b', 'c',q10= 'a', 'b', 'c'p
15、rintf("%d%dn",strlen(p),strlen(q);下列叙述中正确的是( D )。A.在给p 和q 数组赋初值时,系统会自动添加字符串结束符,故输出的长度都为3B.由于q 数组中没有字符串结束符,长度不能确定,但p 数组中字符串长度为3C.由于p 和q 数组中都没有字符串结束符,故长度都不能确定D.由于p 数组中没有字符串结束符,长度不能确定,但q 数组中字符串长度为330. C语言程序由函数组成,它的( A )。A.主函数可以在其它函数之后,函数内不可以嵌套定义函数B.主函数必须在其它函数之前,函数内可以嵌套定义函数C.主函数必须在其它函数之前,函数内不可
16、以嵌套定义函数D.主函数必须在其它函数之后,函数内可以嵌套定义函数31. 在一个C源程序文件中所定义的全局变量,其作用域为( B )。A.所在文件的全部范围 B.由具体定义位置和extern说明来决定范围C.所在函数的全部范围 D.所在程序的全部范围32. 以下程序的输出结果是( A )。#include<stdio.h>int f() static int i=1; int s=1; s+=i;i+; return s;void main() int i,a=0; for(i=0;i<5;i+) a+=f(); printf("%dn",a);A.20
17、B.24 C.25 D.1533. 下面程序应能对两个整型变量的值进行交换。以下正确的说法是( C )。main() int a=10,b=20; printf("(1)a=%d,b=%dn",a,b); swap(&a,&b); printf("(2)a=%d,b=%dn",a,b); swap(int p,int q) int t; t=p;p=q;q=t;A.该程序完全正确B.该程序有错,只要将语句swap(&a,&b); 中的参数改为a,b即可C.该程序有错, 只要将swap()函数中的形参p和q以及t均定义为指针
18、(并对执行语句作相应修改) 即可D.以上说法都不正确34. 以下程序中调用scanf函数给变量b输入数值的方法是错误的,其错误原因是( D )。main()int *p,b; p=&b; printf("input b:"); scanf("%d",*p);A.*p表示的是指针变量P的地址B.*p表示的是指针变量p的值C.*p只能用来说明p是一个指针变量D.*p表示的是变量b的值,而不是变量b的地址35已有定义:char a = "123", b = '1','2','3' 以下
19、叙述中正确的是( B )A.数组a和b的长度相同B.a数组长度大于b数组长度C.a数组长度小于b数组长度D.上述说法都不对二、填空题(请将正确答案写在答题纸对应位置横线上,每空2分,共20分)1. 以下程序段的输出结果是 6 。int x=17,y=31;printf ("%d",y/=(x%=6);2. 执行下列程序后的输出结果是 a=17 。main( ) int a=10;a=(3*5,a+7); printf("a=%dn",a);3. 下列程序的输出结果是 12345 。#include <stdio.h>main() int n=
20、54321,d;while(n!=0) d=n%10;printf("%d",d);n/=10; 4. 下列程序的功能是输入任意整数给n 后,输出n 行由大写字母A 开始构成的三角形字符阵列图形。例如,输入整数5 时(注意:n 不得大于10),程序运行结果如下:A B C D EF G H IJ K LM NO请填空完成该程序。#include <stdio.h>void main()int i,j,n; char ch='A'scanf("%d",&n);if(n<11)for(i=1;i<=n;i+)f
21、or(j=1; j<=n-i+1;j+) printf("%2c",ch); ch+; printf("n");else printf("n is too large!n");printf("n");5. 下列程序的输出结果是 ABCDE 。#include <stdio.h>main( ) int i;for(i='a'i<'f'i+) printf("%c",i-'a'+'A');printf("
22、;n");6. 当执行下列程序时,输入<CR>,则其中while 循环体将执行 2 次。#include<stdio.h>main( ) char ch;while(ch=getchar()='0')printf("#");7. 以下程序段运行后,b的值是 4 。 int a = 1, b; for (b = 1; b <= 10; b+)if (a >= 8) break; if (a % 2 = 1) a += 5; continue; a -= 3;8. 下面的程序执行完后,n=_42_。int n=22;
23、main()static int x=5;int y;y=n;func();func();func()static int x=4;int y=10;x=x+2;n=n+10;y=y+n;9. 该程序运行的结果是 7 13 14 。 #include<stdio.h>#define M 100void fun(int m, int *a, int *n) int i,j=0;for(i=1;i<=m;i+)if(i%7=0|i%13=0)aj+=i;*n=j;void main() int aaM,n,k;fun(20,aa,&n);for(k=0;k<n;k+
24、)if(k+1)%20=0)printf("n");else printf("%4d",aak);printf("n");10. 以下程序中函数fun的功能是:统计person所指结构体数组中所有性别(sex)为F的记录的个数,存入变量n中,并做为函数值返回。请填空: #include<stdio.h> #define N 3 struct ss int num;char nam10; char sex; int fun(struct ss person) int i,n=0; for(i=0;i<N;i+) if(_personi.sex_ =F ) n+; return n; void main() struct ss WN=1,”AA1”,F,2,”BB1”,M,3,”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 单身购房抵押合同范本
- 租赁线上合同范本
- 出口模具的合同范本
- 上海校服采购合同范本
- 展销大棚租赁合同范本
- 朋友合股开店合同范本
- 机构如何签到合同范本
- 学生租房协议合同范本
- 宜家沙发租房合同范本
- 提前打款合同范本
- 2025年山西航空产业集团有限公司招聘考试笔试试题(含答案)
- 电梯安全培训课件内容
- 2025年事业单位招聘职业能力倾向测验考试题库附参考答案满分必刷
- 应聘副研究员汇报
- 2025年中考历史(河南卷)真题评析
- 2025年生猪屠宰兽医卫生检疫人员考试题(附答案)
- (完整word版)高中英语3500词汇表
- 苏州银行总行信息科技部招聘考试真题2022
- 安装电工电气调试员安全技术操作规程
- 2乳的验收与预处理解析
- 柴芍六君子汤加减治疗脾胃病三则
评论
0/150
提交评论