c语言for循环练习题_第1页
c语言for循环练习题_第2页
c语言for循环练习题_第3页
c语言for循环练习题_第4页
c语言for循环练习题_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

c语言for循环练习题

简介:

同样是循环结构,for循环在许多时候都是可以相互替换

的,相比起while循环,它将循环的各种条件写在了for后的

括号内,代码结构更加清晰。

一般格式:

for(表达式1;表达式2;表达式3)

{

循环内执行代码;

解释说明:

for后的()内:写入循环的规则。

表达式1:循环变量的初始化。

表达式2:循环终止条件。

表达式3:对循环变量的操作。

{}内:循环执行的代码块。

注意事项:

for后()内的三个表达式要用分号隔开。

for循环的三个表达式,都可以空着不写,但是两个分号

却是必须要写的。

示例:for(i=l;;i++)

代码示例:

题目:

使用for循环,输出3到13之间的整数(包含3和

13),每个数字之间用空格隔开。

代码:

#include<stdio.h>

intmain()

(

inti;

〃i赋值为3,从3开始

〃当i大于13时结束循环

//当i不大于13时,每次执行完循环内代码后,执行

i++,改变i的值。

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

(

printf(n%d”,i);〃%d后面留有空格

)

return0;

)

输出结果:

345678910111213

补充:

for循环的使用方法多种多样,并不是只有示例这一种。

C程序设计练习

一、单选题(共100题,50分)

1、若有定义inta[10],*p=a;则表达式p+5表示()

A、元素a[5]的地址

B、元素a⑹的地址

C、元素a[5]的值

D、元素a[6]的值

正确答案:A

2、题号:8314执行下列语句后的结果为0。

intx=3,y;

int*px=&x;

y=*px++;

A、x=3,y=4

B、x=4,y=4

C、x=3,y不知

D、x=3,y=3

正确答案:D

3、能正确定义整型变量a和b,并为它们赋初值5的语

句是()

A、a=b=5;

B、inta=5,b=5;

C、inta=b=5;

D、inta,b=5;

正确答案:B

4、以下关于for语句的说法不正确的是()

A、for循环是先判断表达式,后执行循环体语句

B、for循环只能用于循环次数已经确定的情况

C、for循环中,可以用break语句跳出循环体

D、for循环体语句中,可以包含多条语句,但要用花

括号括起来。

正确答案:B

5、若有说明:int*pl,*p2,m=5,n;以下均是正确赋值语句的

选项是()。

A、pl=&m;*p2=*pl;

B、pl=&m;p2=pl;

Cxpl=&m;p2=&pl

D、pl=&m;p2=&n;*p1=*p2;

正确答案:B

6、#include<stdio.h>

intmain()

intx=l,a=0,b=0;

switch(x)

case0:b++;

case1:a++;

case2:a++;b++;

}

printf(na=%d,b=%d",a,b);

)

该程序的输出结果是()

A、2,2

B、2,1

C、1,1

D、1,0

正确答案:B

7、

putchar()函数可以向终端输出一个(卜

A、字符串

B、字符或字符型变量值

C、实型变量值

D、浮点型变量值

正确答案:B

8、在一个C源程序文件中,若要定义一个只允许本源文

件中所有函数使用的全局变量,则该变量需要使用的存储类

型是(b

A、static

B、register

C、auto

D、extern

正确答案:A

9、若char已正确定义,以下语句中不能从键盘上给

a数组的

所有元素输入值的语句是(卜

A、scanf(M%sn,a);

B、for(i=0;i<10;i++)a[i]=getchar();

C、gets(a);

D、a=getchar();

正确答案:D

10、使用“scanf(”a=%d,b=%d”,&a,&b)”,要使a,b的值均

为25,正确的输入是(\

A、a=25b=25(空格分开)

B、2525(空格分开)

C、25,25

D、a=25,b=25

正确答案:D

11、判断char型变量c是否为大写字母的表达式是()

A、A'<=c<=Z

B、('A'v=c)AND(Z>=c)

C、(c>='A')&&(cv=Z)

D、(c>='A')&(c<=Z)

正确答案:C

12、doublex;scanf("%lf\&x);

不可以赋值给x变量的常量是()o

A、100000

B、123

C、5.8

D、MabcM

正确答案:D

13、以下对宏替换的叙述不正确的是()

A、宏名无类型,其参数也无类型

B、宏替换只是字符的替换

C、带参的宏替换在替换时,先求出实参表达式的值,然

后代入形参运算求值

D、宏替换不占运行时间

正确答案:c

14、在C语言中引用数组元素时,其数组下标的数据类

型允许是(卜

A、整型常量

B、整型常量或整型表达式

C、整型表达式

D、任何类型的表达式

正确答案:B

15、若整型变量a=l,b=2,c=3,d=4,则表达式a>b&&c<d

&&a<c的值是(b

A、0

B、1

C、2

D、-1

正确答案:A

16、以下程序的运行结果是(卜

#include<stdio.h>

voidmain()

{

inti=l,sum=0;

while(i<10)

{

sum=sum+l;

i++;

)

printf(,'i=%d,sum=%dn,i,sum);

A、运行出现错误

B、i=9,sum=9

C、i=2,sum=l

D、i=10,sum=9

正确答案:D

17、下列数组说明中,正确的是()。

A、intarray[][];

B、intarray[3][];

C、intarray[J[4J;

D、intarray[][][5];

正确答案:C

18、

若采用链式存储结构存储线性逻辑关系的数据元素时,

要求内存中存储单元的地址(\

A、连续或不连续都可以

B、一定是不连续的

C、部分地址必须是连续的

D、必须是连续的

正确答案:A

19、希望当num的值为奇数时,表达式的值为“真”;num

的值为偶数时,表达式的值为“假”。则以下不能满足该要求

的表达式是(卜

A、num%2==l

B、!(num%2)

C、!(num%2==0)

D、num%2

正确答案:B

20、若想将一个字符数组a的内容存入另一个字符数组

b中,下列正确的是(卜

A、strcat(b,a);

B、b=a;

C、strcpy(b,a);

D、strcpy(a,b);

正确答案:C

21、若调用一个函数,且此函数中没有return语句,则正确

的说法是:

该函数(卜

A、没有返回值

B、返回若干个系统默认值

C、返回一个不确定的值

D、能返回一个用户所希望的值

正确答案:C

22、下列关于指针概念的说法中,不正确的是(\

A、一个指针变量只能指向同一类型变量

B、指针变量可以直接把一个整数赋值给它,而浮点数

不可以

C、一个变量的地址称为该变量的指针

D、只有同一类型变量的地址才能放到指向该类型变量

的指针变量之中

正确答案:B

23、C语言程序中必须有的函数是(卜

A、#includenstdio.hn

B、main

C、printf

D、scanf

正确答案:B

24、静态链表中的游标表示的是(\

A、逻辑上下一个结点在数组中的下标

B、内存地址

C、数组下标

D、逻辑上下一个结点的实际地址

正确答案:A

25、C语言中用于结构化程序设计的三种基本结构覆\

A、for、while、do-while

B、顺序结构、选择结构、循环结构

C、if、switch、break

D、if、for、continue

正确答案:B

26、在C语言中,为了结束由while语句构成的循环,while

后一对圆括号

中表达式的值应该为()。

A、1

B、0

C、True

D、非0

正确答案:B

27、

设一个链表最常用的操作是在末尾插入结点和删除尾

结点,则选用()最节省时间。

A、带尾指针的单循环链表

B、单循环链表

C、带头结点的双循环链表

D、单链表

正确答案:C

28、以下所列的C语言常量中,错误的是0。

A、'\72’

B、OxFF

C、2L

D、1.2e0.5

正确答案:D

29、如果要打开E盘上user子目录下名为test.txt的文

本文件进行读、写操作,下面符合要求的函数调用是(卜

A、fopen(',E:\user\test.txt'\Hr,');

B、fopen("E:\\user\\test.txt,\nr+");

C、fopen("E:\user\test.txt",,'rbn);

D、fopen(nE:\\user\\test.txtn,0w*');

正确答案:B

30、题号:8284变量的指针,其含义是指该变量的0。

A、名

B、地址

C、一个标志

D、值

正确答案:B

31、下列程序的输出结果为()o

main()

(

intm=7.n=4;

floata=38.4,b=6.4,x;

x=m/2+n*a/b+l/2;

printf(H%Ann,x);

)

A、28.000000

B、27.500000

C、28.500000

D、27.000000

正确答案:D

32、题号:4350具有相同类型的指针变量p与数组a,不

能进行的操作是0。

A、p=&a[0];

B、p=a;

C、p=&a;

D、*p=a[0];

正确答案:c

33、已知函数的调用形式:fread(buffer,size,count,fp);

其中的buffer代表的是(\

A、一个存储区,存放要读入的数据项。

B、一个指针,指向要存放读入数据的地址

C、一个整型变量,代表要读入的数据项总和。

D、一个文件指针,指向要读入的文件

正确答案:B

34、inta=l,b=2,c=3;

if(a>b)a=b;

if(a>c)a=c;

则a的值为()o

A、不一定

B、2

C、1

D、3

正确答案:C

35、分析以下程序的运行结果。

#include<stdio.h>

voidmain()

(

intk=2;

switch(k)

(

casel:printf("%d\n",k++);break;

case2:printf(n%d”,k++);

case3:printf("%d\n”,k++);break;

case4:printf("%d\n",k++);

default:printf(,'Full!\nn);

A、34

B、33

C、23

D、22

正确答案:C

36、有以下程序

#include<stdio.h>

intfun()

(

staticintx=l;

x+=l;

returnx;

)

main()

(

inti,s=l;

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

s+=fun();

printf(n%d\nn,s);

)

程序运行后的输出结果是(卜

A、120

B、11

C、6

D、21

正确答案:D

37、能正确表示逻辑关系:“aNIO或a<0”的C语言表达

式是()

A、a>=0|a<=10

B、a>=10ora<=0

C、a>=10&&a<=0

D、a>=10||a<=0

正确答案:D

38、当已存在一个test.txt文件时,执行函数

fopen(”test.tx「"r+”)的功能是(\

A、打开test.txt文件,只能读取原有内容,但不能写数

B、打开test.txt文件,只能写入数据,但不能读取数据

C、打开test.txt文件,覆盖原有的内容

D、打开test.txt文件,可以读取和写入新的内容

正确答案:D

39、以下数据类型中不是构造类型的是(\

A、共用型

B、结构型

C、数组型

D、指针型

正确答案:D

40、C语言可以处理的文件类型是(卜

A、数据文件和二进制文件

B、文本文件、二进制文件和数据文件

C、文本文件和数据文件

D、文本文件和二进制文件

正确答案:D

41、有以下程序:

#include<stdio.h>

intmain()

(

inta=3,s;

s=f(a);

s=s+f(a);

printf(n%d\n\s);

return0;

)

intf(intn)

staticinta=l;

n+=a++;

returnn;

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

A、9

B、8

C、7

D、5

正确答案:A

42、若有double*p,x[10];inti=5;使指针变量p指向元素

x[5]的语句为(,

A、p=x;

B、p=x[i];

C、p二&(x+i)

D、p=&x[i];

正确答案:D

43、以下说法正确的是(\

A、实参和与其对应的形参各占用独立的存储单元

B、实参和与其对应的形参共享一个存储单元

C、形参是虚拟的,不占用存储单元

D、只有当形参和与其对用的实参同名时才共享存储单

正确答案:A

44.inta[2][4]={1,2,3,4,5,67,8);

int(*p)[4]=a;

此时p的数据类型是()?

A、int

B、int*

C、int*[4]

D、int(*)[4]

正确答案:D

45、题号:1353对于基本类型相同的两个指针变量之间,

不能进行的运算是()。

A、+

B、<

C、二

D、-

正确答案:A

46、

两个指针p和q,分别指向单链表的两个结点,p是q

的前驱结点的条件是(\

A、p->next==q->next

B、p->next==q

C、q->next==p

D、p二二q

正确答案:B

47、设a、b和c都是int变量且a=3,b=4,c=5;则以下的

表达式中,值为。的表达式是()

A、a||b+c&&b-c

B、a<=b

C、!(<a<b)&&!c||l)

D、a&&b

正确答案:C

48、若有2条语句如下:int*point,a=4;和point=&a;

则下面均代表地址的一组选项是(\

A、&*a,&a,*point

B、a,point,*&a

C、*&point,*point,&a

D、&a,&*point,point

正确答案:D

49、下面叙述中正确的是()□

A、函数可以返回一个值,也可以什么值也不返回

B、空函数在不完成任何操作,所以在程序设计中没有用

C、声明函数时必须明确其参数类型和返回类型

D、对于用户自己定义的函数,在使用前必须加以声明

正确答案:A

50、求平方根函数的函数名为(卜

A、sqrt

B、pow

C、cos

D、abs

正确答案:A

51、执行语句for(i=l;i++<4;);后变量i的值是(\

A、不定

B、3

C、4

D、5

正确答案:D

52、以下叙述中正确的是0。

A、宏替换不占用运行时间,只占编译时间

B、在以下定义中CR是称为“宏名”的标识符#define

CR045

C、在程序的一行上可以出现多个有效的预处理命令行

D、使用带参的宏时,参数的类型应与宏定义时的一致

正确答案:A

53、下列浮点数的形式表示错误的是()

A、10.6

B、12E2.0

C、100000

D、.5

正确答案:B

54、设pl和p2是指向同一个字符串的指针变量,c为字

符变量,则以下不能正确执行的赋值语句是()□

A、pl=p2;

B、c=*pl+*p2;

C、c=*pl*(*p2);

D、p2=c;

正确答案:D

55、

C语言属于()

A、机器语言

B、汇编语言

C、高级语言

D、低级语言

正确答案:C

56、经下列语句定义

Jn,sizeof(x),sizeof(y),sizeof(a),sizeof(b)lt

微机上的值分别为()。

charx=65;

floaty=7.3;

inta=100;

doubleb=4.5;

A、2,244

B、1,4,4,8

C、2,4,4,8

D、1,244

正确答案:B

57、在C语言中,调用函数除函数名外,还必须有(卜

A、()

B、实际参数

C、函数返回值

D、函数预说明

正确答案:A

58、char*p□二{“ABC“JDEF”JGH「};

puts(p[l]);

以上程序段的输出结果是(\

A、B

B、A

C、D

D、DEF

正确答案:D

59、对for(表达式1;;表达式3)可理解为(卜

A、for(表达式1;1;表达式3)

B、for(表达式1;表达式1;表达式3)

C、for(表达式1;0;表达式3)

D、for(表达式1;表达式3;表达式3)

正确答案:A

60、题号:8300若有inta[10]={0,l,2,3,4,5,6,7,8,9},*p二a;

则输出结果不为5的语句为()。

A、printf("%d\*(a+5));

B、printf("%d”,*(p+5));

C、printf(n%d",p[5]);

D、printf(n%d';*p[5]);

正确答案:D

61、以下程序的输出结果是(\

#include<stdio.h>

#include<string.h>

voidmain()

{

charstr[10]=1,Ch\ninaM;

printf(n%d",strlen(str));

)

A、6

B、5

C、7

D、10

正确答案:A

62、题号:8288下列选项中正确的语句组是()。

A、char*s;s={"Beijing"};

B、chars[8];s={"Beijing"};

C、char*s;s="Beijing”;

D、chars[8];s="Beijing";

正确答案:C

63、题号:2319下面判断正确的是0。

A、char*a二"china”;等价于char*a;*a="china”;

B、charstr[10]={nchinan};等价于char

str[l0];str[]={nchinan};

C、charc[4]="abc”,d[4]="abc";等价于char

c[4]=d[4]="abc”;

D、char*s="china”;等价于char*s;s="china";

正确答案:D

64、题号:5979若有下列定义,则对a数组元素地址的正

确引用是()。

inta⑸,*p=a;

A、&a

B、p+2

C、a++

D、&a[5]

正确答案:B

65、

C程序是由()构成的

A、若干过程

B、一个或多个函数

C、若干子程序

D、一个主程序与若干子程序

正确答案:B

66、下面说明不正确的是(卜

A、chara[10],*p;p=a=nchinaM;

B、chara[10],*p=a;p=Hchina";

C、char*a;a="china";

D、chara[10]=nchinau;

正确答案:A

67、使用fseek。函数可以实现的操作是(\

A、改变文件位置指针的当前位置

B、文件的顺序读写

C、文件的随机读写

D、以上都不是

正确答案:A

68、两个指针变量一般不可以(卜

A、指向同一地址

B、比较

C、相减

D、相加

正确答案:D

69、若已定义x为int类型变量,下列语句中说明指针变

量p的正确语句是(\

A、int*p=&x;

B、int*p=x;

C、*p二*x;

D、intp=&x;

正确答案:A

70、设有以下程序段

structbook

{floatprice;

charlanguage;

chartitle[20];

}rec,*ptr;

ptr=&rec;

要求输入字符串给结构体变量rec的title成员,错误的

输入语句是:()

A、scanf(n%sn,ptr.title);

B、scanf(H%sn,rec.title);

C、scanf(H%sH,(*ptr).title);

D、scanf(H%sn,ptr->title);

正确答案:A

71、当顺利执行了文件关闭操作时,fclose函数的返回

值是(卜

A、TRUE

B、-1

C、0

D、1

正确答案:C

72、以下的选择中,正确的赋值语句是()。

A、j++;

B、a=l,b=2;

C、a=b=5;

D、y-int(x);

正确答案:C

73、经过下列的语句intj,a[10],*p;定义后,下列语句中合

法的是(\

A、p=a+2;

B、p=&(j+2);

C、p=a⑵+2;

D、p=a[5];

正确答案:A

74、C语言的if语句嵌套时,if与else的配对关系是()。

A、每个else与if的配对是任意的

B、每个else总是与最外层的if配对

C、每个else总是与它上面的最近的if配对

D、每个eke总是与它上面的if配对

正确答案:C

75、题号:8311若有下列定义,能正确引用元素a[2]的是0。

inta[5],*p=a;

A、*p+2

B、*(a+2)

C、p+2

D、a+2

正确答案:B

76、

在单链表中,增加头结点的目的是(\

A、链表判空、插入第一个结点以及删除第一个结点等

运算方便

B、使单链表至少有一个结点

C、标志表中首结点的位置

D、说明该单链表是线性表的链式存储结构

正确答案:A

77、已知i、j、k为int型变量,若从键盘输入:1,2,3〈回车〉,

使i的值为1、j的值为2、k的值为3,

以下选项中正确的输入语句是

A、scanf(M%d%d%dn,&i,&j,&k);

B、scanf(n%d,%d,%dn,&i,&j,&k);

C、scanf(n%2d%2d%2du,&i,&j,&k);

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

正确答案:B

78、设有如下语句:

typedefstructDate

{intyear;

intmonth;

intday;

}DATE;

则以下叙述中错误的是:()

A、DATE是用户定义的结构体变量

B、structDate是用户定义的结构体类型

C、DATE是用户说明的新结构体类型名

D、struct是结构体类型的关键字

正确答案:A

79、若定义以下变量和数组:

inti;

inta[3][3]={1,2,34,5,6,7,8,9);

则下列语句的输出结果是(卜

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

printf(n%du,a[i][2-i]);

A、357

B、159

C、369

D、147

正确答案:A

80、定义一个整型的变量时,一般使用的关键字是

)?

A、Int

B、float

C、double

D、int

正确答案:D

81、执行语句“x=(a=5,b=a--)”后,x,a,b的值分别是

)

A、5,4,4

B、5,5,4

C、5,4,5

D、4,5,4

正确答案:C

82、有以下程序段

intn=O,p;

do

(

scanf(M%d'\&p);

n++;

}while(p!=12345&&n<3);

此处do-while循环的结束条件是(卜

A、p的值等于12345并且n的值大于等于3

B、p的值不等于12345并且n的值小于3

C、p的值不等于12345或者n的值小于3

D、p的值等于12345或者n的值大于等于3

正确答案:D

83、若变量已正确说明,要求用以下语句给a赋予3.12、

给b赋予9Q则正确的输入形式是

scanf("a=%f,b=%f',&a,&b);

A、a=3.12,b=9

B、a=3.12b=9

C、3.129.0

D、a=3.12,b=9.0

正确答案:D

84、

以下叙述不正确的是()

A、注释说明被计算机编译系统忽略

B、注释说明必须跟在“〃”之后不能换行或者括在“/*”和

“*/”之间且注释符必须配对使用

C、注释符/和"'之间不能有空格

D、在C程序中,注释说明只能位于一条语句的后面

正确答案:D

85、以下程序段的输出结果是(卜

#include<stdio.h>

intmain()

{

intn=10;

while(n>7)

(

printf(n%d,';n);

n-;

return0;

A、9,8,7,

B、9,8,76

C、10,9,8,

D、10,9,8,7,

正确答案:C

86、

一个C程序的执行是从()

A、main函数开始,直到最后一个函数结束

B、第一个函数开始,直到最后一个函数结束

C、main函数开始,直到main函数结束

D、第一条语句开始,直到最后一条语句结

正确答案:C

87、若有说明inta[3]⑷;则a数组元素的非法引用是(\

A、a[l]r3]

B、a[0][4J

C、aL4-2J[0J

D、a[0][2*l]

正确答案:B

88、下列哪种文件类型的文件属于文件文件()?

A、Jpg

B、.wav

C、.txt

D、.exe

正确答案:C

89、inta[10];合法的数组元素的最小下标值为()。

A、1

B、0

C、10

D、9

正确答案:B

90、函数调用:strcat(strcpy(strl,str2),str3)的功能是(卜

A、将串str2连接到串strl之后再将串strl复制到串str3

B、将串strl复制到串str2中后再连接到串str3之后

C、将串str2复制到串strl中后再将串str3连接到串strl

之后

D、将串strl连接到串str2之后再复制到串str3之后

正确答案:C

91、C语言的switch语句中case后()

A、可为任何量或表达式

B、只能为常量或常量表达式

C、可为常量或表达式或有确定值的变量及表达式

D、只能为常量

正确答案:B

92、代码编制中,累乘器变量的初始值一般设置为

)?

A、0

B、1

C、2

D、3

正确答案:B

93、以下关于运算符优先顺序的描述中正确的是()o

A、关系运算符(算术运算符(赋值运算符<逻辑运算符

B、赋值运算符〈逻辑运算符〈关系运算符〈算术运算符

C、算术运算符〈关系运算符〈赋值运算符〈逻辑运算符

D、逻辑运算符〈关系运算符〈算术运算符〈赋值运算符

正确答案:B

94、以下程序的输出结果是(\

#include<stdio.h>

intfunc(intajntb)

{

return(a+b);

intmain()

intx=6,y=7,z=8,r;

r=func(func(x,y),z-);

printf(H%d\nn,r);

return0;

)

A、20

B、31

C、15

D、21

正确答案:D

95、穷举法适用范围是()

A、一切问题

B、解的个数极多问题

C、解的个数有限且可以列举

D、不适合设计算法

正确答案:C

96、经过下述赋值后,变量x的数据类型是(

floatx=21.0;

inty;

y=(int)x;

A、float

B、double

C、int

D、char

正确答案:A

97、题号:4662变量p为指针变量,若p=&a,下列说法不

正确的是0。

A、*(p++)=二a++

B、&*p==&a

C、(*p)++=a++

D、*&a==a

正确答案:A

98、

结构化程序设计由3种基本结构组成,3种基本结构组

成的算法(卜

A、可以完成任何复杂的任务

B、只能完成部分复杂的任务

C、能完成符合结构化的任务

D、只能完成一些简单的任务

正确答案:A

99、若k,g均为int型变量.则下列语句的输出为0。

k=017;g=111;

printf(n%d\tn,k);

printf(n%x\n\g);

A、1670

B、1571

C、156f

D、166f

正确答案:C

100,下列字符数组长度为5的是(b

A、charc[10]={h,'a'Jb'Jc',d};

B、charb[]={hdC'O》;

C、charaU={h,'a','b「cTd'};

D、chard[6J={hJaU'O'};

正确答案:C

二、多选题(共5题,10分)

1、计算机语言分为哪()类?

A、机器语言

B、汇编语言

C、智能语言

D、局级语百

正确答案:ABD

2、在代码中书写一个整型常量时,C语言可以识别的进

制类型有()?

A、二进制

B、八进制

C、十进制

D、十六进制

正确答案:ABCD

3、structstudent

{intnum;charname[20];floatscore;}stl;

structstudent*p=&stl;

代码运行后,下列可以用来引用num结构体成员的表达

式有:O

A、stl.num

B、(*p).num

C、p->num

D、(*stl).num

正确答案:ABC

4、C语言中字符常量的2种形式是()?

A、普通字符

B、转义字符

C、固定字符

D、特殊字符

正确答案:AB

5、下列函数,可以用来向计算机内部输入单个字符的

有?

A、putchar()

B、getchar()

Csprintf

D、scanf

正确答案:BD

三、填空题(共20题,20分)

1、某一个字符串处理函数可以将一个字符串常量赋值

到字符型数组a中存储,该字符串处理函数的名称是:

_____________________O

正确答案:

第1空:

strcpy

2、若有定义语句:inta⑵[3]={10,20,30,40,50,60};int*

p=*a;则表达式*(a[l]+2)的值是:o

正确答案:

第1空:

60

3、将structstudent结构体数据类型声明为新的数据类型

名STU的C语句是:;

正确答案:

第1空:

typedefstructstudentSTU

4、fopen(,,b.dat,V,wn);

此时,fopen函数打开的文件使用方式是w,其目的是

为了向该文件数据。(填“输入”或输出”)

正确答案:

第1空:

输出

5、在C语言中,求解一个整型数值的绝对值的函数名

是()?

正确答案:

第1空:

abs;abs()

6、C语言中,结构体成员运算符是:o

正确答案:

第1空:

*

7、enumweekday{mon=8,tue=2,\ved,thu,fri,sat,sun}day;

for(day=mon;day<=sun;day++)

printf("%d\nH,day);

则以上代码执行后的最后1行的输出结果是:。

正确答案:

第1空:

7

8、指针运算符*在34个C运算符中的级别是级。

(填阿拉伯数字)

正确答案:

第1空:

2

9、字符数组中的每个元素在内存中都有个唯一

的地址。(填阿拉伯数字)

正确答案:

第1空:

1

10、structstudent

{intnum;

floatscore;

structstudent*next;

}a={10101,89.5},b={10103,90},c={10107,85);

a.next=&b;b.next=&c;c.next二NULL;

structstudent*head=&a,*p=NULL;

p=head;

do

{printf("%d,%5.2f\n”,p->num,p・>score);

p=(*p).next;

}while(p!=NULL);

上述代码功能是:去掉当前链表中的第1个结点即a结

点,重新组建一个链表,则横线上应该填上?

正确答案:

第1空:

head=head->next;head=(*head).next

11、inta=3,b=4;

则逻辑表达式a&&b的值是()?

正确答案:

第1空:

1

12、C语言编译器一般会给float单精度浮点型变量分配

个字节的存储空间。

正确答案:

第1空:

4

13、只有采用”w“和"”两种使用方式打开某个文本

文件时,磁盘中可以事先不存在该文本文件。

正确答案:

第1空:

w+

14、如下程序运行后,a二(卜

#include<stdio.h>

intmain()

inta;

a=3;

a*=a+2;

printf(na=%d\nH,a);

return0;

)

正确答案:

第1空:

15

15、C语言中,我们利用函数,将磁盘文件中的

数据以二进制形式读入到程序数据区。

正确答案:

第1空:

fread

16、union

{struct{intx,y,z;}u;

intk;

}a;

a.u.x=4;

a.k=123;

printf(n%dn,a.u.x);

上述程序的输出结果是:O

正确答案:

第1空:

123

17、32位架构的计算机,C语言编译器一般会给short

短整型变量分配个字节的存储空间。

正确答案:

第1空:

2

18、在打开文件的同时,一般都指定一个FILE*类型的

指向该文件。

正确答案:

第1空:

指针变量;指针

19、C语言语句的结束标志是o

正确答案:

第1空:

英文分号;;

20、操作系统是以为单位对计算机中的所有数

据进行管理的。

正确答案:

第1空:

文件

四、判断题(共40题,20分)

1、程序调试是指对程序进行编译。()

正确答案:错误

2、定义一个指针变量的同时,该指针类型的变量也被

分配了一个唯一的内存地址。()

正确答案:正确

3、

以下程序的输出结果是15。

#defineT(x,y)(x)<(y)?(x):(y)

voidmain()

(

inti=10,j=15,k;

k=10*T(i,j);

printf(M%dn,k);

)

正确答案:正确

4、C语言中的西文字符是被严格区分大小写的()

正确答案:正确

5、C语言的每条语句最终都将被转换成二进制的机器指

令°()

正确答案:正确

6、共用体变量所占的内存长度是“所占字节数最大的那

个成员变量的长度”。()

正确答案:正确

7、FILE*fp;

fp=fopen(nC:\a.docn,w);

上述2行代码中的第2行代码存在明显的语法错误。

正确答案:正确

8、ASCII文件中的数据是以“字符形式”存放的,每个

ASCII字符对应了一个唯一的ASCH编码。()

正确答案:正确

9、共用体变量的地址和该共用体变量中的各个成员的

内存地址是不同的。()

正确答案:错误

10.fputs函数的功能是:将“程序数据区”中的字符串数

据写入到“磁盘文件缓冲区”的。()

正确答案:正确

11,数组a含有10个元素,让指针变量p去指向数组a

的最后一个元素的方法是:p=&a[10]o()

正确答案:错误

12.inta[2][4]={1,2,3,4,5,67,8);

int(*p)[4]=a;

则是用来获得数组a的最后一个元素的内存地

址。

正确答

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论