c语言模拟考试题1.docx

上传人:b****7 文档编号:9606241 上传时间:2023-02-05 格式:DOCX 页数:17 大小:20.99KB
下载 相关 举报
c语言模拟考试题1.docx_第1页
第1页 / 共17页
c语言模拟考试题1.docx_第2页
第2页 / 共17页
c语言模拟考试题1.docx_第3页
第3页 / 共17页
c语言模拟考试题1.docx_第4页
第4页 / 共17页
c语言模拟考试题1.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

c语言模拟考试题1.docx

《c语言模拟考试题1.docx》由会员分享,可在线阅读,更多相关《c语言模拟考试题1.docx(17页珍藏版)》请在冰豆网上搜索。

c语言模拟考试题1.docx

c语言模拟考试题1

C语言模拟试题及答案1

1.以下的不是C语言标识符是(    )。

A) abc1_     B) _abc1    C) 5BC1_    D) Abc1

2.结构化程序设计的基本结构不包括(   ) 

A)从上到下的结构  B)选择结构  C)循环结构   D)顺序结构 

3.C程序的基本单位是(   )。

A)函数 B)过程  C)语句  D)子程序

4.以下选项中(  )是的C语言赋值语句。

A)x=3,y=5   B)a=b=6   C)i--;  D)y=int(x);

5.设有如下定义:

int a=1,b=2,c=3,d=4,m=2,n=2;则执行表达式:

(m=a>b)&&(n=c>d)后,n的值为(  )。

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

6.设整型变量x的值为5,y的值为2,则值为1的表达式是(   )。

A)!

(y==x/2)   B)Y!

=x%3    C)X>0&&y<0      D)X!

=y||x>=y 

7.假设整型变量a为2,使b的值为0的表达式是(  )。

 A)b=a/2     B)b=6-(--a)    C)b=a%2       D)b=a>3?

0:

1

8.设int x=3,y=4,z=5; 则下面表达式中值为0的是(  )。

 A)x&&y        B)x<=y      C)x||y+z&&y-z    D)!

((x

z||1)

9.已知a=12,表达式a+=a-=a*=a的值为(  )

A)A)144   B)-12    C)0    D)24

10.设有语句a=4;则执行语句a-=a+=a*a;后,变量a 的值是( )

A)4     B)0     C)20      D)16

11.设有int a=4,b=6;则表达式 a&b的值为(  )

 A)3    B)4    C)11     D)12

12.若有定义:

int x=3;double y; 则执行语句y=(double)x;后,变量x的数据类型为(  )。

A)int   B)char   C)flaot   D)double

13.若有定义double x,y; 则表达式x=1,y=x+3/2的值为(  )。

A)1    B)2     C)2.0    D)2.5

14.若有定义int x,y,t; 则执行语句:

 x=y=3,t=++x||++y;后,y的值为(  )。

A)不定值    B)4    C) 3     D)1

15.若x、i、j和k都是int型变量,则计算下面表达式后,x的值为(  )。

  x=(i=4,j=16,k=32) 

A) 4    B) 16    C) 32   D) 52

16.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(  )。

 

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

17.已有定义double d,f;

数据的输入方式为:

3.45 1.2

根据定义和数据的输入方式,输入函数调用语句的形式为( )

A)scanf("%lf%lf",&d,&f)

B)scanf("%f%f",&d,&f)

C)scanf("3.2f%3.1f",&d,&f)

D)scanf("%3.2lf%3.1lf",&d,&f)

18.下面程序的输出是(  )。

     #include 

     void main()

     { int x=10,y=3;

      printf(“%d\n”,y=x/y);

     }

    (A)0      (B)1      (C)3      (D)不确定的值

19.下面程序运行情况是(  )。

  #include 

  void main()

   { int x=3,y=0,z=0;

    if (x=y+z)

     printf(“****”);

    else

     printf(“####”);

   }

  (A)有语法错0不能通过编译  (B)输出****

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

20.以下程序的输出结果是(  )。

#include 

main()

{ int i=10,j=10;

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

}

(A) 11,10   (B) 9,10   (C) 010,9   (D) 10,9

21.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

(A)缩排位置相同的if       (B)在其之前未配对的if

(C)在其之前未配对的最近的if   (D)同一行上的if

22.假定所有变量均已定义, ok1=1; ok2=2; ok3=3; x=15;

 if(!

ok1) x--;

  else if (ok2) if (ok3) x=3;

   else x=4;

上面程序段运行后x的值是:

(  )

A)14   B)4   C)15   D)3

23. 在C语言的if语句中,用作判断的表达式为(  ).

  A)关系表达式    B)逻辑表达式      C)算术表达式    D)任意表达式

24.下面的程序,描述的是( )

main()

{ int x=3;

 do

  {printf("%d\n",x-=2);}

 while(!

(--x));

}

(A)输出的是1   (B)输出的是1和-2 (C)输出的是3和0  (D)是死循环

25.执行下面程序后,a的值是(  )。

    #include 

    void main ()

     {  int a;

       printf(“%d\n”,(a=3*5,a*4,a+5));

     }

 (A)65     (B)20     (C)15     (D)10

26.以下程序的输出结果是:

  main ( )

  {  int n = 4;

    while (n--)printf ("%d",--n);

  }

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

27.设int a=1,则执行完循环While(a++<5);a的值是:

A)6       B)5       C)1        D)-264

28.在下列for循环中,其循环次数是(  )

for(x=1,y=0;(y!

=123)&&(x<4); x++);

 A)4  B)3    C)1   D)无数多次

29.假定a和b为int型变量,则执行以下语句后b的值为( )

  a=1;b=10;

  do {b-=a;a++;}

  while (b--<0);

(A)9   (B)-2   (C)-1  (D)8

30.如果有#define f(x,y) x+y及int a=2,b=3;则执行printf("%d",f(a,b)*f(a,b)) 后的值为(  )。

(A)36     (B)25    (C)11       (D)13

31.若#include后面的文件名用双引号括起来,寻找被包含文件的方式是( )。

A) 先按系统设定的标准方式查找,再在当前目录中查找

B) 先在当前目录中查找,再按系统设定的标准方式查找

C) 只在当前目录中查找  D)只按系统设定的标准方式查找

32.执行下面的程序

  #define SQR(X) X*X 

  main() 

   { int a=10,k=2,m=1; 

    a/=SQR(k+m)/SQR(k+m);

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

  后,a的值是( )。

(A)10  (B)9  (C) 1  (D)0

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

#include "stdio.h" 

#define SUB(x,y) (x)*y 

main( )

{int a=3,b=4;printf("%d\n",SUB(a,b+1));} 

A)12  B)16   C)15   D)13

34.函数strcat(str1,str2)的功能是(  )

A)将字符串str1连接到字符串str2之后  B)将字符串str2连接到字符串str1之后

C)将str2复制到字符串str1中。

     D)将str1复制到字符串str2中。

35.若有定义:

char a[30]= “china\0\t\’\\”;则strlen(a)和sizeof(a)的值是(  )。

(A) 30 30   (B) 5 30   (C) 13 30  (D) 5 13

36.下述程序的输出结果是( )。

 

#include"stdio.h"

void main()

{

int a[]={2,3,4,5,6,7,8,9};

int i,rt=1;

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

rt*=x[i];;

printf("%d",x);

}

A) 120  B) 720    C) 24     D) 6

37.调用strlen("abcd\0ef\ng\0")的结果为(  )。

 (A) 4   (B) 5   (C) 8   (D) 10

38.C语言中,以下叙述的是(  )。

A) 函数不能嵌套定义但可以嵌套调用 B) 函数可以嵌套定义也可以嵌套调用

C) 函数可以嵌套定义但不能嵌套调用 D) 函数不能嵌套定义也不能嵌套调用

39.C语言中,函数调用时若实参是数组名,则被调函数对应形参(  )。

A) 可以是相应类型简单变量  B) 必须是相应类型的指针变量

C) 必须是相应类型数组名  D) 可以是相应类型的指针变量

40.在C语言中,函数默认的存储类型为(  )。

A) auto   B) registerC) static   D) extern

41.已知函数的调用形式:

 fread ( buffer , size , count , fp ) ; 其中buffer代表的是(  )。

(A)一个整型变量,代表要读入的数据项总数(B)一个文件指针,指向要读的文件

(C)一个指针,指向要读入数据的存放地址(D)一个存储区, 存放要读的数据项

42.如果程序中有static char c; 则编译程序会对其自动设置初值为(  )。

  (A) ''\n''    (B) "\n"    (C) 0      (D) ''\0''

43.C程序在(  )可以使用表达式 

A)函数内部   B)函数外部    C)程序的任何地方    D)变量出现的地方

44.有定义:

int x,*p1=&x, *p2;,则能使得p2也指向x的语句是(  )。

A) *p2=&x;    B) p2=p1;C) p2=*p1;    D) p2=&p1;

45、C语言可以处理的文件类型是()。

A、文本文件和数据文件B、文本文件和二进制文件

C、数据文件和二进制文件D、都不对

46、以读写方式打开一个已存在的二进制文件file1,fopen函数的正确的调用方式是()。

A、FILE*FP;FP=fopen("r","file1");B、FILE*FP;FP=fopen("file1","r");

C、FILE*FP;FP=fopen("rb+","file1");D、FILE*FP;FP=fopen("file1","rb+");

47、设fp是文件指针,str是一个字符串变量,n是一个整数,向文件中输出字符串的正确格式是()。

A、fputs(str,fp);B、fputs(fp,str);

C、fputs(str,n,fp);D、fputs(fp,n,str);

48.有如下定义:

char *s1="AbCdE",*s2="aBcDe"; 则表达式strcmp(s1+1,s2+1) 的值是( )

A.零    B.负数    C.正数   D.非零值,无法肯定符号

49.在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是(  ) 

A)fopen( )     B)fseek( )     C)fclose( )     D)rewind( )

50.在C语言中,的的结论是(   )            

A)对文件操作必须先关闭文件    B)对文件操作必须先打开文件

C)对文件操作顺序没有统一规定   D)以上都错

填空

1.输入3个单精度浮点数,输出最大值

#include

intmain()

{

____1____a,b,c,max;

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

if(a>b)

max=a;

else

max=b;

if(max

max=c;

printf("%f",___2__);

}

2fun函数的功能是:

首先对a所指的N行N列的矩阵,找出各行中的最大的书,再求这N个最大值中的最小的那个数作为函数值返回。

#include

#defineN100

intfun(int(*a)[N])

{

introw,col,max,min;

for(row=0;row

{

for(max=a[row][0],col=1;col

if(____3___>max)

max=a[row][col];

if(row==0)

min=max;

else

if(max___4__min)

min=max;

}

returnmin;

}

3、*程序的功能是显示具有n个元素的数组s中的最大元素。

#include

#define__5___30

voidmain()

{

inti,a[N];

intfmax(ints[],intn);

for(i=0;i

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

printf("%d\n",a[fmax(a,N)]);

}

int__6___(ints[],intn)

{

intk,p;

for(p=0,k=p;p

if(s[p]>s[k])k=p;

return(k);

}

4.设一个二维数组a[5][3]存放五个人三门课的成绩。

再设一个一位数组v[3]存放所求得各分科平均成绩。

#include

voidmain()

{

inti,j,s=0,v[3],a[5][3];

printf("inputscore:

\n");

for(i-0;i<__7___;i++)

{

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

{

scanf("%d",&a[j][i])

s=s+a[j][i];

}

v[i]=___8___;

s=0;

}

printf("math:

%d,languag:

%d,ndbase:

%d",v[0],v[1],v[2]);

}

5.把100--200只见不能被3整除的书输出

#include

voidmain()

{

intn;

for(n=100;n<=200;n++)

{

if(n%__9___==0)

_____10_____;

printf("%4d",n);

}

}

6、*使用双重循环,输出下面的图形:

1

121

12321

1234321

12321

121

1

#include

voidmain()

{

inti,j;

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

{

for(j=1;j<40-i;j++)

printf("");

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

printf("%d",j);

for(j=___11___-1;j>0;j--)

printf("%d",j);

printf("\n");

}

for(i=3;i>=___12___;i--)

{

for(j=1;j<40-i;j++)

printf("");

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

printf("%d",j);

for(j=i-1;j>0;j--)

printf("%d",j);

printf("\n");

}

}

7、*以下程序将数组a中的数据逆序存放。

#defineM8

#include

voidmain()

{

___13___a[M],i,j,t;

for(i=0;i

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

i=0;j=M-1;

while(i

{

t=*(a+i);*(a+i)=*(a+j);*(a+j)=t;

__14___++;j--;

}

for(i=0;i

printf("%3d",*(a+i));

}

编程

*编写程序:

**求1000以内素数的平均值(1不是素数,保留小数点后三位)。

参考答案:

#include

#include

intmain()

{

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

for(i=1000;i>1;i--)

{k=sqrt(i);

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

if(i%j==0)break;

if(j>k){n=n+i;m++;}

}

printf("%.3f\n",(double)n/m);

return0;

}

运行结果:

453.137

2.、* 编写程序:

   * 先下载数据文件wj4.txt到自己的计算机中,然后编制程序,要求:

统计出该数据文件中从第51个到第10000个数据中奇数的个数。

参考答案:

#include

#include

intmain()

{inti=0,a[10000],s=0;

FILE*p;

p=fopen("D:

\\a\\wj4.txt","r");

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

fscanf(p,"%d",&a[i]);

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

if(a[i]%2!

=0)s++;

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

fclose(p);

return0;

}

运行结果:

4959

C语言002

选择

1--5CAACB6--10DCDCB11--15BACCC16--20BACDB

21--25CDDBB26--30AABDC31--35BCDBA36--40AAADD

41--45CDCBB46--50DACDB

填空

1.int2.max

3.a[row][col]4.<

5.N6.fmax

7.38.s/5

9.310.continue

11.i12.1

13.int14.i

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

当前位置:首页 > 高等教育 > 文学

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

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