江苏省计算机二级C语言试题笔试3.docx

上传人:b****5 文档编号:11843802 上传时间:2023-04-05 格式:DOCX 页数:10 大小:18.48KB
下载 相关 举报
江苏省计算机二级C语言试题笔试3.docx_第1页
第1页 / 共10页
江苏省计算机二级C语言试题笔试3.docx_第2页
第2页 / 共10页
江苏省计算机二级C语言试题笔试3.docx_第3页
第3页 / 共10页
江苏省计算机二级C语言试题笔试3.docx_第4页
第4页 / 共10页
江苏省计算机二级C语言试题笔试3.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

江苏省计算机二级C语言试题笔试3.docx

《江苏省计算机二级C语言试题笔试3.docx》由会员分享,可在线阅读,更多相关《江苏省计算机二级C语言试题笔试3.docx(10页珍藏版)》请在冰豆网上搜索。

江苏省计算机二级C语言试题笔试3.docx

江苏省计算机二级C语言试题笔试3

江苏省C等级考试(四)

一、选择题(本题共20道小题,共40分。

1.(14)指针s所指字符串的长度为

char*s="\\"Name\\Address\n";

A)19B)15C)18D)说明不合法

2.若有下面的程序片段:

inta[12]={0},*p[3],**pp,i;

for(i=0;i<3;i++)

p[i]=&a[i*4];

pp=p;

则对数组元素的错误引用是

A)pp[0][1]B)a[10]C)p[3][1]D)*(*(p+2)+2)

3.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为

A)a<>0B)!

a

C)a=0D)a

4.若已定义:

inta[]={0,1,2,3,4,5,6,7,8,9],*p=a,i;

其中0≤i≤9,则对a数组元素不正确的引用上

A)a[p-a]B)*(&a[i])C)p[i]D)a[10]

5.以下程序的输出结果是

main()

{intx=10,y=10,I;

for(i=0;x>8;y=++i)

printf("%d,%d",x--,y);

}

A)10192B)9876C)10990D)101091

6.下面程序的输出是

voidprtv(int*x)

printf("%d\n",++*x);}

main()

{inta=25;

prtv(&a);}

A)23B)24

C)25D)26

7.下面能正确进行字符串赋值操作的语句是

A)chars[5]={"ABCDE"};B)chars[5]={'A'、'B'、'C'、'D'、'E'};

C)char*s;s="ABCDEF";D)char*s;scanf("%s",s);

8.设x,y,z,t均为int型变量,则执行以下语句后,t的值为

x=y=z=1;t=++x||++y&&++z;

A)不定值B)2C)1D)0

9.设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是

A)k=*p1+*p2;

B)p2=k;

C)p1=p2;

D)k=*p1*(*p2);

10.请读程序:

#include

#defineSUB(X,Y)(X)*Y

main()

{inta=3,b=4;

printf("%d",SUB(a++,b++));

}

上面程序的输出结果是

A)12B)15

C)16D)20

11.sizeof(float)是:

A)int

B)float

C)double

D)不确定

12.若执行下面的程序时从键盘上输入3和4,则输出是

main()

{inta,b,s;

scanf("%d%d",&a,&b);

s=a;

if(a

s=s*s;

printf("%d\n",s);}

A)14B)16C)18D)20

13.以下程序的输出结果是

#include

main()

{printf("%d\n",NULL);}

A)不确定的(因变量无定义)B)0C)-1D)1

14.请读程序:

#include

f(char*s)

{char*p=s;

while(*p!

='\0')p++;

return(p-s);

}

main()

{printf("%d\n",f("ABCDEF"));}

上面程序的输出结果是

A)3B)6C)8D)0

15.下面各语句行中,能正确进行赋字符串操作的语句行是

A)charst[4][5]={"ABCDE"};B)chars[5]={'A','B','C','D','E'};

C)char*s;s="ABCDE";D)char*s;scanf("%s",s);

16.若有说明:

long*p,a;则不能通过scanf语句正确给输入项读入数据的程序段是

A)*p=&a;scanf("%ld",p);

B)p=(long*)malloc(8);scanf("%ld",p);

C)scanf("%ld",p=&a);

D)scanf("%ld",&a);

17.若已定义:

inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是

A)p+1B)a+1C)a++D)++p

18.下面程序的输出是

main()

{enumteam{my,your=4,his,her=his+10};

printf("%d%d%d%d\n",my,your,his,her);}

A)0123B)04010C)04515D)14515

19.以下程序输出结果是

main()

{

intm=5;

if(m++>5)printf("%d\n",m);

elseprintf("%d\n",m--);

}

A)7B)6

C)5D)4

20.以下程序运行后,输出结果是intd=1;

fun(intp)

{

intd=5;

d+=p++;

printf("%d",d);

}

main()

{

inta=3;

fun(a);

d+=a++;

printf("%d\n",d);

}

A)84B)99C)95D)44

二、填空题(每空1分,共10分。

1.程序由主要由__________、_________组成。

2.在C语言中,不同运算符之间运算次序存在_________的区别,同一运算符之间运算次序存在________的规则。

3.欲将字符串S1复制到字符串S2中,其语句是____________。

4.结构化程序设计中的三种基本结构是_________、__________、___________。

5.表达式x=x+1表示成增量表达式为___________。

6.定义inta[]={1,2,3,4,5,6},*p=a;表达式(*++p)++的值是____________。

三、判断题(本题共10道小题,共10分。

1.在不得已的情况下(例如提高程序运行效率),才使用goto语句()

2.条件表达式可以取代if语句,或者用if语句取代条件表达式()

3.在C程序中对用到的所有数据都必须指定其数据类型()

4.可以对字符型数组进行整体输入、输出()

5.函数中的静态变量在函数每次调用时,都会重新设置初值()

6.实参和与其对应的形参共占用一个存储单元()

7.一个实型变量的值肯定是精确的()

8.在不同函数中可以使用相同名字的变量()

9.函数调用:

strcat(strcpy(str1,str2),str3)的功能是将串str2连接到串str1之后再将串str1复制到串str3中()

10.系统不允许用户重新定义标准库函数()

四、程序填空(本题共5道小题,每题4分,共20分。

1.22、下面程序的运行结果是________。

#include

main()

{inti=5;

charc[6]="abcd";

do

{

c[i]=c[i―1];

}while(――i>0);

puts(c);

}

2.以下程序的执行结果是____________。

#include<stdio.h>

main()

{

inta[3][3]={1,2,3,4,5,6,7,8,9},i,s=0;

for(i=0;i<=2;i++)

s=s+a[i][i];

printf("s=%d\n",s);

}

3.以下程序中,for循环体执行的次数是______________。

#defineN2

#defineMN+1

#defineKM+1*M/2

main()

{inti;

for(i=1;i

{...}

...

}

4.以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。

请填空。

voidsstrcpy(char*s,char*t)

{while(*s++=_____________);}

main()

{charstr1[100],str2[]="abcdefgh";

sstrcpy(str1,str2);

printf("%s\n",str1);

}

5.14、以下fun函数把ch中的大写字母转换成字母序列中的下一个大写字母,字母Z转换成字母A,其它字符不变,返回转换后的字母或其它字符。

请填空。

charfun(charch)

{

if(ch=='Z')ch=__________;

elseif(ch>='A'&&ch<='Y')ch=__________;

returnch;

}

五、编程题(本题共2道小题,共20分。

1.从键盘输入一个一维数组,将这个数组逆序输出。

2.编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。

例如,假定输入的字符串为:

asdasasdfgasdaszx67asdmklo,子字符串为:

as,则应输出6。

江苏省C等级考试(四)

一、选择题(本题共20道小题,共40分。

1.B

2.C

3.D

4.D

5.D

6.D

7.C

8.C

9.B

10.A

11.C

12.B

13.B

14.B

15.C

16.A

17.C

18.C

19.B

20.A

二、填空题(每空1分,共10分。

1.数据结构,算法

2.先后,结合性

3.strcpy(s2,s1)

4.顺序,选择,循环

5.x++或++x

6.3

三、判断题(本题共10道小题,共10分。

1.错

2.错

3.对

4.错

5.错

6.错

7.错

8.对

9.错

10.对

四、程序填空(本题共5道小题,每题4分,共20分。

1.aabcd

2.s=15

3.4

4.*t++

5.'A',ch+1

五、编程题(本题共2道小题,共20分。

1.#defineN5

main()

{inta[N]={9,6,5,4,1},i,temp;

 printf("\noriginalarray:

\n");

 for(i=0;i

 printf("%4d",a[i]);

 for(i=0;i

 {temp=a[i];

  a[i]=a[N-i-1];

  a[N-i-1]=temp;

 }

printf("\nsortedarray:

\n");

for(i=0;i

 printf("%4d",a[i]);

}

2.#include"stdio.h"

#include"string.h"

#include"conio.h"

intfun(char*str,char*substr)

{inti,n=0,s=strlen(str);

for(i=0;i

if((str[i]==substr[0])&&(str[i+1]==substr[1]))

n++;

returnn;

}

main()

{

charstr[81],substr[3];

intn;clrscr();

printf("enter1:

");

gets(str);

printf("enter2:

");

gets(substr);

puts(str);

puts(substr);

n=fun(str,substr);

printf("n=%d\n",n);

}

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1