福建省二级C模拟题 7.docx

上传人:b****5 文档编号:2867721 上传时间:2022-11-16 格式:DOCX 页数:18 大小:53.53KB
下载 相关 举报
福建省二级C模拟题 7.docx_第1页
第1页 / 共18页
福建省二级C模拟题 7.docx_第2页
第2页 / 共18页
福建省二级C模拟题 7.docx_第3页
第3页 / 共18页
福建省二级C模拟题 7.docx_第4页
第4页 / 共18页
福建省二级C模拟题 7.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

福建省二级C模拟题 7.docx

《福建省二级C模拟题 7.docx》由会员分享,可在线阅读,更多相关《福建省二级C模拟题 7.docx(18页珍藏版)》请在冰豆网上搜索。

福建省二级C模拟题 7.docx

福建省二级C模拟题7

一、选择题

1.以下叙述不正确的是(d )。

A)C语言的执行总是从main函数开始B)一个C源程序必须包含一个main函数

C)C语言程序的基本组成单位是函数D)在编译C程序源程序时,可发现注释中的拼写错误

2.以下( b)是错误的整型常量。

  A)-0xcdfB)018C)0xeD)011

3.若有定义:

inta,b;doublex,则以下不符合C语言语法的表达式是( a)。

  A)x%(-3)B)a+=-2C)a=b=2D)x=a+b

4.若有定义:

inti,j;则表达式(i=2,j=5,i++,i+j++)的值是( b)。

  A)7B)8C)9D)10

5.已有如下定义和输入语句

inta;charc1,c2;

scanf(“%d%c%c”,&a,&c1;&c2);

若要求a、c1、c2的值分别为10、A和B,正确的数据输入是( a)。

  A)10ABB)10ABC)10ABD)10AB

6.若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为“假”。

则不能满足要求的表达式是(c )。

  A)a%2==1B)!

(a%2==0)C)!

(a%2)D)a%2

7.若有定义:

inta=2,b=3;floatx=3.5,y=2.5;则表达式float(a+b)/2+(int)x%(int)y的值为(a).

A)3.5B)3.0C)2.5D)2.0

8.以下程序的运行结果是( c)。

voidmain()

{intn=’e’;

swithc(n--)

{default:

printf(”error”);

case’a’:

case’b’:

printf(”good”);break;

case’c’:

printf(”pass”);

case’d’:

printf(”warn”);

}}

A)errorB)goodC)errorgoodD)warn

9.以下程序的运行结果是(b )。

voidmain()

{intsum=0,item=0;

while(item<5)

{item++;

sum+=item;

if(sum==5)break;

}

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

}

A)10B)15C)5D)6

10.下面程序段的运行结果是(d )。

inti=0,a[]={3,4,5,4,3};

do{

a[i]++;

}while(a[++i]<5);

for(i=0;i<5;i++)printf(”%d”,a[i]);

  A)45654B)34543C)45554D)45543

11.若有定义:

inta[2][3];则对数组元素的非法引用是(d )。

A)a[0][1/2]B)a[1][1]C)a[4-4][0]D)a[0][3]

12.以下程序段运行后屏幕输出为( b)。

charstr[]=”ab\\cd”;

printf(”%d”,strlen(str));

  A)4B)5C)6D)7

13.若有如下函数定义:

  intfun()

{staticintk=0;

return++k;}

以下程序段运行后屏幕输出为(d )。

inti;

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

printf(”%d”,fun());}

A)0B)1C)5D)6

14.下面程序的输出结果是( b)

#include

#defineSQR(x)(x*x)

voidmain()

{inta,b=3;

a=SQR(b+2);

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

}

A)11B)25C)不定值D)产生错误

15.有说明语句:

double*p,a;能通过scanf语句正确给输入项读入数据的程序段是d)。

A)*p=&a;scanf(”%lf”,p);B)*p=&a;scanf(”%lf”,*p);

C)p=&a;scanf(”%lf”,*p);D)p=&a;scanf(”%lf”,p);

16.下面程序的输出结果是(d )

#include

voidmain()

{inti;

char*s=”abc”;

for(i=0;i<3;i++)printf(”%s\n”,s+i);

}

A)abcB)cC)abcD)a

bcbccab

cabcbcabc

17.以下程序的运行结果是(b )。

#include

unionUtype{

inti;

floatf;

}u[2];

voidmain()

{printf(”sizeof(u):

%d\n”,sizeof(u));}

A)2B)4C)6D)8

18.若有如下定义,函数fun的功能是(b)。

其中head指向链表首结点,整个链表结构如下图:

  head… 

structnode{

intdata;

structnode*next;

};

intfun(structnode*head)

{intn=0;

structnode*t=head;

while(t!

=NULL)

{n++;

t=t->next;}

returnn;

}

A)删除链表head中的所有结点B)计算链表head中结点的个数

C)插入一个元素到链表head中D)创建一个链表head

19.下面程序的输出结果为(b )。

#include

voidmain()

{enumWeekday{sun=7,mon=1,tue,wed,thu,fri,sat};

enumWeekdayday=sat;

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

}

A)7B)6C)5D)4

20.以下程序的可执行文件名为cmdline.exe。

#include

#include

voidmain(intargc,char*argv[])

{if(argc!

=2)

{printf(”Youforgottotypeyournameoryoutypedmoreparameters\n”);

exit

(1);}

printf(”Hello%s\n”,argv[1]);

}

在DOS命令行输入:

cmdlineharry<回车>,则输出结果是( b)。

A)Youforgottotypeyournameoryoutypedmoreparameters

B)Helloharry

C)Hellocmdline

D)hello

二、改错题(共2小题,每题10分)

1.程序cmody071.c,其功能是从键盘输入三角形的三边长,求其面积,若三个边长不能构成三角形,则提示。

如输入:

6 911输出:

26.98

#include

#include

voidmain()

{floata[3],s,area;

inti;

printf(”Pleaseinput3numbers:

\n”);

for(i=0;i<3;i++)scanf(“%f”,/**//**/);

/**/if(a[0]+a[1]>a[2]||a[1]+a[2]>a[0]||a[0]+a[2]>a[1])/**/

{s=(a[0]+a[1]+a[2])/2;

area=sqrt(s*(s-a[0])*(s-a[1])*(s-a[2]))l

printf(”areais%.2f\n”,area);}

elseprintf(”error.\n”);

getch();

}

2.程序cmody072.c其功能是求解百马百担问题。

  有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问大、中、小马数可分别为多少?

有多少种解决方案?

#include

#include

/**/voidfun()/**/

{intlarge,middle,small,n=0;

clrscr();

for(large=0;large<=33;large++)

for(middle=0;middle<=50;middle++)

{small=2*(100-3*large-2*middle);

/**/if(large+middle+small=100)/**/

{n++;

printf(”%d-->large:

%d,middle:

%d,small%d\n”,n,large,middle,small);

}

}

returnn;}

voidmain()

{intnum;

num=fun();

printf(”\nThereare%dsolutions.\n”,num);

getch();

}

三、填空题(共3小题,每题8分)

1.补充程序Ccon071.c,对函数

,分别计算

的值。

如x=2.0,则输出:

f(x+8)=86.000f(sinx)=5.008

#include

/**//**/

doublefun(doublex)

{/**//**/

}

voidmain()

{doublex,y1,y2;

clrscr();

printf(“Pleaseinputx:

”);

scanf(“%lf”,&x);

y1=fun(x+8);

y2=fun(/**//**/);

printf(“\nf(x+8)=%.3lf”,y1);

printf(“\nf(sinx)=%.3lf”,y2);

getch();

}

2.补充程序Ccon072.c,计算

,其中m、n为整数且m>n≥0。

#include

doublefun(unsignedm,unsignedn)

{unsignedi;

doublep=1.0;

for(i=1;i<=m;i++)/**//**/

for(i=1;i<=n;i++)/**//**/

for(i=1;i<=m-n;i++)p=p/I;

returnp;

}

voidmain()

{clrscr();

printf(“p=%f\n”,fun(13,7));

getch();

}

3.补充程序Ccon073.c,函数findmax返回数组中的最大元素。

#include

intfindmax(int*array,intsize);

voidmain()

{inta

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

当前位置:首页 > 表格模板 > 合同协议

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

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