湖南科技大学c语言期末试题库.docx

上传人:b****5 文档编号:28429546 上传时间:2023-07-13 格式:DOCX 页数:95 大小:39.49KB
下载 相关 举报
湖南科技大学c语言期末试题库.docx_第1页
第1页 / 共95页
湖南科技大学c语言期末试题库.docx_第2页
第2页 / 共95页
湖南科技大学c语言期末试题库.docx_第3页
第3页 / 共95页
湖南科技大学c语言期末试题库.docx_第4页
第4页 / 共95页
湖南科技大学c语言期末试题库.docx_第5页
第5页 / 共95页
点击查看更多>>
下载资源
资源描述

湖南科技大学c语言期末试题库.docx

《湖南科技大学c语言期末试题库.docx》由会员分享,可在线阅读,更多相关《湖南科技大学c语言期末试题库.docx(95页珍藏版)》请在冰豆网上搜索。

湖南科技大学c语言期末试题库.docx

湖南科技大学c语言期末试题库

选择题(共题),成绩()

一、C语言所提供的根本数据类型包括字符型、整型、双精度型、单精度型和____:

A)指针型B)构造型

C)数组型D)列举类型

正确答案是:

D    

二、下面四个选项中,均是合法浮点数的选项是:

A)1e+15e-9.403e2

B)-.6012e-4-8e5

C)123e1.2e-.4e-4

D)-e3e-45.e-0

正确答案是:

B    

3、以下符合C语言语法的表达式:

A)d=9+e+f=d+9B)d=9+e,f=d+9

C)d=9+e=e++,d+9D)d=9+e++=d+7

正确答案是:

B    

4、假设有定义inta=12,那么表达式a+=a-=a*=a的值是:

A)0B)-264

C)-144D)132

正确答案是:

A    

五、下面程序的输出结果是:

#include

voidmain()

{

inta,b,c;

intd;

b=(a=32767,a++);

c=d=0xffff;

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

}

A)8000,32767,65535,65535B)-1,-1,32767,8000

C)-1,-1,-1,-1D)32767,-1,-1,-1

正确答案是:

A    

六、有double型变量x=2.5,y=4.7,整型变量a=7,那么表达式x+a%3*(int)(x+y)%2/4的值是:

C)2.75D)0

正确答案是:

B    

7、设inta=12,那么执行完语句a+=a-=a*a后,a的值是

A)552B)264C)144D)-264

正确答案是:

D    

八、表达式:

10!

=9的值是

A)trueB)非零值C)0D)1

正确答案是:

D    

九、在以下选项中,不正确的赋值语句是

A)++t;B)n1=(n2=(n3=0));

C)k=i=j;D)a=b+c=1;

正确答案是:

D    

10、设a,b和c都是int型变量,且a=3,b=4,c=5,那么下面的表达式中,

值为0的表达式是

A)'a'&&'b'B)a<=b

C)a||b+c&&b-cD)!

((a

c||1)

正确答案是:

D    

1一、能正确表示a和b同时为正或同时为负的逻辑表达式是

A)(a>=0||b>=0)&&(a<0||b<0)

B)(a>=0&&b>=0)&&(a<0&&b<0)

C)(a+b>0&&a+b<=0)

D)a*b>0

正确答案是:

D    

1二、运行下面程序后,输出是()。

#include

voidmain()

{intk=-3;

if(k<=0)printf("****\n");

elseprintf("####\n")

}

A)####B)****

C)####****D)有语法错误不能通过编译

正确答案是:

D    

13、下面程序的输出结果是

#include

voidmain()

{inta=2,b=7,c=5;

switch(a>0)

{case1:

switch(b<0)

{case1:

printf("@");break;

case0:

printf("!

");break;

}

case0:

switch(c==5)

{case0:

printf("*");break;

case1:

printf("#");break;

default:

printf("%%");break;

}

default:

printf("&");

}printf("\n");

}

A)&B)!

#&

C)%%D)@*&

正确答案是:

B    

14、运行下面程序时,假设从键盘输入数据为"123",

那么输出结果是()。

#include"stdio.h"

voidmain()

{intnum,i,j,k,place;

scanf("%d",&num);

if(num>99)

place=3;

elseif(num>9)

place=2;

else

place=1;

i=num/100;

j=(num-i*100)/10;

k=(num-i*100-j*10);

switch(place)

{case3:

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

break;

case2:

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

break;

case1:

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

}

}

A)123B)1,2,3

C)321D)3,2,1

正确答案是:

C    

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

#include

voidmain()

{inta=-1,b=4,k;

k=(++a<0)&&!

(b--<=0);

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

}

A)1,0,4B)1,0,3

C)0,0,3D)0,0,4

正确答案是:

D    

1六、执行以下程序,分别输入-10和5,运行的结果分别是()。

#include

voidmain()

{intx,c,m;

floaty;

scanf("%d",&x);

if(x<0)c=-1;

elsec=x/10;

switch(c)

{case-1:

y=0;break;

case0:

y=x;break;

case1:

y=10;break;

case2:

case3:

y=-0.5*x+20;break;

default:

y=-2;

}

if(y!

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

elseprintf("error\n");

}

A)y=0B)y=0

y=5y=-2

C)y=-10D)y=0

y=5y=10

正确答案是:

A    

17、执行下面程序时,假设从键盘输入"2",那么程序的

运行结果是()。

#include

voidmain()

{intk;charcp;

cp=getchar();

if(cp>='0'&&cp<='9')

k=cp-'0';

elseif(cp>='a'&&cp<='f')

k=cp-'a'+10;

elsek=cp-'A'+10;

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

}

A)2B)4

C)1D)10

正确答案是:

A    

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

#include

voidmain()

{inta=358;

if(a>=100)

{if(a>=1000)

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

elseprintf("%dis100to999\n",a);

}

else

{if(a<10)

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

elseprintf("%dis10to99\n",a);

}

}

A)aislessthan10B)ais10to99

C)aisgreaterthan10000D)358is100to999

正确答案是:

D    

1九、以下表达正确的选项是

A)do-while语句组成的循环不能用其它语句组成的循环来代替

B)do-while语句组成的循环只能用break语句退出

C)用do-while语句组成的循环,在while后的表达式为非零时终止循环

D)用do-while语句组成的循环,在while后的表达式为零时终止循环

正确答案是:

D    

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

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

A)12B)10

C)11D)9

正确答案是:

B    

2一、假设i为整型变量,那么以下循环语句的循环次数是()。

for(i=2;i==0;)

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

A)无穷次B)0次

C)1次D)2次

正确答案是:

B    

2二、下面程序的输出结果是()。

#include

voidmain()

{unsignedintnum,k;

num=26;k=1;

do{

k*=num%10;

num/=10;

}while(num);

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

}

A)2B)12

C)60D)18

正确答案是:

B    

23、下面程序的输出结果是()。

#include

voidmain()

{intx,i;

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

{x=i;

if(++x%2==0)

if(x%3==0)

if(x%7==0)

printf("%d",i);

}

}

A)28B)27

C)42D)41

正确答案是:

D    

24、下面程序的输出结果是()。

#include

voidmain()

{intx=3,y=6,a=0;

while(x++!

=(y-=1))

{a+=1;

if(y

}

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

}

A)x=4,y=4,a=1B)x=5,y=5,a=1

C)x=5,y=4,a=3D)x=5,y=4,a=1

正确答案是:

D    

2五、当从键盘上输入字符“12134211〞下面程序的

输出结果是()。

#include

voidmain()

{chars;

intv1=0,v2=0,v3=0,v4=0,k;

for(k=0;k<=7;k++)

{scanf("%c",&s);

switch(s)

{default:

v4++;

case'1':

v1++;

case'3':

v3++;

case'2':

v2++;}

}

printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);

}

A)v1=4,v2=2,v3=1,v4=1B)v1=4,v2=9,v3=3,v4=1

C)v1=5,v2=8,v3=6,v4=1D)v1=8,v2=8,v3=8,v4=8

正确答案是:

C    

2六、下面程序的功能是:

计算1到10之间奇数之和及偶数之和,请填空。

#include

voidmain()

{inta,b,c,i;

a=c=0;

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

{a+=i;

______;

c+=b;

}

printf("偶数之和=%d\n",a);

printf("奇数之和=%d\n",c-11);

}

A)i+=2B)i++

C)b=b+1D)b=i+1

正确答案是:

D    

27、运行以下程序后,如果从键盘上输入12,8<回车>,

那么输出结果为()。

#include

voidmain()

{inta,b,n1,n2,t;

scanf("%d,%d",&n1,&n2);

if(n1>n2)

{t=n1;n1=n2;n2=t;}

a=n1;b=n2;

while(b!

=0)

{t=a%b;

a=b;

b=t;}

printf("%d,%d\n",a,n1*n2/a);

}

A)2,6B)4,24

C)4,12D)8,96

正确答案是:

B    

2八、有如下程序

#include

voidmain()

{charch[80];

intj;longs=0;

printf("Enteranumeralstring\n");gets(ch);

for(j=0;ch[j]>'\0';j++)

s=10*s+ch[j]-'0';

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

}

假设是运行时,从键盘上输入由数字组成的字符串,

该程序的功能是________。

A)测字符数组ch的长度

B)将数字字符串ch转换成十进制数

C)将字符数组中的小写字母转换成大写

D)将字符数组中的大写字母转换成小写

正确答案是:

B    

2九、有如下程序

#include

voidmain()

{charch[80]="123abcdEFG*&";

intj;longs=0;

for(j=0;ch[j]>'\0';j++);

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

}

该程序的功能是________。

A)测字符数组ch的长度

B)将数字字符串ch转换成十进制数

C)将字符数组ch中的小写字母转换成大写

D)将字符数组ch中的大写字母转换成小写

正确答案是:

A    

30、以下程序的输出结果是________。

#include

voidmain()

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

inti,j,s=0;

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

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

if(i==0||j==0||i==3||j==3)s+=a[i][j];

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

}

A)88B)66

C)60D)50

正确答案是:

B    

3一、设有以下定义语句

charstr1[]="string",str2[8],str3[6],str4[]="string";

那么下面对函数strcpy的挪用中,错误的挪用是________。

(此函数用来复制字符串)

A)strcpy(str1,"HELLO1");B)strcpy(str2,"HELLO2");

C)strcpy(str3,"HELLO3");D)strcpy(str4,"HELLO4");

正确答案是:

C    

3二、阅读程序:

#include

voidmain()

{charstr1[]="howdoyoudo",str2[10];

scanf("%s",str2);

printf("%s",str2);

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

}

运行该程序,输入字符串HOWDOYOUDO,那么程序的输出结果是______。

A)HOWDOYOUDOB)HOWhowdoyoudo

C)HowhowdoyoudoD)howdoyoudo

正确答案是:

B    

33、下面程序的输出是________。

#include

voidmain()

{chars[]="23245322";

intv1=0,v2=0,v3=0,v4=0,k;

for(k=0;s[k];k++)

switch(s[k])

{default:

v4++;

case'2':

v1++;

case'4':

v3++;

case'3':

v2++;

}

printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);

}

A)v1=4,v2=2,v3=1,v4=1B)v1=4,v2=9,v3=3,v4=1

C)v1=5,v2=8,v3=6,v4=1D)v1=8,v2=8,v3=8,v4=8

正确答案是:

C    

34、以下程序执行后的输出结果是________。

〔设a[0][0]是数组a中的第1个元素〕

#include

voidmain()

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

inti,j,n=9;

i=n/5;j=n-i*5-1;

printf("NO.%d:

%d,%dis%d\n",n,i,j,a[i][j]);

}

A)第n个元素所在的行和列及其该元素的值

B)第n行的最大元素所在的行和列及其最大值

C)第i行的最大元素所在的行和列及其最大值

D)以上都不对

正确答案是:

A    

3五、以下一组初始化语句中,正确的选项是________。

A)inta[8]={};B)inta[9]={0,7,0,4,8};

C)inta[5]={9,5,7,4,0,2};D)inta[7]=7*6;

正确答案是:

B    

3六、假设有定义和语句:

chars[10];s="abcd";printf("%s\n",s);

那么程序运行后________(以下u代表空格)。

A)输出abcdB)输出a

C)输出abcduuuuuD)编译不通过

正确答案是:

D    

37、函数fun的功能是:

根据以下公式计算S,n通过形参传入,n的值大

于等于0。

划线处应填________。

1111

S=1-─+─-─+…───

3572n-1

floatfun(intn)

{floats=0.0,w,f=-1.0;

inti=0;

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

{________;

w=f/(2*i+1);

s+=w;}

returns;}

A)f=1B)f=-1

C)f=-1*fD)f=0

正确答案是:

C    

3八、函数fun的功能是:

根据以下公式计算并返回S,n通过形参传入,n的值

大于等于0。

划线处应填________。

1111

S=1-─+─-─+…───

3572n-1

floatfun(intn)

{floats=0.0,w,t,f=-1.0;

inti;

for(i=0;i

{f=-f;

w=f/(2*i+1);

s+=w;}

____________;}

A)return(f)B)return(i)

C)return(s)D)return(w)

正确答案是:

C    

3九、以下程序的输出结果是________。

#include

voidfun()

{staticinta=0;

a+=2;

printf("%d",a);}

voidmain()

{intcc;

for(cc=1;cc<4;cc++)fun();

printf("\n");}

A)2222B)2468

C)222D)246

正确答案是:

D    

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

#include

voidfun(chars[])

{intx,y;charc;

for(x=0,y=strlen(s)-1;x

{c=s[y];s[y]=s[x];s[x]=c;}}

voidmain()

{chara[]="123456789";intk;

fun(a);puts(a);}

A)987654321B)123456789

C)123454321D)987656789

正确答案是:

A    

4一、以下程序执行后输出的结果是________。

#include

intf(inta)

{intb=0,c=3;

a=c++,b++;

return(a);}

voidmain()

{inta=2,i,k;

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

k=f(a++);

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

A)3B)0

C)5D)4

正确答案是:

A    

4二、以下程序的输出结果是________。

#include"ctype.h"

voidspace(charstr[])

{inti,t;charts[81];

for(i=0,t=0;str[i]!

='\0';i+=2)

if(!

isspace(str[i])&&str[i]!

='a')

ts[t++]=toupper(str[i]);

ts[t]='\0';

strcpy(str,ts);}

voidmain()

{chars[81]={"abcdefg"};

space(s);

puts(s);}

A)ABCDEFGB)CEG

C)ABCDED)BDF

正确答案是:

B    

43、下面程序的功能是,将字符数组a中的字符逆序存放,划线处应

填入________。

#include

voidmain()

{chara[80]="abcdefgh";

fun(a);puts(a);}

fun(chars[10])

{intx=0,y;charc;

for(________;x

{c=s[x];s[x]=s[y];s[y]=c;}}

A)y=0B)y=strlen(s)

C)y=strlen(s)-1D)y=x

正确答案是:

C    

44、以下程序的输出结果是________。

#include

inta,b;

voidfun()

{a=100;b=200;}

voidmain()

{int

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

当前位置:首页 > 自然科学 > 物理

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

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