安徽大学C语言程序设计期末考试试题A
安徽大学20   -20   学年第   学期
C语言程序设计》期末考试试卷(A120分钟)
年级        院系专业       姓名        学号         座位号     
 
题号
得分
得分
 
 
 
 
 
 
得分
 
一. 单项选择题:(每题2分,共40分)
下列各题A)B)C)D)四个选项中只有一个是正确的,请将正确选项填在答题卡相应题目的横线上。答在试卷上不得分。
1.下面程序段执行后,a的值是______
        int a;
        printf("%d \n", (a=3*5, a*4, a+5) );
    A)60      B)20              C)15        D)10
 
2.下列程序段的输出是______
        int x=023;
        printf("%d \n", --x );
    A)19      B)18           C)23        D)22
 
3.执行下列语句后,a的值是______
        int a=8;
        a+=a-=a*a;
    A)-240        B)64          C)112        D)-112
 
4.执行下列语句后,输出的值是______
        int x=6;
        printf("%d,%d,%d\n",x,x++,--x);
    A)5,5,5       B)6,5,5      C)7,6,5     D)5,6,5
5.指出下列程序段所表示的逻辑关系是______
        if(a<b)
        {
          if(c==d)
             x=1;
         }
        else
          x=2;
    A)若a<bc=d,则x=1;若a>=bc!=d,则x=2
    B)若a<bc=d,则x=1;若a>=b,则x=2
    C)若a<bc=d,则x=1;若a<bc!=d,则x=2
    D)若a<bc=d,则x=1;若c!=d,则x=2
 
6.下列程序段的执行结果是______
        int i,x;
        for(i=1,x=1;i<=20;i++)
        {
          if(x>=10) break;
          if(x%2==1)
          {
             x+=5;
             continue;
          }
          x-=3;
        }
        printf("%d,%d\n",x,i);
     A)6,4         B)7,5       C)10,6     D)14,7
 
7.下列程序的执行结果是______
        #include "stdio.h"
        #include "string.h"
        main()
        {
         static char s[10]={'C','h','i','n','a'};
         printf("%d\n",strlen(s));
        }
     A)6           B)5         C)11       D)10
 
8.函数的数据类型是______决定的。
     A)用该函数时临时        B)用函数的实参
     C)return语句的表达式类型   D)函数的形参
 
9.执行下列程序段后,*(p+5)的值是______
        static char s[]="Hello";
        char *p;
        p=s;
     A)'o'     B)'\0'     C)'o'的地址  D)不确定的值
 
10.以下程序的输出结果是______
        #include "stdio.h" 
        main()
        {
         static int a[]={1,2,3,4,5,6},*p;
         p=a; *(p+3)+=2;
         printf("%d,%d\n",*p,*(p+3));
         }
      A)0,5        B)1,5       C)0,6       D)1,6
 
11.在以下定义中,标识符P______
        int (*p)[3];
      A)定义不合法。
      B)是一个指针数组名,每个元素是一个指向整型变量的指针。
      C)是一个指针,它指向一个具有三个元素的一维数组。
      D)是一个指向整型变量的指针。
 
12.sizeof(int)______
      A)一个整型表达式            B)一个不合法的表达式
      C)一种函数调用              D)一条语句
 
13.有宏定义:#define MULT1(a,b) a*b
                #define MULT2(a,b) (a)*(b)
      在后面的程序中有宏引用:y=MULT1(3+2,5+8);
                              z=MULT2(3+2,5+8);
      yz的值是______
      A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=21
 
14.设有程序段:
        union MYTYPE { long x; int y[4]; char z[6];}them;
        main(){ printf(“%d\n”,sizeof(them)); }
      则程序的输出结果是______
      A)18         B)6        C)8            D)4
 
15.以读写方式打开一个已有的文本文件file1,下面fopen函数正确的调用方式
      ______
      A)FILE *fp;               B)FILE *fp;
          fp=fopen("file1","r");                            fp=fopen("file1","r+");
C)FILE *fp;               D)FILE *fp;
          fp=fopen("file1","rb");                          fp=fopen("file1","rb+");
 
16设有如下定义:
      struct sk {int a; float b;} data,*p;
       p=&data; 则对dataa域的正确引用是 (    ).
    A) (*p).data.a     B) (*p).a   C) p->data.a    D) p.data.a
 
17.若fun( int x) { printf(“%d\n”,x);}, fun_______
     A)返回值为 void 类型  B)返回值无法确定
     C)返回值为 int 类型    D)没有返回值
 
18.实参和和形参之间的数据传送是_______
     A)地址传送  B)实参传给形参,再由形参传给实参
     C)值传送    D)由用户指定传送方式
 
19.以下程序的输出结果是______
         char *s=”ABCD”, *p;
         for( p=s;  *p ;  p++)
c语言程序设计知识归纳            printf("%s\n", p);
      A)ABCD        B)A       C)D       D)ABCD
                           BCD                                   B                             C                               ABC
                           CD                                      C                             B                               AB
                           D                                         D                             A                               A
 
20.下列程序段的输出是______
int fun( int x)
{
         static int a=3;
    a+=x;
    return a;
}
void main( void )
{
         int k=2, m=1, n;
    n=fun(k);
    n=fun(m);
    printf( “%d\n”, n);
}
      A)3      B)4      C)6   D)9
得分
 
 
二. 填空题:(每空1分,共20分)
请将正确答案填在答题卡相应题目的横线上。答在试卷上不得分。
1.   C语言有  ⑴    ⑵   ⑶    ⑷    ⑸  五种常量。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。