广西财经学院C语言考试试卷(共六卷)_第1页
广西财经学院C语言考试试卷(共六卷)_第2页
广西财经学院C语言考试试卷(共六卷)_第3页
广西财经学院C语言考试试卷(共六卷)_第4页
广西财经学院C语言考试试卷(共六卷)_第5页
已阅读5页,还剩29页未读, 继续免费阅读

下载本文档

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

文档简介

广西财经学院C语言考试试卷(一)

总分:100分考试时间:90分钟

注意事项:

>题目包括三大部分,单项选择题,填空题,编程题,请按要求作答。

>答卷必须用蓝色或者黑色钢笔、圆珠笔,不许用铅笔或者红笔作答。

>考试中途不能无端离场,否则视为放弃。考试过程中如遇问题请及时向监考老师反

馈。

一、单项选择题(每小题2分,共40分)

1、若变量已正确定义并赋值,以下符合c语言语法的表达式是。

A、a:=b+l

B、a=b=c+2

C、int18.5%3

D、a=a+7=c+b

2、若有定义inta=2;则执行完语句a/=a*a;后,a的值是。

A、0.5

B、0

C、1/2

D、1/4

3、关于结构化程序设计原则和方法的描述错误的是o

A、选用的结构只准许有一个入口和一个出口

B、复杂结构应该月嵌套的基本控制结构进行组合嵌套来实现

C、不允许使用GOTO语句

D、语言中若没有控制结构,应该采用前后一致的方法来模拟

4、在循环结构中,_____可以使得同一组语句一次也不执行。

A、当型循环

B、直到型循环

C、都不能实现

D、do-while语句

5、以下程序中函数r的功能是将u个字符串,按由大到小的顺序进行排序。

^include<string.h>

voidf(charp[][10],intn)

(

chart[20];

inti,j;

for(i=0;i<n-l;i++)

for(j=i+l;j<n;j++)if(strcmp(p[i],p[j])<0)

strcpy(t,p[i]);

strcpy(p[i],p[j]);

strcpy(p[j],t);

)

main()

(

charp[][10]={"abc","aabdfg","abbd","dcdbe","cd"};

f(p.5);

printf("%d\n",strlen(p[0]));

}

程序运行后的输出结果是_____o

A、6

B、4

C、5

D、3

6、已知字符'c'的ascii码为99,语句printf6%d,%c",'c','c'+l);的瑜出

为o

A、99,c

B、99,100

C、99,d

D、语句不合法

7、若有说明语句chara[]=Hitismine";

char*p=witisnine”;

则以下不正确的叙述是_______O

A、a+1表示的是字符t的地址

B、p指向另外的字符串时,字符串的长度不受限制

C、p变量中存放的地址值可以改变

D、a中只能存放10个字符

8、以下标识符中,不能作为合法的c用户定义标只符的是o

A、For

B、printf

C、WORD

D、sizeof

9、null是指o

A、0

B、空格

C、未知的值或无任何值

D、空字符串

10、以下不能对二维数组a进行正确初始化的语句是。

A、inta[2][3]={0};

B、inta[][3]={{l,2}JO}};

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

D、inta[][3]={1,2,345,6}

11、每个c程序中都必须有且仅有一个o

A、类

B、预处理命令

C、主函数

D、语句

12、以下叙述中正确的是________o

A、使用typedef说明新类型名时,其格式是:typed。新类型名原类型名

B、在程序中,允许用typedef来说明一种新的类型名

C、使用typedef说明新类型名时,后面不能加分号

D、在使用typedef改变原类型的名称后,只能使用新的类型名

13、以下叙述中不正确的是。

A、空字符串(即两个双引号连写)只占一个存储单元

B、字符型常量可以放在字符型变量中

C、字符型常量可以放在字符串变量中

D、字符型常量可以与整数混合运算,而字符吕常量不可以

14、对以下定义的表述中,正确的是________

structnode

(

intnum;

charname[10];

)

stud;

A、stud是一个结构体变量

B、stud是一个结构体类型

C、node是一个结构体数据

D、node是一个结构体变量

15、程序片段:short1=65536;printf(w%d\nh,i);

的输出结果是。

A、65536

B、0

C、有语法错误,无输出结果

D、-1

16、执行下面程序片段的结果是ointx=23;

do

(

printf(',%2d,,,x―);

)

while(!x);

A、打卬出321

B、打印出23

C、不打印任何内容

D、陷入死循环

17、下列程序的输出结果是。

#include<stdio.h>

structabc

(

inta,b,c,s;

);

main()

(

structabcs⑵={(1,2,3},{4,5,6)};

intt;

t=sFOl.a+sFll.b:

printf(,,%d\n'f,t);

)

A、5

B、6

C、7

D、8

18、设inta=4,b;则执行b二aVVl;语句后,b的结果是。

A、8

B、2

C、16

D、10

19、用冒泡排序对4,5,6,3,2,1进行从小到大排序,第三趟排序后的状态为

A、453216

B、432156

C.321456

D.213456

20、在16位pc机上使用c语言,若有如下定义

structdata{

inti;

charch;

doublef;

}b;

则结构变量b占用内存的字节数是o

A、1

B、2

C、7

D、11

二、填空题(每小题2分,共20分)

1、执行以下语句段

inti;

intfun(intx)

{

return((x>0)?fun(xT)+fun(x-2):1);

)

i=fun⑶;

i的值为o

2、intx=l,y=l,z=l;x+=y+二z;则表达式x〈y?y:x的值为。

3、若变量a,b已定义为int类型并赋值21和55,要求用printf函数以

a=21,b=55的形式输出,请写出完整的的输出语句________o

4、若a和b均为int型变量,则以下语句的功能是_______。a+=b;b=a-b;

a-=b;

5、下列程序段的运行结果是。

main()

intm=l,t=l;

for(;;)

m=m+t;

t++;

if(m>9)break;

printf(1,%d\nH,m);

)

6、以下程序的运行结果是________o

#include<stdio.h>

func(intarray[][4],intm)

(

inti,j,k;

k=0;

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

m)k-k+array[i][j];

returnk;

)

main()

(

staticinta[3][4]={{1,13,5,7},{2,4,26,8},{10,1,3,12}};

inti,j,m;

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

(

for(j=0;j<4;j++)printf("%4dn,a[i][j]);

printf('An");

)

m=10;

printf(,r\nthevalueis%d\nM,func(a,m)>;

)

7、C语言替换字符的函数是什么?

8、Sinclude<stdio.h>

voidmain()

(

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

for(i=l;i<3;i-+)for(J=0;j<i;j++)s+=a[i][j];

printf("%d\nn,s);

)

9、以下程序运行后的喻出结果是o

main()

(

inta=l,b=3,c=5;

if(c=a+b)printf("yes\n");

elseprintf("no\nr,);

)

10、main()

(

inta,b;

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

(

if(b>=20)break;

if(b%3==l)

(

b+=3;

continue;

)

b-=5;

)

}

程序的输出结果a的值为o

三、编程题(每小题分,共40分)

1、编写程序:查找n在数组a中最后一次出现的位置

例如:如果a数组中的元素为:[0,5,0,5,6,8,0,4,3,0],当n=5时,程

序的输出结果为:5isno.3当『10时,程序的输出结果应为:10notfound

(本题10分)

2、编程判断输入的字符串是否为“回文”。所谓“回文”是指顺读和倒读都一

样,如abcba。(本题14分)

3、编写程序:本题为用结构体求学生的平均分和分数最高的学生对应课程以及

分数。

输入10个学生5门课的成绩,分别用函数实现以下功能:

1、计算每个学生平均分

2、计算每门课平均分

3、找出所有50个分数中最高的分数所对应的学生和课程(本题16分)

【C语言考试试卷(一)参考答案】

一、单项选择题

1、B

【解析】本题考查C语言的正确赋值方法。a=b=c+2实际上相当于a=(b=c+2),进而可分

解为两个表达式:b飞+2和24。注意:选项A)中包含一个不合法的运算符“:=”;选

项C)应改为5%3;选项D)可理解为两个表达式:a17=c।b和"乱।7,其中第一

个是错的,因为C语言规定赋值号的左边只能是单个变量,不能是表达式或常量等。

2、B

3、C

4、A

5、C

6、C

7、D

【解析】解析:本题考查字符串数组和指针的引用方式。在C语言中,系统在每个字符

串或数组的最后自动加入一个字符'\0',作为字符的结束标志,在本题中,chara

[]="Itismine”;所表示的。字符串实际含有11个字符。

8、D

9、C

【解析】此题属于记忆性的题目,NULL是指未知的值或无任何值。

10、C

11、C

【解析】每个C程序中都要有且仅有一个主函数,该函数是程序的入口,而语句、预处

理命令和函数及类在程序中都可以有多个。

12、B

【解析】本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,

选项A总新类型名应该在原类型名之后,C选项中后面要加分号,D选项中可以使用原类型

名。

13、C

14、A

【解析】node结构体变量。

15、B

【解析】short类型的取值范围是-32768、32767,再加1时发生溢出,变为0。

16、B

17、B

【解析】在本题中,s[0].a=l,s[l].b=5,所以输出结果为6。

18、A

【解析】本题主要考查的知识点为位移位运算符。

[要点透析]“VV”为左移运算符,移位时将数据看成二进制数,题中表达式表示将a左

移1位,0100左移一位后所对应的十进制数是8。

19、C

20、D

【解析】结构体变量所占用内存的字节数是其所有成员所占用内存字节数之和。本题中

整型变量i所占用的内存是2字节,字符型变量ch所占用的内存是1字节,双精度型变量

f所占用的内存是8字节,三者相加即可。

二、填空题

1、5

2、3

3、['printf("aFd,b』d",a,b);']

4、['交换变量a和b的值']

5、11

6.1135724268101312thevalueis31

7、strcpy(a,b);

8、14

【解析】该程序即计算+a[2][0]+a[2][1]的值,对应数组中的数为:3+5

+6=14。

9、1yes」

10、8

三、编程题

1、#include<st.dio.h>

main()

(

inta[10]={l,5,2,5,6,8,7,4,3,0);

inti,k,n,f=0;

scanf("%d",&n);

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

if(a[i]==n)

{

f=l;

k=i;

)

if(f)printf(tt%disno.%d\n",n,k);

elseprintf("%dnotfound!\n",n);

)

2、#include

voidmain()

(

inti,n;

chara[20];

printf("请输入字符串:");

gets(a);

n=strlen(a);

for(i=0;i=n)

printf("是回文.\n);

)

3、#include<stdio.h>

typcdefstructstu{

intnum[20J;

floatscore1;

floatscore2;

floatscore3;

floatscored;

floatscore5;

floataver;

}student;

floata[5];

int.main(){

studentstu[10];

studentavcragcScorc(studentstu[10]);

studentaverage5(studentstu[10j);

studentmax(studentstu[10]);

inti;

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

scanf,stuEi].num,&stu[i].scorel,&stu[iLscore2,&stu[i].score

3,&stu[i].score4,&stu[i].score5);

}

averages(stu);

averageScore(stu);

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

printf("the%dscore'saverageis%fn,i,a[i]);

)

max(stu);

return0;

)

studentaverages(studentstu[10]){

inti;

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

stu[i].aver=(stu[i].score1+slu⑴.score2+stu[i].score3+stu[i].score4+stu[i]

.score5)/5;

printf("the%dstudent'saveragescore

isstu[i].num,stu[i].aver);

)

)

studentaverageScore(studentstuLlOj){

inti;

floatsum=0;

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

sum=sum+stu[i].score1;

)

a[0]=sum;

sum=0;

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

sum=sum+stuLi].score2:

)

a[l]=sum;

sum=0;

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

sum=sum+stu[i].scorc3;

)

a[2]=sum;

sum=0;

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

sum=sum+stu[i].scored;

)

a[3]=sum;

sum=0;

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

sum=sum+stu[i].score5;

)

a[4]=sum;

)

studentmax(studentstu[10]){

inti,j,n,r,d;

floats[50],maxl=0;

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

s[i]=stu[i].scoreI;

s[i+l]=stu[i].score2;

s[i+2]=stu[i].score3;

s[i+3]=stu[i].score4;

s[i+4]=stu[i].score5;

)

for(i=0;i<50;i++){

for(j=i+l;j<50;j++){

if(s[i]>maxl){

maxl=s[i];

n=i;

}

)

)

printf;

r=n%5:

d=n%10;

printf("themaxscoreis%f,the%dthstudent's%dthscore",maxl,d+l,r);

)

广西财经学院C语言考试试卷(二)

总分:100分考试时间:90分钟

注意事项:

>题目包括三大部分,单项选择题,填空题,编程题,请按要求作答。

>答卷必须用蓝色或者黑色钢笔、圆珠笔,不许用铅笔或者红笔作答。

>考试中途不能无端离场,否则视为放弃。考试过程中如遇问题请及时向监考老师反

馈。

一、单项选择题(每小题2分,共40分)

1、在C语言中,要求运算数必须是整数的运算符是。

A、<

B、%

C、/

D、>

2、设整型变量m,n,a,b,c,d均为1,执行(m=a>b)&&(n二c>d)后,m,n的值

是________O

A、0,0

B、0,1

C、1,0

D、1,1

3、若所用变量都已正确定义,则在以下选项中,非法的表达式是________o

A、a!=4||b==l

B、'a'%3

C.ra'=l/2

D、'a'+32

4、break语句的正确的用法是________。

A、无论在任何情况下,都中断程序的执行,退出到系统下一层。

B、在多重循环中,只能退出最靠近的那一层循环语句。

C、跳出多重循环。

D、只能修改控制变量。

5、下面说法正确的是o

A、char*x,y,**str同时定义了三个变量,符合语法规范

B、数组说明符的一对方括号中只能使用常量数值

C、单精度浮点值乜可以作为数组下标

D、若有定义floatarr[2]则printf(w%2.lfM,array[0.5])是合法的语

句

6、设ch是char型变量,其值为a,且有下面的表达式ch=(ch>=ra'&&ch<

二'z')?(ch-32):ch上面表达式的值是o

A、a

B、A

C、Z

D、z

7、对于定好的数组,系统会自动为该数组分配内存空间,charc[20]二{"hello

world"}对于c对应的内存中的地址编号是2000,则c[4]对应的内存地址的编

号为________o

A、2004

B、200A

C、2010

D、2008

8、设x,y,z,s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z

后,则s的值为:

A、不定值

B、2

C、1

D、0

9、下列选项中,值为1的表达式是________o

A、1-,0,

1-'\0'

C、'1'-0

D、、0'「0'

10、若有以下说明:charsl[]={"treew

},s2[]={wflowerH};,则以下对数组元素或数组的输出语句中,正确的是

A、printf(w%s%sw,si[5],s2[7]);

B、printf(**%c%cw,si,s2);

C、puts(si);puts(s2);

D、puts(si,s2);

11、程序中若有如下说明和定义语句charfun(char*);

main()

(

char*s=woneM,a[5]={0},(*fl)()=fun,ch;

)

以下选项中对函数fun的正确调用语句是

A、(*fl)(a);

B、*f1(*s);

C、fun(&a);

D、ch=*f1(s);

12、微处理器按其字长可以分为________o

A、4位、8位、16位

B、8位、16位、32位、64位

C、4位、8位、16位、24位

D、8位、16位、24位

13、若chara[10];已正确定义,以下语句中不能从键盘上给a数组的所有元

素输入值的语句是O

A、gets(a);

B、scanf("%s",a);

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

D、a=getchar();

14、下面定义结构变量的语句中错误的是________o

A、structstudent{

intnum;charname[20];

}s;

B、struct{

intnum;charname[20];

}s;

C、structstudent!

intnum;charname[20];

);

structstudents;

D、structstudent{

intnum;charname[20];

);

students;

15、执行下面程序中的输出语句后,a的值是o

^include<stdio.h>

main()

inta;

printf(,'%d\nH,(a=3*5,a*4));

)

A、15

B、20

C、10

D、60

16、下面程序段。x=3;

do

{

y-x——;

if(!y)

(

printfC,*M);

continue;

}

printf("#M);

}

while(l<=x<=2);

A、将输出##

B、将输出###*

C、是死循环

D、含有不合法的控制表达式

17、有以下定义和语句:

structstudents{

intnum:

charname[20];

charc;

struct{

intgrade1;

intgrade2;

}s;

};

structstudentsw,木pw;

*pw=w;

下列赋值语句不正确的是

A、num=1002;

B、w.gradel=85;

C、pw->num=1002;

D、w.s.grade2=85;

18、以下程序的输出结果是

main()

(

intx=l1,y=l1;

printf(*,%d%d\\n,,x—,―y);

)

A、11,11

B、10,10

C、10,11

D、11,10

19、设有以下语句,其中不是对a数组元素的正确引用的是:______(其中OWi

<6)inta[6]={11,22,33,44,55,66),*m=a;

A、&(*(a+i))

B、*(&a[i])

C、m[i]

D、a[i]

20、有以下程序

#include<stdio.h>

structtt

(

intx;

structtt*y;

)

*p;

structtta[4]={20,a+l,15,a+2,30,a+3,17,a};

main()

{

inti;

p=a;

for(i=l;i<=2,i-+)

(

printf('r%d,f,p->x);

p=p->y;

)

}

程序的运行结果是o

A、20,30,

B、30,17

C、15,30,

D、20,15

二、填空题(每小题2分,共20分)

1、以下程序的输出结果是O

main()

(

intx=5,y=6;

printf(,,%da%dn,x---,----y);

}

2、在c语言中,标识符是由英文字母、、下划线组成的。

3、若inta=3,b=2,c=l,f;表达式f=aAb>c的'直是。

4、算术表达式a=b+3中,a、b称为变量,3称为______量,=、+称为运算

符。

5、仅由顺序、选择(分支)和重复(循环)结构构成的程序是程序。

6、有以下程序,程序执行后,输出结果是o

#include<stdio.h>

voidfun(int*a)

(

a[0]=a[l];

)

main()

(

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

for(i=2;i>=0;i—)fun(&a[i]);

for(i=0;i<10;i-+)printf(M%dH,a[i]);

printfCAn11);

)

7、字符串函数用于把一个字符串写入指定的磁盘文件中。

8、c语言规定,可执行程序的开始执行点是o

9、下面程序的运行结果是o

main()

(

inti,j,a[2][3]={{2,4,6},{8,10,12}};

printf("theoriginalarrayis:\nM);

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

(

for(j-0;j<3;j++)printf(rt%4d",a[i][j]);

printf(H\n'3;

)

printf(,r\ntheresultis:\nM);

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

(

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

printf(H\n'3;

)

)

10、已知字符a的acsii码值为65,以下语句的输出结果是

charch=,b';

printf(M%c%d\n'r,ch,ch);

三、编程题(每小题分,共40分)

1、输出9*9乘法表。(本题10分)

2、编写程序,判断从提盘输入的字符中数字字符的个数、大写字母的个数、小

写字母的个数及其它字符的个数,以*作为字符输入结束标志。(本题14分)

3、若有以下银行卡信息:

structcard{

intid;〃银行卡号

intbonus;〃金额

);

请编写程序,从键盘输入5条银行卡记录,使用结构体数组存

储这些数据,并按金额升序排序,输出排序后的若果。

【输入形式】5条银行卡记录分行输入,每行数据用空格间隔

【输出形式】分5行输出数据,每行数据均使用空格间隔

【输入样例】

100120

100280

100350

100410

100640

【输出样例】

100410

100120

100640

100350

100280(本题16分)

【C语言考试试卷(二)参考答案】

一、单项选择题

1、B

2、B

【解析】m=a>b结果为假,则m的值为0,n=c>d结果为假,n的值为0。

3、C

【解析】选项C中的'a'是单字节它是不允许被赋值的。所以选项C是非法的表达式c选

项A是逻辑表达式,是正确的。选项B是字符'a'的值与3进行求余运算。是正确的。选项

D参加运算的也是字符的值,所以这个表达式也是正确的。

4、B

5、A

【解析】定义数组时,一对方括号内为整型数据类型,可以是变量也可以是常量,选项B

错误;访问数组时,数组下标为整型数据,选项C,D错误。在选项A中,定义了3个变量,

类型为char的变量x,类型为char的变量y类型为char的变量str本题答案为A

选项。

6,B

7、A

8、C

9、B

【解析】在C程序中,字符量可参与任何整数运算。字符参与运算时,首先要将字符转

换为对应的ASCII码值再参与整数运算。字符'1'对应的ASCII码值是49,字符'0'对应的

ASCII码值是48,字符、)'是字符串结束标识符NULL,其对应的ASCII码值是0。

10、C

11、A

12、B

【解析】字长是指计算机运算部件一次能同时处理的二进制数据韵位数。微处理器按其

字长可以分为8位、16位、32位、64位。

13、D

14、I)

15、A

【解析】本题考查对逗号运算符的理解。逗号运算符的求解过程是从左至右,依次求解

各个表达式的值,所以在该题中,先使a的值等于15,再计算a*4,此时整个表达式的值

为60,但a的值并未改变,仍为15。

16、C

17、B

【解析】本题主要考查的是结构体变量的嵌套定义,也就是说一个结构体变量也可以是

一个结构体。在本题中student这个结构体中包含了结沟体s。所以对结构体变量w中

grade1成员的引用是w.s.grade1或w->s->grade1。

18、D

19、A

20、D

二、填空题

1、5a5

2、数字

3、0

4、常

5、['结构化']

6、[r777765432T]

7、fputsftfputs()

8、main函数

9,theoriginalarrayis:24681012theresultis:28410612

10、['b66']

三、编程题

1、^include<stdio.h>

voidmain()

(

inti=l;

for(i:i<=9:i++)

(

intj=l;

for(j;j<=i;j++)

(

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

)

printf("\n");

)

)

2、voidmain()

(

inti,xtm=0,n=0,k=0,j=0;

chara[20];

printf("请输入字符串:”);

gets(a);

x=strlen(a);

for(i=0;i='0'&&a[i]<='9')

m++;

elseif(a[i]>='A'&&a[i]<='Z')

n++;

elseif(a[i]>='a'&&a[i]<='z')

k++;

else

j++;

)

prinlf("*d,%d,%d,%d\n”,ni,n,k,j);

)

3、ftinclude<stdio.h>

#include<stdlib.h>

structcard

(

intid;//银行卡号

intbonus;〃金额

[a[5],tamp;

intmain()

(

inti,j;

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

scanf("%d%d",&a[i].id,bonus);

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

(

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

(

if(a[j].bonus>a[j+l].bonus)

(

tamp=a[j];

a[j]=a[j+l];

a[j+l]=tamp;

}

)

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

(

printf("%d%d\n",a[j].id,a[j].bonus);

)

)

广西财经学院C语言考试试卷(三)

总分:100分考试时间:90分钟

注意事项:

>题目包括三大部分,单项选择题,填空题,编程题,请按要求作答。

>答卷必须用蓝色或者黑色钢笔、圆珠笔,不许用铅笔或者红笔作答。

>考试中途不能无端离场,否则视为放弃。考试过程中如遇问题请及时向监考老师反

馈。

一、单项选择题(每小题2分,共40分)

1、若程序中有宏定义行:#defineN100,则以下叙述中正确的是。

A、宏定义行中定义了标识符N的值为整数100

B、在编译程序对C源程序进行预处理时用100替换标识符N

C、对C源程序进行编译时用100替换标识符N

D、在运行时用100替换标识符N

2、下列标识符中合法的是o

A、abde+

B、8KSJF

C、67KDJ

D、DK3

3、三种基本结构中,能简化大量程序代码的是o

A、顺序结构

B、分支结构

C、选择结构

D、重复结构

4、设i,j,k均为int型变量,则执行完下面的for循环后,k的值为

for(i=0,j=10;i<=j;i++,j—)k=i+j;

A、12

B、10

C、11

D、9

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

A、p=&x[i];

B、p二x;

C、p=x[i];

D、p=&(x+i)

6、将十进制数0.625转换成二进制数是

A、0.Ill

B、0.101

C、0.5

D、0.A

7、若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为。

A、*(a+j*n+i)

B、*(a+i*n+j)

C、*(*(a+i)+j)

D、*(*a+i)+j

8、下列各项关于变量的描述中正确的是o

A、变量名不是标识符

B、变量名的字符是不区分大小写的

C、变量名的定义必须符合标识符的定义规则

D、变量属性分为基本类型和复合类型

9、下列关于boolean类型的叙述中,正确的是。

A、可以将boolean类型的数值转换为int类型的数值

B、可以将boolean类型的数值转换为字符串

C、可以将boolean类型的数值转换为char类型的数值

D、不能将boolean类型的数值转换为其他基本数据类型

10、执行完语句int口x=newint[25];后,则下列哪项说法是正确的

A、x[24]值为0

B、x[24]值未定义

C、x「251值为0

D、x[0]值为空

11、若调用fputc函数输出字符成功,则其返回值是()。

A、EOF

B、1

C、0

D、输出的字符

12、结构化程序设计主要强调程序的0

A、效率

B、速度

C、可读性

D、大小

13、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对

相等数时结束循环,请选择填空。

^include<stdio.h>

main()

inta,b,t;

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

while()

(

if(a>b)

(

t二a;

a=b;

b=t;

)

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

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

}

}

A、!a=b

B、a!=b

C、a==b

D、a=b

14、有以下程序

^include<stdio.h>

main()

(

structstu

(

charname[9];

charsex;

doublescore[2];

}

structstua-{"zhao",'【n’,85.0,90.0},b-[,,qianr,,'f',95.0,92.0};

b=a;

printf(M%s,%c,%2.Of,%2.0f\n",b.name,b.sex,b.score[0],b.score[1]);

)

程序的运行结果是______o

A、Qian,f,95,92

B、Qian,m,85,90

C、Zhao,f,95,92

D、Zhao,m,85,90

15、已知在ascii代码中,字母b的序号为66,以下程序的输出的结果是

main()

(

charcl='br,c2=,d*;

printf("%d,%c\nr,cl,c2);

)

A、B,66

B、66,D

C、B,D

D、66,68

16、有以下程序:

main(){

intk=4,n=0;

for(;n<k;){

n++;

if(n%3!=o)continue;

k一;

}

printf(',%d,%d\nH,k,n);

)

程序运行后的输出结果是________o

A、1,1

B、2,2

C、3,3

D、4,4

17、若有以下说明语句:

structstudent

{

intnum;

charname[];

floatscore;

}stu;

则下面的叙述不正确的是:()

A、struct是结构为类型的关键字

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

C、num,score都是结构体成员名

D、stu是用户定义的结构体类型名

18、下列程序的输出结果为()。

main()

{intm=7,n=4;

floata=38.4,b=6.4,x;

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

printf(映f\n",x);

)

A、27

B、27.5

C、28

D、28.5

19、若有以下定义intx[10],*pt=x;则对x数组元素的正确引用是

________O

A、

B、*(x+3)

C、*(pt+10)

D、pt+3

20、有以下定义和语句

structworkers

{

intnum;

charname1201;

charc;

srruct

(

intday;

intmonth;

intyear;

)

s;

);

structworkersw,*pw;

pw=&w能给w中year成员赋1980的语

温馨提示

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

评论

0/150

提交评论