C期终模拟题NIT.docx

上传人:b****6 文档编号:3481075 上传时间:2022-11-23 格式:DOCX 页数:12 大小:22.89KB
下载 相关 举报
C期终模拟题NIT.docx_第1页
第1页 / 共12页
C期终模拟题NIT.docx_第2页
第2页 / 共12页
C期终模拟题NIT.docx_第3页
第3页 / 共12页
C期终模拟题NIT.docx_第4页
第4页 / 共12页
C期终模拟题NIT.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

C期终模拟题NIT.docx

《C期终模拟题NIT.docx》由会员分享,可在线阅读,更多相关《C期终模拟题NIT.docx(12页珍藏版)》请在冰豆网上搜索。

C期终模拟题NIT.docx

C期终模拟题NIT

复习

C_期终模拟题(2011年1月)

一、单选题(每题1分,共15分)

(1).C语言程序由________组成。

A.子程序B.过程C.函数D.主程序和子程序

(2)..下列运算中优先级最低的是。

A.==B.!

=C.=D.++

(3).设k为整型,以下while循环执行__________。

k=10;while(k==0)k=k-1;

A)执行10次B)一次也不执行C)无限循环D)执行一次

(4).判断变量ch是英文字母的表达式为。

A、('a'<=ch<='z')||('A'<=ch<='Z')

B、(ch>='a'&&ch<='z')&&(ch>='A'&&ch<='Z')

C、(ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')

D、('A'<=ch<='z')&&('A'<=ch<='z')

(5).表达式_______的值是0。

A.3%5B.3/5.0C.3/5D.3<5

(6).执行下列语句的结果为______.

i=3;

printf(“%d,”,++i);

printf(“%d”,i++);

(A).3,3(B)3,4(C)4,3(D)4,4

(7).下列数据中,为字符串常量的是_____.

(A)‘A’(B)”house”

(C)Howdoyoudo.(D)‘$abc’

(8).下列while循环,将执行______

i=4;

while(--i)printf(“%d”,i);

A)3次B)4次C)0次D)无限次

(9).对于以下程序段,运行后i值为_______

inti=0,a=1;

switch(a){

case1:

i+=1;

case2:

i+=2;

default:

i+=3;

}

A)1B)3C)6D)上述程序有语法错误

(10).数组定义为inta[3][2]={1,2,3,4,5,6},数组元素的值为6.

A.a[3][2]B.a[2][2]C.a[1][2]D.a[2][1]

(11).以下程序的运行结果是___________.

#include

main()

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

if(x=y+z)

printf(“****\n”);

else

printf(“####\n”);}

(A).有语法错误不能通过编译.(B).输出:

****

(C).可能通过编译,但不通过连接,因而不能运行(D).输出:

####

(12).设有字符串:

”s=%d\n”;,字符串的长度为

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

(13).写出下列程序的输出结果。

fun(intk)

{staticinta;

printf(”%d”,a);

a+=k;}

main()

{intk;

for(k=1;k<=3;k++)

fun(k);}

(A)011(B)013

(C)033(D)031

 

(14).设有以下说明语句:

structex

{intx;floaty;charz;}example;

则以下叙述中不正确的是______

(A)struct是结构体类型的关键字(B)example是结构体类型名

(C)x,y,z都是结构体成员名(D)structex是结构体类型名

(15).定义FILE*fp;其中fp代表的意思是

A.文件在磁盘上的读写位置B.文件类型结构体变量

C.整个磁盘文件D.文件类型结构体指针变量

二.判断题(/)(每题1分,共10分)

1.在C程序中,用整数0表示逻辑值“假”。

2.表达式(3.6%2)符合C语言语法。

3.08是正确的整型常数。

4.设有语句:

scanf(“Entera:

%d”,&a);

现给变量a输入25,其输入形式为:

25(回车).

5.表达式m=n++的求解顺序是先计算m=n,再计算n=n+1。

6.for循环语句中的三个表达式根据不同情况可以省去.

7.变量名fahr和Fahr代表两个不同的变量。

8.break语句只能用于循环结构中。

9.while语句先判断循环条件,所以循环体有可能一次也不执行。

10.可以定义多种不同的结构体类型.

三.程序改错:

(20分,共3题10处错,2分/每错)

注:

以下程序中,在标有/*errn*/的行上有一错误

.

(1).输入一个正整数n,输出y=2/1+3/2+5/3+8/5+…的前n项之和。

#include/*err1*/

voidmain()

{intn,i;

floatx1,sum=0,x=2,w=1;

printf("请输入项数n的值:

");

scanf("%d",n);/*err2*/

for(i=1;i<=n;i++){

sum+=x/w;

x1=x;

x=x+w;

w=x1;

}

printf("Sum=%0.2d\n",sum);/*err3*/

}

(2).程序功能:

运行时输入整数n=1308,输出12;输入n=3204,输出9.

#include

#include

voidmain()

{intn,s;/*err4*/

scanf("%d",&n);

n=fabs(n)

while(n>1){/*err5*/

s=s+n%10;

n=n%10;/*err6*/

}

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

(3.)输入一个正整数n(1

#include

#defineN11

voidmian()/*err7*/

{inti,index,k,n,temp;inta[N];

printf("输入n:

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

printf("输入数组各元素:

");

for(i=1;i

scanf("%d",a[i]);/*err9*/

for(k=0;k

{index=k;

for(i=k+1;i

if(a[i]

index=i;

temp=a[index];

a[index]=a[i];/*err10*/

a[k]=temp;

}}

四、程序选择填空题(每空1分,共10分)

说明:

阅读下列程序说明和相应程序,在每小题提供的若干可选答案中,挑选一个正确答案。

程序1、

【程序说明】

输出1~1000之间所有满足各位数的立方和等于它本身的数.

【程序】

#include

voidmain()

{intdigit,k,m,s;

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

(1)

while(m!

=0){

digit=m%10;s=s+digit*digit*digit;

(2)

}

if((3))printf(“%d“,(4));

}}

(1)A.s=0;m=k;B.k=k;s=0;C.m=k;Dk=m;s=0;

(2)A.m=m/10;B.m=m%10;C.m=m;Dm=k/10;

(3)A.m!

=sB.m==sC.k!

=sDk==s

(4)A.sB.digitC.mDk

程序2

【程序说明】

验证哥德巴赫猜想:

任何一个大于6的偶数均可表示为两个素数之和。

例如6=3+3,8=3+5,…,18=7+11。

将6~100之间的每个偶数都表示成两个素数之和。

函数prime(m)用于判断m是否为素数。

素数就是只能被1和自身整除的正整数,1不是素数,2是素数。

【程序】

#include"stdio.h"

#include"math.h"

voidmain()

{inti,k;

intprime(intm);

for(i=6;i<=100;i=i+2)

for(k=3;k<=50;k++)

if((5)){

printf("%d=%d+%d\n",i,k,i-k);

break;

}

}

intprime(intm)

{intk,n;

if(m==1)return0;

n=(int)sqrt(m);

for(k=2;k<=n;k++)

(6);

(7);

}

(5)A、prime(i)B、prime(i)&&prime(k)

C、prime(k)&&prime(i-k)D、prime(k)

(6)A、if(m%k!

=0)return0B、if(m%k==0)return0

C、if(m%k==0)return1D、if(m%k!

=0)return1

(7)A、return0;B、return1;

C、elsereturn0;D、elsereturn1;

程序3、

【程序说明】

根据下式计算s的值,要求精确到最后一项的绝对值小于10–6。

【程序】

#include

#include

voidmain()

{intflag=1,t=1;

(8);

while((9)){

item=flag*1.0/t;

s=s+item;

(10);

t=t+2;

}

printf("s=%f\n",s);

}

(8)A、doubleitem=0,s=0;B、doubleitem=0;s=0;

C、doubleitem=1,s=1;D、doubleitem=3,s=1;

(9)A、item<1E-6B、item>=1E-6

C、fabs(item)<1E-6D、fabs(item)>=1E-6

(10)A、flag=-1B、s=-s

C、flag=-flag;D、t=-t

 

五、程序阅读题(5小题每题4分,共20分)

说明:

阅读下列程序,将运行时的输出结果写在答卷纸的相应题号下。

1、程序1如输入”23cd78”,输出结果是什么.

#include

#include

voidmain()

{

inti,s=0;

charstr[80];

i=0;

while((str[i]=getchar())!

='\n')

i++;

str[i]='\0';

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

if(str[i]>='0'&&str[i]<='9')

s=s*10+(str[i]-'0');

printf("%d",s);

}

2.程序2

#include

voidmain()

{intI,x=1,y=1;

for(I=1;I<=5;I++){

x=x+y;

y++;

printf(“%d*”,x);

}

}

3.程序3

#include

voidmain()

{intx=1,y=1;

voidf(intm,intn,int*px,int*py);

f(2004,70,&x,&y);

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

f(2005,98,&x,&y);

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

}

voidf(intm,intn,int*px,int*py)

{intk,flag;

inttab[2][13]={

{0,31,28,31,30,31,30,31,31,30,31,30,31},

{0,31,29,31,30,31,30,31,31,30,31,30,31},

};

flag=m%4==0&&m%100!

=0||m%400==0;

for(k=1;n>tab[flag][k];k++)

n=n-tab[flag][k];

*px=k;

*py=n;

}

4.程序4

/*假设读写文件的操作能正常完成*/

#include

#include

voidmain()

{charch,*s="ACEDB";

intx;

FILE*in;

if((in=fopen("file.txt","w"))!

=NULL)

while(*s!

='\0')

fputc(*s++,in);

fclose(in);

if((in=fopen("file.txt","r"))!

=NULL)

while((ch=fgetc(in))!

=EOF){

switch(ch){

case'A':

x=95;break;

case'B':

x=85;break;

case'C':

x=75;break;

case'D':

x=60;break;

default:

x=0;break;

}

printf("%d_",x);

}

fclose(in);

}

5.程序5

#include

voidmain()

{intx=10023;

do{

printf(“%d#”,x%10);

x=x/10;

}while(x!

=0);

}

 

六、程序设计题((共3题,分别为7、8、10分,共25分)

1.输入3个整数,输出其中的最大值

2.编写一程序,用函数调用方法,求一矩阵的主对角线(左上到右下角)上的元素之和。

(矩阵大小自行规定,数组内容自行输入),

3.利用数组,计算Fibonacii(斐波纳契)数列前20项的值,即1,1,2,3,5,8,…,并按每行打印5个的格式输出.

C_期终模拟题(2010年12月)

==答题纸==

一、单选题(每小题1分,共15分)

(1)

 

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

(11)

 (12)

(13)

(14)

(15)

二.判断题((/)每题1分,共10分)

(1)

 

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

 

三.程序改错:

(20分,共3题10处错,2分/每错)

(1).err1.__err2.__________err3.__________

(2).err4.________err5.________err6.__________

(3).err7.__________err8__________

err9.______-____err10._____

四、程序选择填空题(每空1分,共10分)

(1)

 

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

 

五、程序阅读题(5小题,每题4分,共20分)

1

2

3

4

5

六、程序设计题((共3题,分别为7、8、10分,共25分)

1.

2.

3.

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

当前位置:首页 > 小学教育 > 语文

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

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