C语言练习6.docx

上传人:b****5 文档编号:26435051 上传时间:2023-06-19 格式:DOCX 页数:70 大小:329.37KB
下载 相关 举报
C语言练习6.docx_第1页
第1页 / 共70页
C语言练习6.docx_第2页
第2页 / 共70页
C语言练习6.docx_第3页
第3页 / 共70页
C语言练习6.docx_第4页
第4页 / 共70页
C语言练习6.docx_第5页
第5页 / 共70页
点击查看更多>>
下载资源
资源描述

C语言练习6.docx

《C语言练习6.docx》由会员分享,可在线阅读,更多相关《C语言练习6.docx(70页珍藏版)》请在冰豆网上搜索。

C语言练习6.docx

C语言练习6

1、选择题

1、C语言程序中的函数是由()组成

A、函数名和函数体

B、返回值类型和函数名

C、函数首部和函数体

D、函数名和参数

2、下列叙述错误的是()

a)C语言程序一行内可以有多条语句

b)C语言程序一条语句可以分写在多行

c)一个C语言程序可以有多个main()函数

d)一个C语言程序只能有一个main()函数

3、结构化程序设计的3种基本结构是顺序结构、()和循环结构。

a)选择结构

b)逻辑结构

c)递归结构

d)嵌套结构

4、结构化程序设计采用的方法不包括()

a)模块化设计

b)封装、继承和多态

c)自顶向下、逐步细化

d)结构化编码

5、下列关于C语言程序的叙述错误的是()

a)注释内容必须放在/*和*/之间

b)一个C语言程序由一个或多个函数组成

c)编译时注释部分的错误会被发现

d)可以在“{}”内写若干条语句,构成复合语句

6、TurboC中,每个signedshortint型数据占用的内存空间为()字节

a)8个

b)2个

c)1个

d)4个

7、若已定义:

intx=2,y=3,z=5;则表达式值为2的是()。

a)z=x,z

b)x+y+z

c)z=(x,z)

d)x=y=z

8、下列叙述错误的是()

a)程序中算术表达式的书写形式与数学公式完全相同

b)赋值运算符的结合方式是“自右向左”

c)整数与字符型变量混合运算的结果是整数

d)自增和自减运算符可以用于float型变量

9、要使语句scanf(“%d,%d”,&m,&n);能够正确接收从键盘输入的值,正确的数据输入形式是()。

a)1020

b)10,20

c)1020

d)10

20

10、能正确表示数学关系式“k≤0或k≥10”的C语言表达式是()。

a)(k<=0)&&(k>=10)

b)(k<=0)||(k>=10)

c)(k>=0)||(k<=10)

d)(k>=0)&&(k<=10)

11、若已定义:

charc=’E’;inta=9;floatx=5;则表达式c/x-a的值是()【已知’A’的ASCII码为65】

a)13.8

b)4.8

c)4

d)5

12、()为合法用户标识符。

a)3c

b)_a$bc

c)void

d)_abc

13、若已定义:

charc;则()是错误的赋值表达式

a)c=’\n’

b)c=’a’

c)c=32

d)c=097

14、若已定义:

intm=3,n=4;则表达式(m++)+n的值是()

a)5

b)7

c)8

d)4

15、puts(char*str)函数的功能是向终端输出()

a)一个实型变量的值

b)str指向的字符串

c)一个整数变量的值

d)str指向的第一个字符

16、若已定义:

inta=1,b=2,c=3;语句(++b,a)||(a++,c++);执行后变量a、b、c的值分别是()

a)234

b)133

c)123

d)233

17、若已定义:

intx=100;则正确的赋值表达式是()

a)x=”abc”

b)x%=0.3

c)x=x+08

d)x=’A’

18、下列正确定义符号常量的命令是()

a)#definePR3.3;

b)#definePR=3.3;

c)#definePR=3.3

d)#definePR3.3

19、()为合法常量

a)‘Cprogram’

b)0x100

c)2E3.3

d)0783

20、若已定义:

inta=1,b=2;()是正确的表达式

a)a*=b+2

b)a+b=2

c)a+b*=2

d)a+/b=2

21、若已定义:

inta=3,b=2,c=1;则表达式a+b&&c+100的值是()

a)1

b)105

c)0

d)104

22、若已定义:

inta=3,b=2,c=1;则表达式(float)(a+b)/(c+a)的值是()

a)8

b)1

c)3.0

d)1.25

23、若已定义:

inta=3,x=4;语句x+=a++;执行后变量x的值是()

a)7

b)4

c)8

d)6

24、若已定义:

inta=5,b=6;语句printf(“%d*%d=%d\n”,a+a,b+b,(a+a)*(b+b));执行后的输出结果是()

a)5*6=30

b)10,12,120

c)5,6,30

d)10*12=120

25、若已定义:

inta=1,b=2,c=3;表达式值为0的是()

a)ab>a

b)a+b&&a+c

c)a+b==c||b==c

d)ab>a

26、若已定义:

inta=3,b=2,c=1,t;语句t=++a||!

b&&c++;执行后a、b、c的值分别是()

a)321

b)422

c)402

d)421

27、若已定义:

inta=5;则表达式a-=a+=a*a的值为()

a)-20

b)-25

c)0

d)25

28、以下程序段的运行结果是()

intm=65,n=66;

chark=’C’;

printf(“%c-%c-%d\n”,m,n,k);

(注:

字母’A’的ASCII码值为65)

a)AB67

b)6566C

c)A-B-67

d)65-66-C

29、若已定义:

inti=1;则表达式i+=10的值为()

a)11

b)1

c)2

d)10

30、若已定义:

inta=1,b=2,c=3;则表达式a=b==c的值为()

a)1

b)0

c)3

d)2

31、若已定义:

charc;inta;floatx;doublem;则表达式0.3+a+c+x+m*a的值得类型为()

a)float

b)int

c)double

d)char

32、c语言的数据类型不包括()

a)泛型

b)联合类型

c)整形

d)结构类型

33、若已定义:

inta=1,b=2,c=3;则正确的表达式是()

a)a=b+1=c

b)a=b\c

c)c=(a,b)

d)a+b=c

34、若已定义:

inta=8,b=7,c;语句c=a|b;执行后c的值是()

a)15

b)0

c)7

d)8

35、若已定义:

intx;则从键盘输入一个值赋予x;正确的函数调用是()

a)scanf(“%d”,&x);

b)scanf(“%f”,&x);

c)scanf(“%f”,x);

d)scanf(“%d”,x);

36、以下程序的运行结果是()

#include

voidmain()

{

inta=4,b=3,c=2,d=1;

if(a>b>c)

printf(“%d\n”,d);

elseif(c-1>=d)

printf(“%d\n”,d+1);

else

printf(“%d\n”,d+2);

}

a)1

b)2

c)3

d)4

37、以下程序执行时,循环体执行了()

#include

voidmain()

{

inta=1234,b=0;

while(a)

{

b=b*10+a%10;

a=a/10;

}

}

a)4次

b)无限次

c)3次

d)2次

38、以下程序执行后变量m的值为()

intx=6,y=4,z=8,m;

m=(x

(x

x:

z):

(y

y:

z);

a)1

b)8

c)6

d)4

39、以下程序段执行后变量a的值为()

inti,a=0;

for(i=1;i<=10;i++)

{

if(i%2==0)

continue;

a++;++a;

}

a)10

b)5

c)15

d)0

40、执行以下程序,输入99,运行结果是()

#include

voidmain()

{

intscore;

scanf(“%d”,&score);

switch(score/10)

{

case10:

case9:

printf(“A”);

case8:

printf(“B”);

case7:

case6:

printf(“C”);

break;

default:

printf(“D”);

}

printf(“\n”);

}

a)ABCD

b)AB

c)A

d)ABC

41、以下程序的运行结果是()

#include

voidmain()

{

charc=’C’;

switch(c-65)

{

case0:

putchar(c+1);

case1:

case2:

case3:

putchar(c+2);

break;

default:

putchar(c+32);

break;

}

}

[注:

已知’A’的ASCII码值为65,’a’的ASCII码值为97]

a)C

b)b

c)E

d)D

42、若已定义:

intk,a,b,c;则语句()与k=a>b?

b:

c语句的功能等价。

a)if(a>b)k=b

b)if(a>b)k=b;elsek=c;

c)if(k==a)k=b;elsek=c;

d)if(a>b)k=a;elsek=b;

43、以下程序段,()。

inta=0;

do

{

++a;

}while

(1);

a)循环体执行1次

b)循环体执行2次

c)是无限循环

d)有语法错误

44、以下程序段执行后变量a的值为()

inti=0,a=0;

for(;i-3;i++)

a++

a)1

b)0

c)3

d)2

45、以下程序段的运行结果是()

chara[5]={65,’B’,67,68,69},i;

for(i=4;i>=0;i-=2)

a[i]=a[i]+32;

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

printf(“%3c”,a[i]);

a)aBcDe

b)abcde

c)ABCDE

d)AbCdE

46、以下程序段执行后s的值是()

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

inti,j,s=1;

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

for(j=0;j

s*=a[i][j];

a)16

b)144

c)288

d)12

47、下列叙述正确的是()

a)在定义数组时,数组的长度不能使用整形常量

b)在定义数组时,数组的长度可以使用整形变量

c)数组元素的下标可以使用整形常量

d)数组元素的下标不能使用字符常量

48、若以定义:

ints[4][3]={{1,6},{1},{2,8,4},{7,3,5}};

则s[3][1]的值是()

a)2

b)3

c)7

d)8

49、以下程序段执行后,a[4]的值为()

inta[8]={15,9,23,32,11};

a[4]=a[3]+a[2]+a[1]*a[6]-a[7];

a)55

b)32

c)63

d)64

50、若已定义:

inta[6]={1,2,3,4,5,6};charc=’b’;则表达式值为3的是()

a)a[3]

b)a[‘d’-‘c’]

c)a[c]

d)a[‘d’-c]

51、以下程序段执行后sum的值是()

inti,sum=0;

inta[3][5]={11,12,13,14,15,16,17,18,19,20,22,24,26,28,31};

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

sum+=a[i][i+2];

a)60

b)61

c)63

d)58

52、若已定义:

inta[4][3];假设元素a[0][0]在存储空间中的位置序号为1,则元素a[2][2]的位置序号应是()

a)7

b)10

c)9

d)8

53、错误的数组定义是()

a)intarr[][3]={10,9,8,7,6,5,4,3,2,1};

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

c)intarr[4][3]={{1,2},{3},{0}};

d)intarr[4][]={0,1,2,3,4,5,6,7,8,9,10,11};

54、以下程序段执行结果是()

inta[10]={1,1,1,1,1,1,1,1,1,1,},i;

for(i=1;i<=5;i++)

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

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

printf(“%3d”,a[i]);

a)0000011111

b)0000000000

c)1111111111

d)1111100000

55、以下程序段的运行结果是()

chars[80]={“super”};

strcat(s,”market”);

printf(“%d”,strlen(s));

a)11

b)10

c)12

d)9

56、若已定义:

inta=3,*p;执行语句p=&a;后,下列()均能表示a的地址

a)p,&a

b)p,a

c)*p,&a

d)*p,a

57、以下程序段的运行结果是()

chara[]=”WELL”,*p;

for(p=a,p

printf(“%s”,p);

a)WELLWEL

b)WE

c)WELLWE

d)WELLELL

58、以下程序段的运行结果是()

chara[]=”Teacher”;

charb[]=”Driver”;

strcpy(a,b);

printf(“%s%c”,a,a[5]);

a)Teachere

b)Driverr

c)Drivere

d)Teacherr

59、以下程序段的运行结果是()

chara[5][3]={‘Y’,’o’,’u’,’’,’a’,’r’,’e’,’\0’,’w’,’e’,’l’,’c’,’o’,’m’,’e’};

printf(“%s”,&a[0][0]);

a)Youare

b)You

c)Youarewelcome

d)Youarewel

60、以下程序段执行后,正确的是()

chara[]=”University”;

char*p;

p=a;

a)a[3]与*p表示的内容相同

b)*(p+3)与a[0]表示的内容相同

c)a与p+3表示的地址一致

d)strlen(p)与strlen(a)表示的值相等

61、以下程序段的运行结果是()

inta=5,b=2,c,*p1,*p2;

p1=7a;

p2=&b;

if(*p1<*p2)

c=*p1+2;

else

c=*p2+4;

printf(“%d\n”,c);

a)9

b)6

c)4

d)7

62、以下程序段的运行结果是()

intx=5;

char*s1=”music”,*s2=s1;

x=strcmp(s1,s2);s3改成s2

printf(“%d\n”,x);

a)1

b)-1

c)0

d)5

63、若已定义:

chara[]=”Student”,*p=a;能正确指向存放字符‘u’单元的表达式是()

a)*(a+5)

b)p+5

c)a+2

d)*(p+2)

64、以下程序段的运行结果是()

inta=2,b=5,*p;

p=&a;

b=a;

printf(“%d,%d\n”,b,*p);

a)2,2

b)2,5

c)5,2

d)5,5

65、以下程序段的运行结果是()

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

int*p;

p=a;

for(i=0;i<10;i++,i++)

printf(“%3d”,*(p+i));

printf(“\n”);

a)678910

b)13579

c)246810

d)12345

66、以下程序段的运行结果是()

inta=6,b=3,m,n,*p,*q;

p=&a;

q=&b;

m=(*p)/(*q)=8;

n=(*p)+(*q)*8;

a)m=8,n=30

b)m=10,n=8

c)m=10,n=30

d)m=8,n=80

67、以下程序段的运行结果是()

inta=1,b=2,sum,*p,*q;

p=&a;

q=&b;

sum=*p+*q;

a=*q;

printf(“%d,%d\n”,a,sum);

a)1,4

b)1,3

c)2,3

d)2,4

68、以下程序段的运行结果是()

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

int*p;

p=a;

*(p=3)+=3;

printf(“%d,%d\n”,*p,*(p+3));

a)1,7

b)4,4

c)7,7

d)1,4

69、若已定义:

inta[2][3]={1,2,3,4,5,6},*p;执行语句p=&a[0][0];后,*(p+4)表示的值是()

a)6

b)3

c)5

d)4

70、若已定义:

charsa[20]=”dictionary”,sb[20];则()语句是正确的

a)sb[0]=sa[0]

b)scanf(“%s”,&sb[]);

c)sb[]=sa[]

d)printf(“%s”,sa[]);

71、以下程序的运行结果是()

#include

fun(intx,inty)

{return(x*y+10);

}

voidmain()

{inta=11,b=2,c;

c=fun(a,b);

printf(“c=%d\n”,c);

}

a)c=22

b)32

c)22

d)c=32

72、下列叙述错误的是()

a)预处理命令只能位于C源程序文件的首部

b)在预处理命令行#defiineWT5中,符号常量(宏名)是WT

c)#include“math.h”属于预处理命令

d)预处理命令必须以“#”开头

73、以下程序的运行结果是()

#include

voidfun(intx,int*p)

{

*p=x+10;

}

voidmain()

{

inta,b,c;

fun(5,&a);

fun(a,&b);

fun(b,&c);

printf(“a=%d,b=%d,c=%d\n”,a,b,c);

}

a)a=5,b=15,c=25

b)a=15,b=25,c=35

c)a=5,b=5,c=5

d)a=15,b=15,c=15

74、以下语句中fun()函数所含的实参个数有()个

fun((1,2,3),(4,5),(6,7+8));

a)8.

b)7

c)3

d)5

75、以下程序的运行结果是()

#include

fun(intx)

{

staticinty=2;

y=y+x;

returny;

}

voidmain()

{

inti,s=0;

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

s=s+fun

(2);

printf(“%d\n”,s);

}

a)6

b)4

c)10

d)8

76、下列叙述错误的是()

a)宏定义中的符号常量(宏名)可以是小写字母表示

b)编译预处理命令行都必须以“#”号开始

c)文件包含使用预处理命令“#include<文件名>”来实现

d)宏定义中的符号常量只能用大写字母或数字符号表示

77、以下程序的运行结果是()

#include

voidfun(inti)

{

inta;

a=++i;

printf(“%d”,a);

}

voidmain()

{

inta=3,b=6;

fun(b);

printf(“%d”,a);

}

a)33

b)77

c)73

d)37

78、c源程序中,预处理命令的位置可以在()

a)scanf()函数中

b)printf(0函数中

c)putchar()函数中

d)文件首部

79、以下程序的运行结果是()

#include

voidf(inta[][3])

{

inti;

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

printf(“%2d”,a[i][0]);

printf(“\n”);

}

voidmain()

{

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

f(a);

}

a)323

b)123

c)231

d)112

80、以下程序的运行结果是()

#include

fun(intx,inty)

{

return(x*y+10);

}

voidmain()

{

inta=11,b=2,c;

c=fun(a,b);

printf(“c=%d\n”,c)

}

a)c=22

b)32

c)22

d)c=32

81、一个结构变量占用的内存容量由()决定。

a)第一个成员所需内存容量

b)占内存容量最小的成员所需容量

c)各成员所需内存容量之和

d)最后一个成员所需内存容量

82、下列叙述错误的是()。

a)联合变量所需内存容量等于其中占内存容量最大的成员所占的容量

b)联合类型可以出现在结构类型定义中

c)联合变量可以作为函数的形参

d)一个联合变量中各成员的首地址相同

83、若定义:

enumcolors{red,green=2,blue,black}x,a[3];

以下语句()

/*语句1*/a[1]=black;

/*语句2*/red=1;

/*语句3*/x=green;

a)语句1和语句3正确,语句2错误

b)语句2和语句3正确

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

当前位置:首页 > 工程科技 > 交通运输

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

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