东北大学秦皇岛c语言考试题13.docx

上传人:b****4 文档编号:4345019 上传时间:2022-11-30 格式:DOCX 页数:26 大小:23.29KB
下载 相关 举报
东北大学秦皇岛c语言考试题13.docx_第1页
第1页 / 共26页
东北大学秦皇岛c语言考试题13.docx_第2页
第2页 / 共26页
东北大学秦皇岛c语言考试题13.docx_第3页
第3页 / 共26页
东北大学秦皇岛c语言考试题13.docx_第4页
第4页 / 共26页
东北大学秦皇岛c语言考试题13.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

东北大学秦皇岛c语言考试题13.docx

《东北大学秦皇岛c语言考试题13.docx》由会员分享,可在线阅读,更多相关《东北大学秦皇岛c语言考试题13.docx(26页珍藏版)》请在冰豆网上搜索。

东北大学秦皇岛c语言考试题13.docx

东北大学秦皇岛c语言考试题13

一、选择题答案

1.以下所列的C语言常量中,错误的是

A)0xFF

B)1.2e0.5

C)2L

D)'\72'

你所选择的答案是:

*,正确答案是:

2.有以下程序段

intk=0

while(k=1)k++;

循环执行的次数是

A)无限次

B)有语法错,不能执行

C)一次也不执行

D)执行1次

你所选择的答案是:

*,正确答案是:

3.以下程序执行后sum的值是

main()

{inti,sum;

for(i=1;i<6;i++)sum+=i;

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

}

A)15

B)14

C)不确定

D)0

你所选择的答案是:

*,正确答案是:

4.下列程序段的输出结果是

voidfun(int*x,int*y)

{printf("%d%d",*x,*y);*x=3;*y=4;}

main()

{intx=1,y=2;

fun(&y,&x);

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

}

A)2143

B)1212

C)1234

D)2112

你所选择的答案是:

*,正确答案是:

5.当调用函数时,实参是一个数组名,则向函数传送的是

A)数组的长度

B)数组的首地址

C)数组每一个元素的地址

D)数组每个元素中的值

你所选择的答案是:

*,正确答案是:

6.设有以下说明语句

structex

{intx;floaty;charz;}example;

则下面的叙述中不正确的是

A)struct结构体类型的关键字

B)example是结构体类型名

C)x,y,z都是结构体成员名

D)structex是结构体类型

你所选择的答案是:

*,正确答案是:

7.以下有4组用户标识符,其中合法的一组是

A)For

-sub

Case

B)4d

DO

Size

C)f2_G3

IF

abc

D)WORD

void

define

你所选择的答案是:

*,正确答案是:

8.以下程序的输出结果是

#include"stdio.h"

main()

{

inta,b;

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

{

if(b>=10)break;

if(b%3==1)

{b+=3;continue;}

}

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

}

A)101

B)6

C)5

D)4

你所选择的答案是:

*,正确答案是:

9.在16位C编译系统上,若定义longa;,则能给a赋40000的正确语句是

A)a=20000+20000;

B)a=4000*10;

C)a=30000+10000;

D)a=4000L*10L;

你所选择的答案是:

*,正确答案是:

10.若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是

A)fopen("A:

\user\abc.txt","r")

B)fopen("A:

\\user\\abc.txt","r+")

C)fopen("A:

\user\abc.txt","rb")

C)fopen("A:

\\user\\abc.txt","w")

你所选择的答案是:

*,正确答案是:

11.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是

A)字符A

B)字符a

C)字符e

D)非法的常量

你所选择的答案是:

*,正确答案是:

12.已知i、j、k为int型变量,若从键盘输入:

1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是

A)scanf("%2d%2d%2d",&i,&j,&k);

B)scanf("%d%d%d",&i,&j,&k);

C)scanf("%d,%d,%d",&i,&j,&k);

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

你所选择的答案是:

*,正确答案是:

13.以下程序的功能是:

按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:

main()

{intn,k;

floatscore,sum,ave;

sum=0.0;

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

{for(k=1;k<=4;k++)

{scanf("%f",&score);sum+=score;}

ave=sum/4.0;

printf("NO%d:

%f\n",n,ave);

}

}

上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。

这条语句是

A)sum=0.0;

B)sum+=score;

C)ave=sun/4.0;

D)printf("NO%d:

%f\n",n,ave);

你所选择的答案是:

*,正确答案是:

14.有以下程序

main()

{chara[]={'a','b','c','d','e','f','g','h','\0'};inti,j;

i=sizeof(a);j=strlen(a);

printf("%d,%d\b"i,j);

}

程序运行后的输出结果是

A)9,9

B)8,9

C)1,8

D)9,8

你所选择的答案是:

*,正确答案是:

15.以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。

voidreverse(inta[],intn)

{inti,t;

for(i=0;i

{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}

}

main()

{intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;

reverse(b,8);

for(i=6;i<10;i++)s+=b[i];

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

}

程序运行后的输出结果是

A)22

B)10

C)34

D)30

你所选择的答案是:

*,正确答案是:

16.有以下程序

main()

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

inti,s=0

for(i=0;i<4;i++)s+=aa[i][1];

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

}

程序运行后的输出结果是

A)11

B)19

C)13

D)20

你所选择的答案是:

*,正确答案是:

17.有以下程序

#include

main()

{FILE*fp;inti=20,j=30,k,n;

fp=fopen("d1.dat""w");

fprintf(fp,"%d\n",i);fprintf(fp,"%d\n"j);

fclose(fp);

fp=fopen("d1.dat","r");

fp=fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);

fclose(fp);

}

程序运行后的输出结果是

A)2030

B)2050

C)3050

D)3020

你所选择的答案是:

*,正确答案是:

18.有以下程序

intfa(intx)

{returnx*x;}

intfb(intx)

{returnx*x*x;}

intf(int(*f1)(),int(*f2)(),intx)

{returnf2(x)-f1(x);}

main()

{inti;

i=f(fa,fb,2);printf("%d\n",i);

}

程序运行后的输出结果是

A)-4

B)1

C)4

D)8

你所选择的答案是:

*,正确答案是:

19.有以下程序

voidss(char*s,chart)

{while(*s)

{if(*s==t)*s=t-'a'+'A';

s++;

}

}

main()

{charstr1[100]="abcddfefdbd",c='d';

ss(str1,c);printf("%s\n",str1);

}

程序运行后的输出结果是

A)ABCDDEFEDBD

B)abcDDfefDbD

C)abcAAfefAbA

D)Abcddfefdbd

你所选择的答案是:

*,正确答案是:

20.有以下程序

#include

main()

{char*p,*q;

p=(char*)malloc(sizeof(char)*20);q=p;

scanf("%s%s",p,q);printf("%s%s\n",p,q);

}

若从键盘输入:

abcdef<回车>,则输出结果是:

A)defdef

B)abcdef

C)abcd

D)dd

你所选择的答案是:

*,正确答案是:

21.以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。

#include

voidf(charp[][10],intn)

{chart[20];inti,j;

for(i=0;i

for(j=i+1;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"};inti;

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

}

程序运行后的输出结果是

A)6

B)4

C)5

D)3

你所选择的答案是:

*,正确答案是:

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

 A)C语言比其他语言高级

 B)C语言可以不用编译就能被计算机识别执行

 C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式

 D)C语言出现的最晚,具有其他语言的一切优点

你所选择的答案是:

*,正确答案是:

23.有以下程序段

  intm=0,n=0;charc='a';

  scanf("%d%c%d",&m,&c,&n);

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

  若从键盘上输入:

10A10<回车>,则输出结果是:

( )。

 A)10,A,10

 B)10,a,10

 C)10,a,0

 D)10,A,0

你所选择的答案是:

*,正确答案是:

24.有以下程序

  main()

  {inti;

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

  switch(i)

  {case1:

printf("%d",i);

  case2:

printf("%d",i);

  default:

printf("%d",i);

  }

  }

执行后输出结果是( )。

 A)011122

 B)012

 C)012020

 D)120

你所选择的答案是:

*,正确答案是:

25.有以下程序

main()

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

if(a>b>c)

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

 elseif((c-1>=d)==1)

 printf("%d\n",d+1);

 else

  printf("%d\n",d+2)

}

执行后输出结果是( )。

 A)2

 B)3

 C)4

 D)编译时有错,无结果

你所选择的答案是:

*,正确答案是:

26.阅读以下函数

  fun(char*s1,char*s2)

  {inti=0;

  while(s1[i]==s2[i]&&s2[i]!

='\0')i++;

  return(s1[i]==&&s2{i}!

=='\0');

  }

此函数的功能是( )。

 A)将s2所指字符串赋给s1

 B)比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0

 C)比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0

 D)比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0

你所选择的答案是:

*,正确答案是:

27.已定义c为字符型变量,则下列语句中正确的是( )。

 A)c='97';

 B)c="97";

 C)c=97;

 D)c="a"; 

你所选择的答案是:

*,正确答案是:

28.以下不能正确定义二维数组的选项是( )。

 A)inta[2][2]={{1},{2}};

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

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

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

你所选择的答案是:

*,正确答案是:

29.以下程序

main()

{intx=3,y=2,z=1;

printf("%d\n",x/y&~z);

}

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

 A)3

 B)2

 C)1

 D)0

你所选择的答案是:

*,正确答案是:

30.

你所选择的答案是:

*,正确答案是:

31.以下4组用户定义标识符中,全部合法的一组是( )。

A)_main

 enclude

 sin

B)If

 -max

 turbo

C)txt

 REAL

 3COM

D) int

 k_2

 _001

你所选择的答案是:

*,正确答案是:

32.设有以下定义

#defined2

inta=0;

doubleb=1.25;

charc=’A’;

则下面语句中错误的是( )。

A)a++;  B)b++  C)c++;  D)d++;

你所选择的答案是:

*,正确答案是:

33.以下4个选项中,不能看作一条语句的是( )。

A){;}  B)a=0,b=0,c=0;  C)if(a>0);  D)if(b==0)m=1;n=2;

你所选择的答案是:

*,正确答案是:

34.以下程序段中与语句k=a>b?

(b>c?

1:

0):

0;功能等价的是( )。

A)if((a>B)&&(b>C))k=1;

elsek=0;

B)if((a>B)||(b>C))k=1

 elsek=0;

C)if(a<=B)k=0;

elseif(b<=C)k=1;

D)if(a>B)k=1;

 elseif(b>C)k=1;

你所选择的答案是:

*,正确答案是:

35.若程序中定义了以下函数

doublemyadd(doublea,doubleB)

{return(a+B);}

并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是( )。

A)doublemyadd(doublea,B);

B)doublemyadd(double,double);

C)doublemyadd(doubleb,doubleA);

D)doublemyadd(doublex,doubley);

你所选择的答案是:

*,正确答案是:

36.有以下程序

  main()

  {chara='a',b;

  print("%c,",++a);

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

  }

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

A)b,b

B)b,c

C)a,b

D)a,c

你所选择的答案是:

*,正确答案是:

37.下列条件语句中,功能与其他语句不同的是( )。

A)if(a)printf("%d\n",x);elseprintf("%d\n",y);

B)if(a==0)printf("%d\n",y);elseprintf("%d\n",x);

C)if(a!

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

D)if(a==0)printf("%d\n",x);elseprintf("%d\n",y);

你所选择的答案是:

*,正确答案是:

38.有以下程序

  main()

  {chara,b,c,d;

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

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

  }

若运行时从键盘上输入:

6,5,65,66<回车>。

则输出结果是( )。

A)6,5,A,B

B)6,5,65,66

C)6,5,6,5

D)6,5,6,6

你所选择的答案是:

*,正确答案是:

39.有以下定义和语句

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

p[0]=a[1];

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

A)a[0][1]

B)a[1][0]

C)a[1][1]

D)a[1][2]

你所选择的答案是:

*,正确答案是:

40.有以下程序

  main()

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

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

  }

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

A)China

B)Bejing

C)ng

D)ing  

你所选择的答案是:

*,正确答案是:

41.已有定义:

inti,a[10],*p;,则合法的赋值语句是( )。

A)p=100;

B)p=a[5];

C)p=a[2]+2;

D)p=a+2;

你所选择的答案是:

*,正确答案是:

42.设有定义语句:

charc1=92,c2=92;,则以下表达式中值为零的是( )。

A)c1^c2

B)c1&c2

C)~c2

D)c1|c2  

你所选择的答案是:

*,正确答案是:

43.有以下程序

  voidfun(int*a,inti,intj)

  {intt;

  if(i

  {t=a;a=a[j];a[j]=t;

  i++;j--;

  fun(a,i,j);

  }

  }

  main()

  {intx[]={2,6,18},i;

  fun(x,0,3);

  for(i=0;i<4;i++)printf("%2d",x);

  printf("\n");

  }

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

A)1268

B)8621

C)8162

D)8612

你所选择的答案是:

*,正确答案是:

44.有以下说明和定义语句

  structstudent

  {intage;charnum[8];};

  structstudentstu[3]={{20,"200401"},{21,"200402"},{10\9,"200403"}};

  structstudent*p=stu;

以下选项中引用结构体变量成员的表达式错误的是( )。

A)(p++)->num

B)p->num

C)(*p).num

D)stu[3].age

你所选择的答案是:

*,正确答案是:

45.以下能正确定义一维数组的选项是( )。

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

 B)chara[]={0,1,2,3,4,5};

 C)chara={'A','B','C'};

 D)inta[5]="0123";

你所选择的答案是:

*,正确答案是:

46.以下叙述中错误的是( )。

 A)对于double类型数组,不可以直接用数组名对数组进行整体输入或输出

 B)数组名代表的是数组所占存储区的首地址,其值不可改变

 C)当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息

 D)可以通过赋初值的方式确定数组元素的个数

你所选择的答案是:

*,正确答案是:

47.以下语句或语句组中,能正确进行字符串赋值的是( )。

 A)char*sp;*sp="right!

";

 B)chars[10];s="right!

";

 C)chars[10];*s="right!

";

 D)char*sp="right!

";

你所选择的答案是:

*,正确答案是:

48.有以下程序

main()

{

inta=1,b;

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

{

if(a>=8)break;

if(a%2==1){a+=5;continue;}

a-=3;

}

printf("%d",b);

}

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

 A)3

 B)4

 C)5

 D)6

你所选择的答案是:

*,正确答案是:

49.有以下程序

main()

{

intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;

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

{

for(j=1;j<=i;j++)printf("%c",'');

for(j=j<4;j++)printf("%4d",num[i][j]);

printf("");

}

}

若要按以下形式输出数组右上半三角

1234

678

1112

16

则在程序下划线处应填入的是( )。

 A)i-1

 B)i

 C)i+1

 D)4-i

你所选择的答案是:

*,正确答案是:

50.有以下程序段

  intk=0,a=1,b=2,c=3;

  k=a

b:

k;

  执行该程序段后,k的值是( )。

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

你所选择的答案是:

*,正确答案是:

51.若有定义:

int

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

当前位置:首页 > 解决方案 > 学习计划

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

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