专升本C语言100题及答案.docx

上传人:b****2 文档编号:23041846 上传时间:2023-04-30 格式:DOCX 页数:33 大小:53.29KB
下载 相关 举报
专升本C语言100题及答案.docx_第1页
第1页 / 共33页
专升本C语言100题及答案.docx_第2页
第2页 / 共33页
专升本C语言100题及答案.docx_第3页
第3页 / 共33页
专升本C语言100题及答案.docx_第4页
第4页 / 共33页
专升本C语言100题及答案.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

专升本C语言100题及答案.docx

《专升本C语言100题及答案.docx》由会员分享,可在线阅读,更多相关《专升本C语言100题及答案.docx(33页珍藏版)》请在冰豆网上搜索。

专升本C语言100题及答案.docx

专升本C语言100题及答案

C语百精编100题

、单选题

1.

由C语言编写的代码程序()

A.可直接执行B.是一个源程序

C.经过编译即可执行D.经过编译解释才能执行

2.

按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()

A.大写字母B.中划线C.数字字符D.下划线

3.

下列选项中,不能用作标识符的是()

A._1234_B._1_2C.int_2_D.2_int_

4.

以下选项中合法的用户标识符是()

A.longB._2TestC.3DmaxD.A.dat

5.

以下不能定义为用户标识符的是()

A.MainB._0C._intD.sizeof

6.

下列定义变量的语句错误的是()

A.int_int;B.doubleint_;C.charFor;D.floatUS$;

7.

在C语言中,合法的实型常数是()

A.5E2.0B.E-3C.2E0D.1.3E

8.

在C语言中,合法的实型常数是()

A.1.2E0.5B.3.14159EC.5E-3D.E15

9.

以下选项中,不能作为合法常量的是()

A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0

10.

以卜不合法的数值常量是()

A.011B.le1C.8.0E0.5D.0xabcd

11.

在C语言中,非法的字符常量是()

A.'\t'B.''17'C."\n"D.'\xaa'

12.

以卜不合法的字符常量是()

A.''018'B.'\"'C.''D.'\xcc'

13.

下列运算符中优先级最高的运算符是()()

A.<=B.=C.%D.&&

A.==B./C.=D.>=

14.

以下程序的输出结果是()

main()

{inta=3,b=4;

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

A.3B.4C.1D.0

15.

在C语言中,以下非法的表达式是()

1/23

A.0<=x<=100B.i=j==0

C.(char)(65+3)

D.

x+1=x+1

16.

在C语言中,以下非法的赋值语句是()

A.j++;B.++(i+1);

C.x=j>0;

D.k=i==j;

17.

表达式3.6-5/2+1.2+5%2的值是()

A.4.3B.4.8

C.3.3

D.

3.8

18.

设有语句:

inta=3;则执行了语句a+=a-=a*a;

A.3B.0

变量a的值是()

C.9

D.

-12

19.

设有语句:

intx=10;则执行了语句x+=x-=x-x;

A.10B.20

变量x的值是()

C.40

D.

30

20.

以下程序的输出结果是()()()()()

(1)main()

{inti=10,j=1;

printf("%d,%d\n”,i--,++j);}

A.9,2B.10,2

C.9,1

D.

10,1

⑵main()

{inta=12,b=12;

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

A.1010B.1212

C.1110

D.

1113

⑶main()

{intx=023;

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

A.17B.18

C.23

D.

24

(4)main()

{intx=10,y=10;

printf("%d%d\n",x--,--y);}

A.1010B.99

C.910

D.

109

A.

⑸main()

{inti=010,j=10;

printf("%d,%d\n”,++i,j--);}

11,10B.9,10

C.010,9

D.

10,9

21.

22.

以下程序的输出结果是()

main()

{intx=100,y=200;

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

A.200

C.100200

以下程序的输出结果是()

main()

{intx=10,y=3,z;

2/23

B.100

D)200100

printf("%d\n",z=(x%y,x/y));}

A.1B.0C.4D.3

23.intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()

A.k++B.k+=1

C.++k

D.k+1

24.

25.

以下程序的输出结果是()

main()

{intx,y,z;

x=y=1;

z=x++,y++,++y;

printf("%d,%d,%d\n",x,y,z);}

A.2,3,3B.2,3,2

设x、y、t均为int型变量,则执行语句

C.2,3,1:

x=y=3;t=++x||++y;

D.2,2,1

后,y的值为()

26.

A.1B.2

设intx=-1;执行表iA式++x||++x||++x||++x,x

C.3

的值是()

D.4

27.

A.0B.1

以下程序的输出结果是

C.2

D.4

(1)main(){intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}()

A.k=11,k=12,k=11B.k=11,k=13,k=13

C.k=11,k=013,k=0xbD.k=11,k=13,k=b

(2)main(){intk=17;printf("%d,%o,%x\n",k,k,k);}()

A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,11

28.运行时从键盘上输入9876543210<CR>(<CR表示回车),则该程序的输出结果是()

main()

{inta;floatb,c;

scanf("%2d%3f%4f\n",&a,&b,&c);

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

A.a=98,b=765,c=4321B.a=10,b=432,c=8765

C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.0

29.设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量

A.6B.8

C.

10

D

31.

以下程序的输出结果是()

#defineM(x,y,z)x*y+z

main()

{inta=1,b=2,c=3;

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

A.19B.17

C.

15

D

32.

以下程序段的输出结果是()

#defineMIN(x,y)(x)<(y)?

(x):

(y)main()

{inti=10,j=15,k;

k=10*MIN(i,j);printf("%d\n",k);

}

A.15B.100

C.

10

D

33.

设a=1,b=2,c=3,d=4,贝U表a

a:

c

a:

d

的结果是()

A.4B.3

C.

2

D

34.

以下程序段的输出结果是()main()

{intx=5;

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

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

}

A.4B.5

C.

6

D

35.

有以下程序

main()

{intn=4;

while(n--)

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

}

程序执行后的输出结果是()

A.20B.31

C.

321

D

12

12

150

1

7

210

36.有以下程序

main()

{inty=10;

while(y--);printf("y=%d\n",y);}

程序执行后的输出结果是()

D.while构成无限循环

A.y=0B.y=-1

C.y=1

37.有以下程序

main()

{inti;

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

switch(i)

{case0:

printf("%d",i);

case1:

printf("%d",i);

default:

printf("%d",i);

}

}

程序执行后的输出结果是()

38.以下叙述中正确的是()

A.构成C程序的基本单位是函数

B.可以在一个函数中定义另一个函数

C.main()函数必须放在其它函数之前

D.所有被调用函数一定要在调用之前进行定义

39.以下说法中正确的是()

A.C语言程序总是从第一个函数开始执行

B.在C语言程序中,要调用的函数必须在main()函数中定义

C.C语言程序总是从main()函数开始执行

D.C语言程序中的main()函数必须放在程序的开始部分

40.以下程序的输出结果是()

intfun(intx)

{intp;

if(x==0||x==1)p=3;

elsep=x-fun(x-2);

returnp;}

main()

C.2D.0

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

A.7B.3

41.以下数组定义中错误的是()

A.intx[][3]={0};

B.intx[2][3]={{1,2},{3,4},{5,6}};

C.intx[][3]={{1,2,3},{4,5,6}};

D.intx[2][3]={1,2,3,4,5,6};

42.以下能正确定义二维数组的是()

A.inta口[3];

C.inta[][3]={};

43.以下程序的输出结果是()

main()

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

prlntf("%d\n",*(p+2));

}

A.3B.4C.1D.2

44.以下程序的输出结果是()

main()

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

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

}

A.0B.1C.10D.9

45.以下程序的输出结果是()

main()

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

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

A.16B.10

46.设有chararray[尸"China";

则数组array所占的空间字节数为()

A.4B.5

47.在C语言中,对于以下定义正确的叙述为charx[]="abcdefg";

chary[]={'a','b','c','d','e'3,'g'};

A.数组x和数组y等价

C.数组x的长度大于数组y的长度

48.以下不能正确进行字符串赋初值的语句是

A.charstr[5]="good!

";

B.char*str="good!

";

49.以下程序的输出结果是()

main()

{charstr[]="ABCD",*p=str;printf("%d\n",*(p+4));}

A.68B.'D'

50.以下程序的输出结果是()

main()

{charstr[]="aeiou",*p=str;

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

C.8D.6

C.6D.7

()

B.数组x和数组y的长度相同

D.数组x的长度大于数组y的长度

()

B.charstr[尸'good!

";

D.charstr[5]={'g','o','o','d'};

C.0D.'0'

C.eD.f

A.oB.u

二、填空题

51.一个C源程序至少应该有一个函数。

52.以下程序运行后的输出结果是。

main()

{intx=2006,y=2007;

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

53.

(1)以下程序运行后的输出结果是

main()

{inta=10;

printf("%d,%o,%x\n",a,a,a);

(2)以下程序运行后的输出结果是

main()

{inta,b,c;

a=25;b=025;c=Ox25;

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

(3)以下程序运行后的输出结果是

main()

{inta=1,b=2;

a=a+b;b=a-b;a=a-b;

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

54.

(1)以下程序运行后的输出结果是

main()

{charch='B';

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

(2)以下程序运行后的输出结果是

main()

{charch='B';

ch+=32;

printf("%c\n",ch);

(3)以下程序运行后的输出结果是

main()

{charch;

ch='H'-'A'+'0';

printf("%c\n",ch);

(4)以下程序运行后的输出结果是。

main()

{intc;

charch=97;

c=ch+1;

printf("%c%c\n",c,ch);

55.以下程序运行后的输出结果是。

main()

{floatx=123.4567;

printf("%f\n",(int)(x*100+0.5)/100.0);

56.有程序如下,要求给i赋10,给j赋20,则应该从键盘输入

main()

{inti,j;

scanf("i=%d,j=%d",&i,&j);

printf("i=%d,j=%d",i,j);

57.

(1)以下程序运行后的输出结果是。

main()

{inta=10;

a=(3*5,a+4);

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

(2)以下程序运行后的输出结果是。

main()

{inta=0,b=0,c=0;

c=(a+=a-=5),(a=b,b+3);

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

58.以下程序运行后的输出结果是。

main()

{inta=5,b=4,c=3,x;

x=a>b>c;

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

59.以下程序运行后的输出结果是。

main()

{inta=3,b=2;

b=a<0&&a++>3;

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

60.以下程序运行后的输出结果是。

main()

{inta,b,c=246;

a=c/100%9;

b=-1&&-1;

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

61.

(1)以下程序运行后的输出结果是

#defineMAX(x,y)(x)>(y)?

(x):

(y)main()

{inta=5,b=2,c=3,d=3,t;

t=MAX(a+b,c+d)*10;printf("%d\n",t);

(2)以下程序运行后的输出结果是

#defineS(x)4*x*x+1main()

{inti=6,j=8;

printf("%d\n",S(i+j));

62.以下程序运行后的输出结果是。

main()

{intx,a=1,b=2,c=3,d=4;

x=(a

a:

b;x=(x

x:

c;

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

63.以下程序运行后的输出结果是。

main()

{inta=3,b=4,c=5,t=99;

if(b

if(a

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

64.以下程序运行后的输出结果是。

main()

{inti,t=0;

for(i=5;i>=0;i--)

t*=i;

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

65.以下程序运行后的输出结果是。

main()

{charc1,c2;

for(c1='0',c2='9';c1

printf("%c%c",c1,c2);

printf("\n");

66.输入1234567890〈回车〉,则其中while循环体将执行次。

#include

main()

{charch;

while((ch=getchar())=='0')printf("#");

67.设有定义语句:

inta[][3]={{0},{1},{2});

则数组元素a[1][2]的值为。

68.在C语言中,有如下语句:

inta[]={10,20,30,40,50,60},*p;

p=a+3;

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

则输出结果是。

69.以下程序运行后的输出结果是。

main()

{inta[2][3]={1,2,3,4,5,6};

intm,*p;

p=&a[0][0];

m=(*p)*(*(p+2))*(*(p+4));

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

}

70.设有以下定义和语句:

inta[3][2]={10,20,30,40,50,60},(*p)[2];

p=a;

则*(*(p+2)+1)的值为。

71.在C语言中,有如下语句:

inta[3][2]={1,2,3,4,5,6,},*p[3];

p[0]=a[1];

则*(p[0]+1)所代表的数组元素是。

72.以下程序运行后的输出结果是。

main()

{chars[]="abcdef";

s[3]='\0';

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

}

73.以下程序运行后的输出结果是。

main()

{chars[尸"ABCD",*p;

for(p=s;p

printf("%s",p);

printf("\n");}

74.以下程序运行后的输出结果是。

main()

{chars[]="ABCD",*p=s;

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

}

75.

(1)以下程序运行后的输出结果是

main()

{charstr[尸"\tab\n\012\\\"";printf("%d\n",strlen(str));

}

(2)以下程序运行后的输出结果是

main()

{printf("%d'n",strlen("IBM\n012\1\\"));}

(3)以下程序运行后的输出结果是

main()

{printf("%d\n",strlen("\t\"\065\xff\n"));}

(4)以下程序运行后的输出结果是

main()

{chars[]="stop\0\n\"";

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

71.

(1)以下程序运行后的输出结果是。

main()

{charstr[]="Beijing";

printf("%d\n",strlen(strcpy(str,"China")));)

(2)以下程序运行后的输出结果是。

main()

{char*s1="12345",*s2="1234";printf("%d\n",strlen(strcat(s1,s2)));

72.以下程序运行后的输出结果是。

main()

{chara[]={'1','2','3','4','0'};

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

73.以下程序运行后的输出结果是。

main()

{charch[3][5]={"AAAA","BBB","CC"};printf("\"%s\"\n",ch[1]);}

74.以下程序运行后的输出结果是。

main()

{charstr口[20]={"China","Beijing"},*p=str;

printf("%s\n",p+20);

}

75.在C语言中,有如下语句:

structstd

{charch;

inta[2];

floatt;doublef

}std1;

则结构体变量std1占用内存的字节数为。

76.在C语言中,有如下语句:

structdog

{charch[10];

inti;

int*p;

doublek;

}dogl;

则结构体变量dogl占用内存的字节数为。

77.在C语言中,有如下语句:

structcat

{inta[10];

charch;

floatf;

double*p;

}cat1;

则结构体变量cat1占用内存的字节数为。

78.有以下结构体说明,请填空,以完成对结构体数组t定义:

structSTR

{chara;

intb;

floatc;

doubled;

};

t[20];

三、多选题

79.在C语言中,以下合法的变量名是()

A.registerB._10days

C.my_bookD.us$

E.count

80.在C语言中,以下合法的实型常量是()

A.1.2E+0.5B.3.14159E

C..5E-3D.E15

E.3.E+2

81

B.b=float(a)

C.c=15.0%3

.在C语言中,变量已正确定义并赋值,下面正确的表达式为()

A.a=b+1

C.a=a+7=c+3

E.a=b+c,a++

82.

在C语言中,以下合法的字符常量是()

B.'ab'

A."\n"

C.'\x43'

D.

'\084'

E.'\0'

83.

在C语言中,以下合法的常量是()

A.0386

B.

0Xff

C.1.2e0.5

D.

'\17'

84.

E."\0"

在C语言中,以下错误的数组定义是()

A.inta[尸{1,2,3};

B.ints[];

C.intn=10,t[n];

D.

char*q[3];

E.charstr[]={1,2,3};

四、程序填空题

85.以下程序的功能是计算:

1-2+3-4……+99-100

main()

{inti=1,j=1,s=0;while(){s+=j

i++;

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

86.输入20个整数到一维数组,统计正整数的个数及其和main()

{inta[20],i,sum,count;sum=count=jfor(i=0;i<20;i++)scanf("%d”,&a[i]);

for(i=0;i<20;i++)if(J

{count++;_j_}

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

}

87.输入10个整数到一维数组,输出其中最大数和最小数main()

{inta[10],i,max,min;for(i=0;i<10;i++)scanf("%d",&a[i]);max=min=;

for(i=1;i<10;i++)if(a[i]>max);elseif()min=a[i];printf("%d,%d\n",max,min);

}

88.输入一个字符串,将其倒序后输出

main()

{inti,j;

charst[60],ch;scanf("%s",st);

for(i=0,j=;;i++,j--)

{ch=st[i];

5

st[j]=

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

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

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

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