c语言计算机二级考试选择题如图?
全国计算机二级考试试题题库(附答案)
下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题
卡相应位置上涂黑,答在试卷上不得分。
(1) 应用软件是指
A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件
C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件
(2) 下列述叙中错误的是
A) 计算机要经常使用不要长期闲置不用
B) 为了延长计算机的寿命,应避免频繁开关计算机
C) 在计算机附近应避免磁场干扰
D) 计算机用几小时后,应关机一会儿再用
(3) 下列字符中,ASCII码值最小的是
A) A B) a C) Z D) x
(4) 用晶体管作为电子器件制成的计算机属于
A) 第一代 B) 第二代 C) 第三代 D) 第四代
(5) 下列各不同进制的四个无符号数中,最小的数是
A) ()2 B) (37)8 C) (75)10 D) (2A)16
(6) 二进制数转换成十六进制数是
A) B) C) D)
(7) 下列各无符号十进制数中,能用八位二进制表示的是
A) 296 B) 333 C) 256 D) 199
(8) 计算机的软件系统可分类为
A) 程序与数据 B) 系统软件与应用软件
D) 操作系统与语言处理程序 D) 程序、数据与文档
(9) 486机中的CPU同时能处理的二进制位数为
A) 8 B) 16 C) 32 D) 64
(10) 在使用计算机的过程中,需要重新启动DOS,则要
A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键
(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机
电源;②将该软盘插入A驱动器;③关好A驱动器门。则冷启动的操作顺序应为
A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①
(12) 设当前盘中某一文件路径为\A\C\B\,当前目录为\A。下列命令中错误的是
A) CD.. B) RD \A\C\B
C) TYPE \A\C\B\ D) TYPE C\B\
(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件
的内容,应使用命令
A) TYPE \AB B) TYPE \AB\
C) TYPE \ D) DIR \AB\
(14) 自动批处理文件必须放在
A) C盘根目录中 B) A盘根目录中
C) 启动盘的任一个目录中 D) 启动盘的根目录中
(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正
确执行的是
A) RD C:\USER\XY\P B) RD USER\XY\P
C) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y
(16) 下列DOS命令中,合法的是
A) DISKCOMP B) TYPE >>
C) COMP A: B: D) COMP A: A:
(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错
误的是
A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:
(18) 下列DOS命令中错误的是
A) TYPE >PRN B) TYPE PRN
C) COPY *.TXT PRN D) COPY CON PRN
(19) 下列四组DOS命令中,互相等价的一组是
A) COPY A:*.* B:与DISKCOPY A: B:
B) COPY +与TYPE >>
C) COPY + 与COPY +
D) TYPE *.FOR>CON与COPY *.FOR CON
(20) 设C盘目录结构如下:
且C盘根目录下文件的内容为
CD FORTRAN
CD \TC
如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统
文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是
A) COPY A:\*.C B) COPY A:\*.C TC
C) COPY A:\*.C FORTRAN D) CD USER
(21) C语言提供的合法的数据类型关键字是
A) Double B) short C) integer D) Char
(22) 在C语言中,合法的长整型常数是
A) 0L B) 4962710 C) D)
(23) 表达式:10!=9的值是
A) true B) 非零值 C) 0 D) 1
(24) 合法的C语言中,合法的长整型常数是
A) '\t' B) "A" C) 65 D) A
(25) 若有说明和语句:
int a=5;
a++;
此处表达式a++的值是
A) 7 B) 6 C) 5 D) 4
(26) 在下列选项中,不正确的赋值语句是
A) ++t; B) n1=(n2=(n3=0)); C) k=i==j; D) a=b+c=1;
(27) 若有说明:int i,j=7, *p=&i;,则与i=j;等价的语句是
A) I= *P; B) *P=*&J; C) i=&j; D) i=* *p;
(28) 不能把字符串:Hello!赋给数组b的语句是
A) char b[10]={'H','e','l','l','o','!'};
B) char b[10];b="Hello!";
C) char b[10];strcpy(b,"Hello!");
D) char b[10]="Hello!";
(29) 若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为4的表达式是
A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]
(30) 若有以下说明:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为6的表达式是
A) *p+6 B) *(p+6) C) *p+=5 D) p+5
(31) 若有以下说明:
int w[3][4]o={{0,1},{2,4},{5,8}};
int(*p)[4]=w;
则数值为4的表达式是
A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]
(32) 若程序中有下面的说明和定义
struct abc
{int x;char y;}
struct abc s1,s2;
则会发生的情况是
A) 编译进错 B) 程序将顺利编译`连接`执行
C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错
(33) 能正确表示a≥10或a≤0的关系表达式是
A)a>=10 or a=10│a<=0
C)a>=10││a=10 ││a<=0
(34) 下面程序的输出是
main()
{ int x=3,y=6,a=0;
while(x++!=(y+=o1))
{ a+o=1;
if(y
#include
main()
{ char ss[10]="12345";
strcat(ss,"6789");
gets(ss);printf("%s\n",ss);
}
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(35) 下面程序的输出是
main()
{ char *a="";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{ default:v4++;
case '1': v1++;
case '3': v3++;
case '2': v2++; }
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }
A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1
C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8
(36) 下面程序的输出是
main()
{int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}
A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b
(37) 若有以下程序段,w和k都是整型变量:
┆
w=k;
LB: if(w==0) go to LE;
w--;
printf("*");
goto LB;
LE: ┆
则不能与上面程序段等价的循环语句是
A)for(w=k;w!=0;w--) printf("*"); B)for(w=k;w;--w)printf("*");
C)w=k; D)w=k;
while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);
(38) 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是
A)*p=&a; scanf("%lf",p); B)p=(double *)malloc(8);scanf("%f",p);
C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p);
(39) 当执行下面程序且输入:ABC时,输出的结果是
#include
#include
main()
{ char ss[10]="12345";
gets(ss);printf("%s\n",ss); }
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(40) 若有以下的说明和语句:
main()
{int t[3][2], *pt[3],k;
fpr(k=o; k<3;k++)pt[k]=t[k];
}
则以一选项中能正确表示t数组元素地址的表达式是
A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2]
(41) 下面程序输出数组中的最大值,由s指针指向该元素.
main()
{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;
flr(p=a, s=a; p-a<10; p++)
if(---?---)s=p;
printf("The max:%d",*s):
}
则在if语句中的判断表达式应该是
A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s
(42) 下面程序的输出是
#include
main()
{ char*a="abcdefgh";
fun(a);puts(a); }
fun (char * s)
{ int x=0,y;char c;
for(y=strlen(s)-1;x
A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba
(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句
中实参的个数是
A)3 B)4 C)5 D)6
(44) 下面程序的输出是
main()
{ int t=1; fun(fun(t));}
fun(int h)
{ static int a[3]={1,2,3};
int k;
for(k=0;k<3;k++) a[k]+=a[k]-h;
for(k=1;k<3;k++) printf("%d",a[k]);
printf("\n"); return(a[h]);}
A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,
1,5,9, 1,3,5, 0,4,8, -1,3,7,
(45) C语言中,函数的隐含存储类别是
A)auto B)static C)extern D)无存储类别
(46) 下面程序的输出是
int w=3;
main()
{ int w=10; printf("%d\n",fun(5)*w); }
9月计算机二级《C语言》上机考题及答案
1、以下选项中属于C语言的数据类型是( )。 A. 复合型 B. 双精度型 C. 逻辑型 D. 集合型 2、以下说法中正确的是( )。 A. C语言程序总是从第一个的函数开始执行 B. 在C语言程序中,要调用的函数必须在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 3、选出下列标识符中不是合法的标识符的是( )。 A. hot_do B. cat1 C. _pri D. 2ab 4、下列描述中不正确的是( )。 A、字符型数组中可能存放字符串。 B、可以对字符型数组进行整体输入、输出。 C、可以对整型数组进行整体输入、输出。 D、 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。 5、若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )。 A. p+1 B. a+1 C. a++ D. ++p 6、设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。 A. 1 B. 0 C. 4 D. 3 7、定义如下变量和数组: int i, x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的输出结果是( ) A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9 8、读出以下语句的输出结果是( )。 int x=10,y=10; printf(“%d %d\n”,x--,--y); A. 10 10 B. 9 9 C. 9 10 D. 10 9 9、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是( )。 if(x++>5) printf("%d",x); else printf("%d\n",x - -); A. 7和5 B. 6和3 C. 7和4 D. 6和4 10、设有如下定义:char *aa[2]={"abcd","ABCD"};则以下说法中正确的是( )。 A)aa数组成元素的值分别是"abcd"和ABCD" B)aa是指针变量,它指向含有两个数组元素的字符型一维数组 C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的`首地址 D)aa数组的两个元素中各自存放了字符’a’和’A’的地址 11、以下语句的输出结果是( )。 int a=-1,b=4,k; k=(+ +a<0)&&!(b - -<=0); printf("%d,%d,%d\n",k,a,b); A. 1,0,4 B. 1,0,3 C. 0,0,3 D. 0,0,4 12、下列程序的输出结果是( )。 char *p1="abcd", *p2="ABCD", str[50]="xyz"; strcpy(str+2,strcat(p1+2,p2+1)); printf("%s",str); A. xyabcAB B. abcABz C. ABabcz D. xycdBCD 13、执行下面的程序后,a的值是( )。 #define SQR(X) X*X main( ) { int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); } A. 10 B. 1 C. 9 D. 0 14、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为( )。 A.P+i*2 B. P+(i-1)*2 C. P+(i-1) D. P+i 15、下列程序执行后输出的结果是( )。 int d=1; fun (int p) { int d=5; d + =p + +; printf("%d,",d); } main( ) { int a=3; fun(a); d + = a + +; printf("%d\n",d); } A. 8, 4 B. 9, 6 C. 9, 4 D. 8, 5 16、表达式:10!=9的值是( )。 A. true B. 非零值 C. 0 D. 1 17、若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是( )。 A. i= *p; B. *p=*&j; C. i=&j; D. i=* *p; 18、不能把字符串:Hello!赋给数组b的语句是( )。 A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’}; B. char b[10]; b="Hello!"; C. char b[10]; strcpy(b,"Hello!"); D.char b[10]="Hello!"; 19、在C程序中有如下语句:char *func(int x,int y); 它是( )。 A. 对函数func的定义。 B. 对函数func的调用。 C.对函数func的原型说明。 D. 不合法的。 20、以下程序的输出结果是( )。 char str[15]=”hello!”; printf(“%d\n”,strlen(str)); A. 15 B. 14 C. 7 D. 6 参考答案: 1、B 2、C 3、D 4、C 5、C 6、D 7、C 8、D 9、C 10、D 11、D 12、D 13、B 14、B 15、A 16、D 17、B 18、B 19、C 20、D
2018年计算机二级C语言考前冲刺题(1)
11[单选题] 有以下程序: 程序运行时输入:-11-220,则输出结果是( )。 A.1,1 B.1,0 C.3,-3 D.3,0 参考答案:C 参考解析:分析程序结构,在do …while循环中,嵌套一个switch语句,switch语句中两个case语句分别执行break和continue,其中break语句是跳出switch语句,接着执行do…while循环体剩下的部分;而continue语句是直接进入do…while的下一个循环,由此可知每次循环,当t=0时,执行break语句,接着将z值累加x;当t=1时,执行continue语句,将y值累加x,所以当x输入-1、-2、0时,t=0,z值累加为-3;当x输入1、2时.t=1,y值累加为3,输出y、z的值分别为3、-3,故答案选C。 12[单选题] 以下选项中叙述错误的是( )。 A.C程序函数中定义的自动变量,系统不自动赋确定的初值 B.在C程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内 C.C程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值 D.C程序函数的形参不可以说明为static型变量 参考答案:C 参考解析:A选项描述正确,自动变量未赋初值,为随机值;B选项描述正确,变量定义除在函数开始位置外,在复合语句开始也可以;C选项描述是错误的,函数内的静态变量,只在第一次调用时候赋值,以后调用保留上次值;D选项描述也正确,形参属于局部变量,占用动态存储区,而static型变量占用静态存储区。因此C选项正确。 13[单选题] 程序中若有以下的说明定义和语句: 则不能给变量t的s成员赋整数99,给num成员赋空串的语句组是( )。 参考答案:A 参考解析:结构体变量使用 “.”运算符引用结构体成员变量,结构体指针使用“->”运算符引用结构体成员变量,main函数中声明结构体STR变量t,和结构体STR指针*p,并将t的地址赋给p,所以使用P访问成员变量时,使用“->”运算符;使用* P访问成员变量时,使用“.”运算符。另外,由于成员变量num是字符数组,所以不能直接进行赋值,若要对num赋空字符串值,可以把num中第一个元素赋值为0或‘\0’,或者使用strcpy复制函数将空字符串“”复制到num中,故选项B、C、D正确,选项A错误,因此答案为A。 14[单选题] 以下关于循环语句的叙述中正确的是( )。 A.do…while语句的循环体至少执行一次 B.while语句的循环体至少执行一次 C.for语句的循环体至少执行一次 D.上述A、B、c说法均正确 参考答案:A 参考解析:while(表达式)当表达式为false时,循环体一次都不执行,故选项B、D错误;for(表达式1;表达式2;表达式3)语句,当表达式2为false时,循环体一次都不执行,故选项C错误;do-while语句循环体至少执行一次,故答案选A。 15[单选题] 以下叙述中错误的是( )。 A.用户定义的函数中可以没有return语句 B.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 C.用户定义的函数中若没有return语句,则应当定义函数为void类型 D.函数的return语句中可以没有表达式 参考答案:B 参考解析:本题重点考察函数返回值的相关知识,函数的值只能通过return语句返回主调函数,在函数中允许有多个return语句,但每次调用只能有一个return语句被执行,因此只能返回一个函数值。不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。因此B选项正确。 16[单选题] 以下叙述中正确的是( )。 A.C语句必须在一行内写完 B.C程序中的每一行只能写一条语句 C.C语言程序中的注释必须与语句写在同一行 D.简单C语句必须以分号结束 参考答案:D 参考解析:C语句可以跨行来写,但是必须以分号结束,所以A选项错误。C程序中的一行可以有多条语句,所以B选项错误。C语言中的注释语句可以与原语句放在一行也可以不放在一行,所以C选项错误。 17[单选题] 以下不合法的数值常量是( )。 A.8.0E0.5 B.1e1 C.011 D.0xabed 参考答案:A 参考解析:A选项中E后面的指数必须为整型数据,所以A错误。C选项中011表示的是八进制常量.Oxabcd表示的是十六进制常量。 18[单选题] 有以下程序: 程序计算的是( )。 . A.s=1!+2!+3!+4!+5! B.s=1+2+3+4+5 C.s=1$2*3*4*5 D.s=1!*2!*3!*4!*5! 参考答案:A 参考解析:函数fun()中的变量f是静态变量,所以只初始化一次,之后每次调用fun(),f的初值就是上一次fun()结束时的值,对于fun()函数,当传人n=1时,f=1,返回值为1;当传入n=2时,f=1×2=2,返回值为2;当传人13=3时,f=2×3=6,返回值为6;当传人n=4时,f=6×4=24,返回值为24,所以每次调用fun函数时,f变量在上一次fun函数运行结束时保留值的基础上,再与n乘积,并重新赋值给f,所以可以将f理解为记录当前的累乘值,即当main函数中i:1时,f=11=1;当main()函数i=2时,f=2!=2,当main函数中i=3时,f=3!=6……另外main函数中的S记录调用fun函数的返回值之和,所以s=1!+2!+…+i!,由于i最大值为5,所以s=1!+2!+3!+4!+5!,答案为A。 19[单选题] 下列诜项中.能正确定义数组的语句是( )。 参考答案:D 参考解析:C语言不允许定义动态数组,定义数组的大小必须为常量表达式。A选项错误,C语言中数组没有此类型的定义方法;B选项错误,定义数组应指明数组大小,如果不指明数组大小,需要给定初值的个数;C选项错误,N为变量,不能用来定义数组大小。因此D选项正确。 20[单选题] 有以下程序: 程序的运行结果是( )。 A.123 B.12300 C.1 D.321 参考答案:A 参考解析:首先使用fopen函数以可写方式打开文件d1.dat,返回文件指针fp,然后在for循环通过fprintf函数调用fp指针,将数组a的3个元素写入文件d1.dat中,最后再写入换行符\n,关闭文件,此时文件中的内容:“123\n”,然后调用fopen函数以只读方式打开d1.dat,返回文件指针fp指向文件的开头,再调用fscanf函数从文件中读入一个整数:123,(遇到第一个非数值字符结束),关闭文件后输出读人的整数n,结果为:123,答案为A。
2015年计算机二级《C语言》考试上机测试选择题
一、选择题(每小题1分,共40小题,共40分)
1.算法的空间复杂度是指( )。
A.算法程序的长度
B.算法程序中=的指令条数
C.算法程序所占的存储空间
D.算法执行过程中所需要的存储空间
2.下列叙述中正确的是( )。
A.一个逻辑数据结构只能有一种存储结构
B.逻辑结构属于线性结构,存储结构属于非线性结构
C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率
D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率
3.简单的交换排序方法是( )。
A.快速排序
B.选择排序
C.堆排序
D.冒泡排序
4.关于结构化程序设计原则和方法的描述错误的是( )。
A.选用的结构只准许有一个入口和一个出口
B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现
C.不允许使用GOT0语句
D.语言中若没有控制结构,应该采用前后一致的方法来模拟
5.相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和( )。
A.可重用性差
B.安全性差
C.非持久性
D.冗余性
6.面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是( )。
A.模拟现实世界中不同事物之间的联系
B.强调模拟现实世界中的算法而不强调概念
C.使用现实世界的概念抽象地思考问题从而自然地解决问题
D.不强调模拟现实世界中的算法而强调概念
7.对如下二叉树进行后序遍历的结果为( )。
2015年计算机二级《C语言》考试上机测试题(1)
A.ABCDEF
B.DBEAFC
C.ABDECF
D.DEBFCA
8.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指( )。
A.模块间的关系
B.系统结构部件转换成软件的过程描述
C.软件层次结构
D.软件开发过程
9.两个或两个以上模块之间关联的紧密程度称为( )。
A.耦合度
B.内聚度
C.复杂度
D.数据传输特性
10.下列描述错误的是( )。
A.继承分为多重继承和单继承
B.对象之间的通信靠传递消息来实现
C.在外面看不到对象的内部特征是基于对象的“模块独立性好”这个特征
D.类是具有共同属性、共同方法的对象的集合
11.数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是( )。
A.DB包含DBS和DBMS
B.DBMS包含DB和DBS
C.DBS包含DB和DBMS
D.没有任何关系
12.下列合法的声明语句是( )。
A.int_abc=50;
B.double int=3+5e2.5;
C.long do=1L:
D.float 3_asd=3e-3;
13.设x、Y和z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是( )。
A.x&&Y
B.x<=Y
C.x‖y+z&&y-z
D.!((x 14.若ch为char型变量,k为int型变量(已知字符a的ASCIl码是97),则执行下列语句后输出的结果为( )。
ch=’b’;
k=10:
printf("%X,%o,",ch,ch,k);
printf("k=%%d\n",k);
A.因变量类型与格式描述符的类型不匹配,输出无定值
B.输出项与格式描述符个数不符,输出为0值或不定值
C.62,142,k一%d
D.62,142,k一%l0
15.有下列程序: 、
fun(int X,int y){return(x+y);)
main()
{ int a=1,b=2,c=3,sum;
sum=fun((a++,b++,a+b),c++);
printf("%d\n",sum);
}
执行后的输出结果是( )。
A.6
B.7
C.8
D.9
16.假定x和Y为double型,则表达式x=2,y—x+3/2的值是( )。
A.3.500000
B.3
C.2.000000
D.3.000000
17.有如下程序:
main()
{int x=1,a=0,b=0;
switch(x)
{
case 0:b++;
case l:a++;
case 2:a++;b++;
)
printf("a=%d,b=%d\n",a,b);
)
该程序的输出结果是( )。
A.a=2,b=1
B.a=1,b=1
C.a=1,b=0
D.a=2,b=2
18.下列程序的输出结果是( )。
main()
{int i=1,j=2,k=3;
if(i++= =1&&(++j= =3= =‖k++= =3))
printf("%d%d%d\n",i,J,k);
)
A.1 2 3
B.2 3 4
C.2 2 3
D.2 3 3
19.下列程序的输出结果是( )。
#include
main()
{ int a=0,i;
for(i=1;i<5;i++)
{ switch(i)
{ case 0:
case 3:a+=1;
case l:
case 2:a+=2;
default:a+=3;
)
printf("%d",i);
)
A.19 B.1 C.6 D.8
20.有以下程序:
main()
{int X,i;
for(i=1;i<=50;i++)
{x=i;
if(X%2=O)
if(x%3=O)
if(X%7=0) .
printf("%d,i)";
)
)
输出结果是( )。
A.28
B.27
C.42
D.41
21.以下程序的输出结果是( )。
main()
{int a[3][3]={{1,2},{3,4),{5,6}},i,j,s=0;
for(i=1;i<3;i++)
for(j=0;j<=i;j++)s+=a[i][j];
printf("%d\n",s);
}
A.18
B.19
C.20
D.21
22.有下列程序:
main()
{ int k=5;
while(--k) printf("%d",k=1);
printf("/n");
)
执行后的输出结果是( )。
A.1
B.2
C.4
D.死循环
23.若有定义:“int a[2][3];”,则对a数组的第i行第J列元素的正确引用为( )。
A.*(*(a+i)+j)
B.(a+i)[j]
C.*(a+i+j)
D.*(a+i)+j
24.下列能正确进行字符串赋值的是( )。
A.char s[5]={"ABCDE"};
B.char s[5]={’A’,’B’,’C’,’D’,’E’}; 、
C.char*S;S="ABCDE";
D.char*s;printf("%《",s);
25.现有以下结构体说明和变量定义,如图所示,指针P、q、r分别指定一个链表中连续的3个结点。
2015年计算机二级《C语言》考试上机测试题(1)
struct node
{har data;
struct node*next;)*P,*q,*r;
现要将q和r所指结点交换前后位置,同时要保持链表的结构,下列不能完成此操作的语句是( )。
A.q-:>next=r->next;p--:>next=r;rm:>next=q;
B.q-:>next=r;q->next=r->next;r->next=q;
C.q-:>next=r->next;r->next=q;p->next=r;
D.q-:>next=q;p->next=r;q->next=r->next;
26.有下列程序:
main()
{int i,j,x=0;
for(i=0,i<2;i++)
{x++;
for(j=0;j<=3;j++)
{if(j%2)continue;
x++:
)
x++:
}
printf("x=%d\n"x);
}
程序执行后的输出结果是( )。
A.x=4
B.x=8
C.x=6
D.x=12
27.有下列程序:
int funl(double a){return a*=a;} 、
int fun2(double x,double y)
{double a=0,b=0;
a=funl(x);b=funl(y);return(int)(a+b);
)
main()
{double w;w=fun2(1.1,2.0),……}
程序执行后变量w中的值是( )。 、
A.5.21 B.5 C.5.0 D.0.0
28.有下列程序:
main()
{int i,s=0,t[]={1,2,3,4,5,6,7,8,9};
for(i=0;i<9;i+=2)s+=*(t+i);
printf("%d\n",s);
}
程序执行后的输出结果是( )。
A.45
B.20
C.25
D.36
29.有下列程序:
int fun(int n)
{if(n= =1))return l;
else
return(n+fun(n-1)):
}
main()
{ int x;
seanf("%d",&x);x=fun(x);printf("%d\n",x);
}
执行程序时,给变量x输入l0,程序的输出结果是( )。
A.55
B.54
C.65
D.45
30.有下列程序:
int fun(int x[],int n)
{ static int sum=0,i;
for(i=0;i return sum;
}
main()
{int a[3]={1,2,3,4,5),b[3]={6,7,8,9),s=0;
s=fun(a,5)+fun(b,4);printf("%d\n",s);
程序执行后的输出结果是( )。 、
A.45
B.50
C.60
D.55
31.有下列程序:
main()
f char*P[]={"3697","2584");
int i,j;long num=0;
for(i=0;i<2;i++)
{j=0;
while(p[i][j]!=’\0’)
{if((p[i][j]-t\0’)%2)num=10*num+p[j][j]-’0’;
j+=2;
)
)
printf("%d\n",num);
)
程序执行后的输出结果是( )。
A.35 B.37 C.39 D.3975
32.以下程序的输出结果是( )。
main()
{ char st[20]="hell0\O\t\\\”;
printf("%d%d\n",strlen(st),sizeof(st));
}
A.9 9
B.5 20
C.13 20
D.20 20
33.若有下的定义:"int t[3][2];",能正确表示t数组元素地址的表达式是( )。
A.&t[3][2]
B.t[3]
C.t[l]
D.t[2][2]
34.函数fseek(pf,OL,SEEK_END)中的SEEK_END代表的起始点是( )。
A.文件开始
B.文件末尾
C.文件当前位置
D.以上都不对
35.下述程序的输出结果是( )。
#include
main()
{int i;
for(i=1;i<=10;i++)
{if(i*i>=20)&&(i*i<=lOO))
break;
}
printf("%d\n",i*i);
)
A.49
B.36
C.25
D.64
36.若有定义“int b[8],*p=b;”,则p+6表示( )。
A.数组元素b[6]的值
B.数组元素b[6]的地址
C.数组元素b[7]的地址
D.数组元素b[0]的值加上6
37.设变量已正确定义,则以下能正确计算f=n!的程序是( )。
A.f=0; for(i=1;i<=n;i++)f*=i;
B.f=1;for(i=1;i C.f=1;for(i=n;i>1;i++)f*=i;
D.f=1;for(i=n;i>=2;i--)f*=i;
38.下述程序执行的输出结果是( )。
#include
main()
{char a[2][4]; ,
strcpy(a。"are");strcpy(a[1],"you");
a[o][3]=’&’;
printf("%s\n",a);
)
A.are&you
B.you
C.are
D.&
39.设x=011050,则x=x&01252的值是( )。
A.0000001000101000
B.1111110100011001
C.0000001011100010
D.1100000000101000
40.在“文件包含,,预处理语句的使用形式中,当#include后面的文件名用(双引号)括时,寻找被包含文件的方式是( )。
A.直接按系统设定的标准方式搜索目录
B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索
C.仅仅搜索源程序所在目录
D.仅仅搜索当前目录
全国计算机二级C语言考试要学多久?
全国计算机二级C语言考试大概需要2个月左右的时间。关于复习方法:要准备好复习资料。这里推荐做题库,不推荐购买模拟题。个人建议可以先把公共基础知识的先看一遍背下来。比如什么栈啊、链表啊、投影关系啦、软件生命周期啦等等这些全靠背的。程序设计题,这个要自己做标注。 求最大值,求最小值,求次大值,次小值,从小到大排,从大到小排,按135246排,然后这个让你求的可能是数组,矩阵,字符串,可能涉及到结构体,链表,指针。这些你现在都不懂,都没关系,但你一定要耐着性子整理一下,看完一遍。把重点放在复习主观大题上,c语言的评分分布为选择40分,改错18分,填空18分,设计题24分,所以,在适当重视选择客观题的同时,重心应当放在复习主观题上,攻克了主观题,就有大概率能够通过考试。做题的机巧就是你可以随便填但是要根据题目的要求直到运行后是对的为止,这样有无限次机会可以试,会c语言的一般最后填着填着就对了。C语言概述:C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言语言标准:起初,C语言没有官方标准。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。布莱恩·柯林汉(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本书,名叫《The C Programming Language》。这本书被 C语言开发者们称为K&R,很多年来被当作 C语言的非正式的标准说明。人们称这个版本的 C语言为K&R C。C语言语言特色:高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。代码级别的跨平台:由于标准的存在,使得几乎同样的C代码可用于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。
计算机二级考试C语言用啥软件
计算机二级考试C语言用的软件是:Visual C++2010 学习版其他科目考试所用软件:1、《C++语言程序设计》用的软件是:Visual C++2010 学习版2、《Visual Basic语言程序设计》用的软件是:Visual Basic 6.0 简体中文专业版3、《Java 语言程序设计》用的软件是:NetBeans 中国教育考试版 20074、《Access 数据库程序设计》用的软件是:MS Access 20105、《Python 语言程序设计》用的软件是:Python 3.5.2 版本及以上 IDLE [6] 6、《MySQL 数据库程序设计》用的软件是:MySQL( Community 5.5.16 ) 7、《MS Office 高级应用》用的软件是:MS Office 2010 8、《Web 程序设计》用的软件是:NetBeans 中国教育考试版,IE6.0 及以上 扩展资料题型及分值比例1、MS Office 高级应用(1)单项选择题,20分(含公共基础知识部分10分)。(2)文字处理题(Word),30分。(3)电子表格题(Excel),30分。(4)演示文稿题(PowerPoint),20分。2、C语言程序设计(1)单项选择题,40题,40分(含公共基础知识部分10分)。(2)程序填空题,2~3个空,18分。(3)程序改错题,2~3处错误,18分。(4)程序设计题,1题,24分。3、Python语言程序设计(1)单项选择题,40题,40分(含公共基础知识部分10分)。(2)简单编程题,5题,40分。(3)综合编程题,1题,20分。参考资料来源:百度百科——计算机考试