C语言试题4.docx

上传人:b****2 文档编号:3152686 上传时间:2023-05-05 格式:DOCX 页数:15 大小:18.39KB
下载 相关 举报
C语言试题4.docx_第1页
第1页 / 共15页
C语言试题4.docx_第2页
第2页 / 共15页
C语言试题4.docx_第3页
第3页 / 共15页
C语言试题4.docx_第4页
第4页 / 共15页
C语言试题4.docx_第5页
第5页 / 共15页
C语言试题4.docx_第6页
第6页 / 共15页
C语言试题4.docx_第7页
第7页 / 共15页
C语言试题4.docx_第8页
第8页 / 共15页
C语言试题4.docx_第9页
第9页 / 共15页
C语言试题4.docx_第10页
第10页 / 共15页
C语言试题4.docx_第11页
第11页 / 共15页
C语言试题4.docx_第12页
第12页 / 共15页
C语言试题4.docx_第13页
第13页 / 共15页
C语言试题4.docx_第14页
第14页 / 共15页
C语言试题4.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言试题4.docx

《C语言试题4.docx》由会员分享,可在线阅读,更多相关《C语言试题4.docx(15页珍藏版)》请在冰点文库上搜索。

C语言试题4.docx

C语言试题4

《高级程序设计基础(C语言)》考试题四

一、选择题(共20题,每题2分)

1、若有说明语句:

inta,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是()。

A)scanf("%d%d%d",&a,&b,d);   B)scanf("%d%d%d",&a,&b,&d);

C)scanf("%d%d%d",a,b,d);      D)scanf("%d%d%d",a,b,*d);

 

2、.执行下面程序时,欲将25和2.5分别赋给a和b,正确的输入方法是()。

inta;

floatb;

scanf("a=%d,b=%f",&a,&b);

A)25,2.5

B)25,2.5

C)a=25,b=5.5

D)a=25,b=2.5

 

3、假定w、x、y、z、m均为int型变量,有如下程序段:

w=1;x=2;y=3;z=4;

m=(w

w:

x;

m=(m

m:

y;

m=(m

m:

z;

则该程序运行后,m的值是()。

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

 

4、判断char型变量ch是否为大写字母的正确表达式是()。

A)’A’<=ch<=’Z’                                    B)(ch>=’A’)&(ch<=’Z’)

C)(ch>=’A’)&&(ch<=’Z’)                          D)(‘A’<=ch)AND(‘Z’>=ch)

 

5、以下程序的输出结果是()。

main()

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

      if(x

             if(y<0) z=0;

             else z=z+1;

      printf(“%d\n”,z);

}

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

 

6、以下程序的输出结果是()。

main()

{  inta=100,x=10,y=20,ok1=5,ok2=0;

      if(x

             if(y!

=10)

                    if(!

ok1)

                           a=1;

                    else

                           if(ok2)a=10;

      a=-1;

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

}

A)1                    B)0                    C)-1                   D)值不确定

 

7、下列程序的输出结果是().

#include

main()

{

inti=1,sum=0;

while(i<6)

{

   i++;

   if(i%2==0)continue;

   sum=sum+i;

}

printf(“%d”,sum);

}

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

 

8、下面程序的功能是计算:

至50中是7的倍数的数值之和,在空白处最合适的是()。

   

    #include

    main()

{

int i,sum=0; 

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

if(_____________) sum+=i;

     printf("%d",sum);

   }    

A)(int)(i/7)==i/7                     B)(int)i/7==i/7

C) i%7=0                             D) i%7==0

 

9、对下面程序段,说法正确的是()。

   

  for (t=1; t<=100;t++)

 {

scanf("%d",&x);

     if(x<0) continue;

     printf("%3d",t);

}

  A)当x<0时整个循环结束

  B)x>=0时什么也不输出

  C)printf函数永远也不执行

  D)最多允许输出100个非负整数

 

10、对以下说明语句的正确理解是()。

inta[10]={6,7,8,9,10};

A)将5个初值依次赋给a[1]至a[5]

  B)将5个初值依次赋给a[0]至a[4]

  C)将5个初值依次赋给a[6]至a[10]

  D)因为数组长度与初值的个数不相同,所以此语句不正确

 

11、以下不正确的定义语句是()。

 A)doubley[5]={2.0,4.0,6.0,8.0,10.0};          

B)inty[5]={0,1,3,5,7,9};

 C)charc[]={‘1’,’2’,’7’,’4’,’5’};      

 D)charc[]={“abcdf”};

 

12、当执行下面的程序时,如果输入ABC,则输出结果是()。

#include"stdio.h"

#include"string.h"

main()

{

charss[10]="1,2,3,4,5";

gets(ss);

strcat(ss,"6789");

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

}

A)ABC6789           B)ABC67         C)12345ABC6       D)ABC456789

 

13、以下正确的描述是()。

           

   A)continue语句的作用是结束整个循环的执行

   B)只能在循环体内和switch语句体内使用break语句

   C)在循环体内使用break语句或continue语句的作用相同

   D)从多层循环嵌套中退出时,只能使用goto语句

 

14、若有定义:

int aa[8];。

则以下表达式中不能代表数组元aa[1]的地址的是()。

A)&aa[0]+1  B)&aa[1] C)&aa[0]++  D)aa+1

 

15、在执行charstr[10]=”China\0”;strlen(str)的结果是()。

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

 

16、下面程序段的运行结果是()。

             charstr[]=”abc”,*p=str;

             printf(“%d\n”,*(p+3));

      A)67;        B)0;          C)字符‘c’的地址;          D)字符‘c’;

 

17、下面程序段的运行结果是()。

             chars[6];

s=”abcd”;

 printf(“\”%s\”\n”,s);

      A)”abcd”;            B)”\”abcd”;         C)”\”abcd\””;       D)编译出错;

 

18、C语言中规定函数的返回值的类型是由(D)。

      A)retrurn语句中的表达式类型所决定

      B)调用该函数时的主调用函数类型所决定

      C)调用该函数时系统临时决定

      D)在定义该函数时所指定的函数类型所决定

 

19、以下程序的输出结果是()。

      #include

      main()

      {

             inta=2,i;

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

                    printf(“%d”,func(a));

      }

      func(inta)

      {

             intb=0;

             staticintc=3;

             b++;  c++;

             return(a+b+c);

      }

      A)777          B)7 7 7         C)789          D)7 8 9

 

20、以下程序的的功能是()。

      #include

      main()

      {

             FILE*fp;

             charstr[]=”HELLO”;

             fp=fopen(“PRN”,“w”);

             fputs(str,fp);

             fclose(fp);

      }

      A)在屏幕上显示”HELLO”                                 B)把”HELLO”存入PRN文件中

      C)在打印机上打印出”HELLO”                         D)以上都不对

二、分析程序题(共10题,每题3分)

1、下面程序段在执行时输入5,6,则输出结果是__________________。

#include

voidmain()

  {

     inta,b;

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

     b+=a;

     printf("%d",b);

  }

 

2、下面程序段的输出结果是__________________。

inta,b,c=123;

a=c%100/9;

b=(-1)&&1;

printf("%d,%d",a,b);

 

3、以下程序的运行结果是__________________。

main()

{  inta,b,c,d,x;

      a=c=0;b=1;    d=20;

      if(a) d=d-10;

      elseif(!

b)

             if(!

c)  x=15;

             elsex=25;

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

}

4、以下程序段的运行结果是__________________。

intx=1,y=0;

      switch(x)

      {  case1:

                    switch(y)

                    {  case0:

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

                           case1:

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

                    }

             case2:

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

      }

 

5、以下程序段的输出结果是__________________。

   int x=7,s=0;

   while (x>0) 

    { x=x――;

       s=s+x;  

    }

   printf("x=%d,s=%d",x,s);

 

6、以下程序的执行结果是__________________。

      #include

      main()

      {

             inta[]={1,2,3,4},i,j,s=0;

             j=0;

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

             {

                    s=s+a[i]*j;

                    j=j*10;

             }

             printf(“s=%d\n”,s);

      }

 

7、以下程序执行时输入LanguageProgramming<回车>的结果是__________________。

      #include

      main()

      {

             charstr[30];

             gets(str);

             printf(“str=%s\n”,str);

      }

 

8、以下程序的执行结果是__________________。

#include

structstrin{

  charc[5];

  char*s;

};

main(){

  structstrins={"ABCD","EFGH"};

  printf("%s",s.c);

  printf("%c\n",*s.s);

}

 

9、以下程序的执行结果是__________________。

      #include

      voidfinc(int);

      main()

      {

             intk=4;

             func(k);

             func(k);

      }

      func(inta)

      {

             staticintm=0;

             m+=a;

             printf(“%d”,m);

      }

 

10、以下程序的执行结果是__________________。

      structstru

      {

             intx;

             charc;

      };

      main()

      {

             struct stru a={10,‘x’};

             func(a);

             printf(“%d,%c\n”,a.x,a.c);

      }

      func(structstrub)

      {

             b.x=20;

             b.c=’y’;

      }

三、编写程序题(共3题,每题10分)

1、从键盘输入四个整数,输出其中的最大者。

2、求和S=1-1/2+1/3-1/4+…+1/99-1/100。

3、自定义函数countArray(),在该函数中输入一个数组的10个元素,然后求它们的和,将结果返回给调用它的函数。

然后在主函数中调用该函数,并输出结果。

 

第四套考试题参考答案

一、选择题

1、A

2、D

3、D

4、C

5、B

6、C

7、C

8、D

9、D

10、B

11、B

12、A

13、B

14、C

15、A

16、B

17、D

18、D

19、C

20、C

 

二、             程序分析题

1、11

2、2,1

3、20

4、**1**

  **3**

5、x=0,s=21

6、s=0

7、str=LanguageProgramming

8、ABCDE

9、48

10、10,x

 

三、             编程题

1、

#include

main()

{

      int a,b,c,d,max;

      printf(“请输入4个整数:

”);

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

      max=a;

      if(max

      if(max

      if(max

      printf(“最大的数为:

%d\n”,max);

 

2、

#include

main()

{

   doubleresult=1.0;

   doublesign=-1.0;

   inti;

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

   {

       result+= sign/i;

       sign=-sign;

   }

 

   printf("结果为:

%lf\n",result);

}

 

3、

#include

intcountArray();

 

main()

{

  intresult;

  result=countArray();

  printf("结果为:

%d\n",result);

}

 

intcountArray()

{

   inti,array[10],sum;

   sum=0;

   printf("请输入10个整数:

");

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

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

 

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

       sum+=array[i];

 

   returnsum;

}

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2