选择题.docx

上传人:b****6 文档编号:3616485 上传时间:2022-11-24 格式:DOCX 页数:41 大小:57.89KB
下载 相关 举报
选择题.docx_第1页
第1页 / 共41页
选择题.docx_第2页
第2页 / 共41页
选择题.docx_第3页
第3页 / 共41页
选择题.docx_第4页
第4页 / 共41页
选择题.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

选择题.docx

《选择题.docx》由会员分享,可在线阅读,更多相关《选择题.docx(41页珍藏版)》请在冰豆网上搜索。

选择题.docx

选择题

[1-1]在C语言中,合法的字符常量是(D)。

A)'字'B)"A"C)"ABC"D)'\x41'

[1-2]在C语言中,用户是能使用的合法标识符(B)。

A)姓名B)_xyzC)5iD)for

[1-3]在C语言中,不合法的实型常量是(D)。

A)-0.123B)-.123C)-1.23e-1D)-123e-3.0

[2-1]C语言的下列运算符中,优先级最高的运算符是(A)。

A)++B)+=C)||D)!

=

[2-2]设有说明语句intk,i=5,j=10;,则表达式k=(++i)*(j--)的值是(B)。

A)50B)60C)45D)55

[2-3]设有说明语句inti,j;,则表达式i>=j||i

A)视i、j的具体值而定B)FALSEC)TRUED)1

[3-1]已知'A'的ASCII码的十进制值为65,'0'的ASCII码的十进制值为48,则以下程序运行

结果是(A)。

main()

{charch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

printf("%d,%c\n",ch1,ch2);}

A)67,DB)C,DC)C,68D)67,68

[3-2]设有语句intx=2,y=3;,则表达式x=(y==3)的值是(B)。

A)0B)1C)2D)3

[3-3]以下程序的运行结果是(B)。

main()

{unsigneda=0x3ef,b;

b=a<<2;

printf("%x,%x\n",a,b);

}

A)3ef,fbB)3ef,fbcC)fbc,3efD)fbc,fbc

[4-1]下列语句中,符合C语言语法的赋值语句是(C)。

A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,b++,a+7;D)a=7=b,c=a+7;

[4-2]为表示x≥y≥z,须用的C语言表达式为(A)。

A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=x)

C)x>=y>=zD)(x>=y)&(y>=z)

[4-3]设inta,b;,用语句scanf('%d%d",&a,&b);输入a、b值时,不能作为输入数据分隔符的是(B)。

A)空格B),C)回车D)[Tab]

[5-1]以下程序运行时,若从键盘输入5,则输出结果是(D)。

main()

{inta;

scanf("%d",&a);

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

elseprintf("%d\n",a--);}

A)7B)4C)5D)6

[5-2]以下程序的运行结果是(A)。

main()

{inta,b,c;

a=b=c=1;

if(a++||++b)c++;

printf("%d,%d,%d\n",a,b,c);}

A)2,1,2B)1,2,1

C)2,2,2D)2,2,1

[5-3]以下程序的运行结果是(A)。

main()

{inti=3,j=2,k;

k=i+j;

{intk=8;

if(i==3)printf("%2d",k);

elseprintf("%2d",j);}

printf("%2d%2d\n",i,k);}

A)835B)838

C)383D)583

[6-1]有以下程序:

main()

{intc;

while((c=getchar())!

='\n')

{switch(c-'2')

{case0:

case1:

putchar(c+4);

case2:

putchar(c+4);break;

case3:

putchar(c+3);

default:

putchar(c+2);break;}}

printf("\n");}

当输入:

247<回车>,程序的输出结果是(B)。

A)689B)6689C)66778D)66887

[6-2]以下程序的运行结果是(B)。

main()

{inta=1,b=0;

switch(a)

{case1:

switch(b)

{case0:

printf("0000\n");

case1:

printf("1111\n");break;}

case2:

printf("2222\n");break;}}

A)0000

1111

B)0000

1111

2222

C)0000

2222

D)1111

2222

[6-3]以下程序的运行结果是(C)。

voidmain()

{inta=1;

switch(a)

{case1:

printf("aaaa\n");

case2:

printf("bbbb\n");break;

default:

printf("cccc\n");}}

A)aaaa

B)aaaa

bbbb

cccc

C)aaaa

bbbb

D)aaaa

cccc

[7-1]以下程序运行后,a的值是(D)。

main()

{inta,b;

for(a=1,b=1;a<=100;a++)

{if(b>=20)break;

if(b%3==1){b+=3;continue;}

b-=5;}}

A)101B)100C)8D)7

[7-2]以下程序段的运行结果是(D)。

main()

{inti,j;

i=10;

j=20;

for(;j>=0;j-=20)

{if(i=j)printf("Good!

");

elseprintf("Notgood!

");}}

A)Good!

Good!

B)Notgood!

C)Good!

D)Good!

Notgood!

[7-3]以下程序的运行结果是(A)。

main()

{inta,b,c,n=13;

printf("ABC\n");

for(a=1;a<=n;a++)

for(b=1;b<=n;b++)

for(c=b;c<=n;c++)

if(a*a==b*b+c*c)

printf("%3d%3d%3d\n",a,b,c);}

A)ABC

534

1068

13512

B)ABC

354

6108

51312

C)ABC

453

8106

12135

D)ABC

543

1086

13125

[8-1]以下程序段的运行结果是(D)。

intx=3;

do{

printf("%3d,",x-=2);

}while(!

(--x));

A)1B)30

C)死循环D)1,-2

[8-2]设E为表达式,以下与do…while(E);不等价的语句是()。

[答]C,1.1

A)do…while(!

E==0);B)do…while(E>0||E<0);

C)do…while(E==0);D)do…while(E!

=0);

[8-3]以下程序的运行结果是(D)。

main()

{inti,s;

i=0;

s=1;

do{

s/=s+1;

i++;}

while(i<=10);

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

A)102B)112

C)100D)110

[9-1]下列程序段中,非死循环的是(A)。

A)inti=100;

while

(1)

{i=i%100+1;

if(i>=100)break;}

B)intk=0;

do{

++k;}

while(k>=0);

C)ints=10;

while(++s%2+s%2)s++;

D)for(;;)

[9-2]循环语句循环体中执行continue语句,其作用是(C)。

A)立即终止程序运行B)继续执行continue语句之后的循环体各语句

C)结束本次循环D)结束本次循环,跳出循环

[9-3]下列do...while循环的循环次数是(D)。

inti=5;

do{

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

i--;

}while(i!

=0)

A)0B)2C)5D)死循环

[10-1]设已定义chars[]="\"Name\\Address\023\n";,则字符串所占的字节数是(B)。

A)19B)15C)18D)14

[10-2]已定义charx[8];inti;,为了给该数组赋值,下列语句正确的是(D)。

A)x[8]="TurboC";B)x="TurboC";

C)x[]="TurboC";D)for(i=0;i<7;i++)x[i]=getchar();

[10-3]设inta[][4]={0,0};,则下列描述错误的是(D)。

A)数组a的每个元素的值为0B)二维数组a的第一维大小为1

C)数组a有4个元素D)只有元素a[0][0]和a[0][1]的值为0,其余元素的值不确定

[11-1]以下程序段的运行结果是(D)。

main()

{inti=4,j;

j=i;

pic(i+2*j-2,'*');

putchar('\n');

for(j-=2;j>=0;j--)

{pic(3-j,'');

pic(i+2*j,'*');

putchar('\n');}}

pic(intlen,charc)

{intk;

for(k=1;k<=len;k++)putchar(c);}

A)*

***

*****

*******

B)**********

**********

**********

**********

C)****

******

********

**********

D)**********

********

******

****

[11-2]以下程序运行结果是(B)。

main()

{chara[][5]={"ABCD","1234","abcd","5678","EFGH"};

inti;

for(i=0;i<3;i++)printf("%s",a[i]);}

A)A1aB)ABCD1234abcd

C)ABCD)ABCD1234abcd5678EFGH

[11-3]以下程序的运行结果是(A)。

main()

{intarray[4][4];

inti,j;

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

for(j=0;j<4;j++)array[i][j]=i+j;

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

for(j=0;j<4;j++)

if(i==j||i+j==3)array[i][j]=0;

for(j=0;j<4;j++)printf("%2d",array[2][j]);

printf("\n");}

A)2005B)1004C)0120D)0450

[12-1]设有下列语句,则(D)是对a数组元素的不正确引用,其中0≤i<10。

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

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

[12-2]若有以下程序:

main

{charch[]="Iamstudent!

",*p;

p=ch

printf("%x\n",p);

printf("%x\n",p+9);}

其中第一个printf()运行结果是ffd6,则第二个printf()运行结果是(A)。

A)ffdfB)ffe8C)ffd6D)ffcf

[12-3]以下程序的运行结果是(D)。

main()

{inti;

charaa[][3]={'a','b','c','d','e','f'};

char(*p)[3]=aa;

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

if(i==0)aa[i][i+1]=**(p++);

printf("%c\n",**p);}

A)aB)bC)cD)d

[13-1]设有下列语句:

charstr1[]="string",str2[8],*str3,*str4="string";

则(A)是对库函数strcpy的不正确调用。

此函数用来复制字符串。

A)strcpy(str3,"HELLO3");B)strcpy(str2,"HELLO2");

C)strcpy(str1,"HELLO1");D)strcpy(str4,"HELLO4");

[13-2]若有以下定义和语句,且0≤i<4,0≤j<3,则不能访问a数组中的元素的是(D)。

inti,(*p)[3];

inta[][3]={1,2,3,4,5,6,7,8,9,10,11,12};

p=a;

A)*(*(a+i)+j)B)p[i][j]

C)(*(p+i))[j]D)p[i]+j

[13-3]以下关于指针概念的叙述中,错误的是(C)。

A)一个指针变量只能指向同一类型的变量B)一个变量的地址称为该变量的指针

C)两个同类型的指针变量可以作加减运算D)任何指针变量都可以与空指针NULL进行比较

[14-1]以下程序的运行结果是(C)。

fun3(intx)

{staticinta=3;

a+=x;

returna;}

main()

{intk=2,m=1,n;

n=fun3(k);

n=fun3(m);

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

A)3B)4C)6D)9

[14-2]以下程序运行后,输出的结果是(C)

func(inta)

{staticintm=0;

m+=a;

return(m);}

main()

{intk=4,p;

p=func(k);printf("%d,",p);

p=func(k);printf("%d\n",p);}

A)4,4B)0,4C)4,8D)8,8

[14-3]以下程序的运行结果是(B)

age(n)

intn;

{intc;

if(n==1)c=10;

else

if(n%2==0)c=age(n-1)+2;

elsec=age(n-1)+3;

return(c);}

main()

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

A)18B)20C)10D)21

[15-1]以下程序的运行结果是(A)。

voidast(intx,inty,int*cp,int*dp)

{*cp=x+y;*dp=x-y;}

main()

{inta=4,b=3,c,d;

ast(a,b,&c,&d);

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

A)7,1B)1,7C)7,-1D)c、d未赋值,编译出错

[15-2]以下程序的输出结果是(D)。

swap(int*p,int*q)

{intt;

t=*p;*p=*q;*q=t;}

main()

{inta=10,b=20;

swap(&a,&b);

printf("%d,%d\n",a,b);}

A)10,10B)20,20C)10,20D)20,10

[15-3]以下程序的运行结果是(D)。

main()

{voidchange_p();

int*p,a[]={1,4,7,10};

p=&a[1];

change_p(p);

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

voidchange_p(int*pi)

{*pi+=2;

pi+=2;

*pi+=2;}

A)7B)8C)5D)6

[16-1]以下程序段的运行结果是(B)。

enumweekday{aa,bb=2,cc,dd,ee}week=ee;

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

A)eeB)5C)2D)4

[16-2]以下对枚举类型进行定义,不正确的是(A)。

A)enumb{1,2,3};B)enuma{A,B,C};

C)enumc{D=3,E,F};D)enumd{X=0,Y=5,Z=9};

[16-3]在C程序中,设一表达式含有int、long、unsigned和char类型的常数和变量,则表达式的最后运算结果是(D)。

A)intB)charC)unsignedD)long

[17-1]若定义如下结构,则能打印出字母M的语句是(B)。

structperson{

charname[9];

intage;};

structpersonclass[10]={"Wujun",20,

"Liudan",23,

"Maling",21,

"zhangming",22};

A)printf("%c\n",class[3].name);B)printf("%c\n",class[2].name[0]);

C)printf("%c\n",class[2].name[1]);D)printf("%c\n",class[3].name[1]);

[17-2]以下程序的运行结果是(B)。

main()

{unionu_type

{inti;

doublex;

floatf;};

structstr_type

{charstr[100];

unionu_typeu[2];};

printf("%d\n",sizeof(structstr_type));}

A)100B)116C)120D)200

[17-3]以下程序的输出结果是(C)。

main()

{unionexample

{struct

{intx;

inty;}

in;

inta[2];}

e={0,0};

e.a[0]=1;e.a[1]=2;

printf("%d,%d\n",e.in.x,e.in.y);}

A)2,1B)0,0C)1,2D)0,1

[18-1]以下程序的输出结果是(A)。

main()

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

fac(intn)

{ints;

if(n==1)return1;

elsereturnn*fac(n-1);}

A)120B)60C)6D)1

[18-2]以下程序的运行结果是(D)。

main()

{charch[7]="12xy89";

inti,s=0;

for(i=0;ch[i];i++)

if(ch[i]>='0'&&ch[i]<='9')s=10*s+ch[i]-'0';

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

A)12B)xyC)12xy89D)1289

[18-3]以下程序运行后,输出的结果是(B)。

fun(char*w)

{chart,*s1,*s2;

for(s1=w,s2=w+strlen(s1)-1;s1

{t=*s1;

*s1=*s2;

*s2=t;}}

main()

{char*p="12345";

fun(p);

puts(p);}

A)12345B)54321C)15115D)51551

[19-1]以下程序中的循环执行了(C)次

#defineN2

#defineMN+1

#defineNUM(M+1)*M/2

main()

{inti,n=0;

for(i=0;i

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

A)5B)6C)8D)9

[19-2]以下程序的输出结果是(C)。

#defineSUM(y)1+y

main()

{intx=2;

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

A)10B)11C)12D)15

[19-3]以下程序的运行结果是(A)。

#defineM(x,y)x*y

main()

{inta=3,b=2,s1,s2,f12();

s1=M(a+b,a-b);

s2=M(a-b,a+b);

printf("%d,%d,%d,%d\n",s1,s2,f12(a+b,a-b),f12(a-b,a+b));}

f12(intx,inty)

{return(x*y);}

A)7,-1,5,5B)5,5,7,-1C)5,5,5,5D)7,-1,7,-1

[20-1]以下程序的功能是(C)。

#include

main()

{FILE*fp;

longintn;

fp=fopen("wj.txt","rb");

fseek(fp,0,SEEK_END);

n=ftell(fp);

fclose(fp);

printf("%ld",n);}

A)计算文件wj.txt的起始地址B)计算文件wj.txt的终止地址

C)计算文件wj.txt的长度D)将文件指针定位到文件末尾

[20-2]标准函数fgets(s,n,f)的功能是(B)。

A)从文件f中读取长度为n的字符串存入指针s所指的内存

B)从文件f中读取长度不超过n-1的字符串存入指针s所指的内存

C)从文件f中读取n个字符串存入指针s所指的内存

D)从文件f中读取长度为n-1的字符串存入指针s所指的内存

[20-3]以下程序的可执行文件名是file.exe。

main(argc,argv)

int

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

当前位置:首页 > 高中教育 > 语文

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

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