一、单项选择题(每小题2分,共50分)
1、一个C程序的执行是从___A__
  A、本程序的main函数开始,到main函数结束
  B、本程序的main函数开始,到本程序文件的最后一个函数结束
  C、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
  D、本程序文件的第一个函数开始,到本程序main函数结束
2C语言程序的基本单位是___C___
A、程序行                      B、语句
C、函数                        D、字符
3、请选出可用作C语言用户标识符的一组标识符___B___     
Avoid          Ba3_b3        CFor          D2a
      define          _123            -abc            DO
      WORD            IF              ase              sizeof
4、假定xydouble型,则表达式(x=2,y=x+5/2)的值是__C__
  A4.500000                    B
  C4.000000                    D2.000000
5、下列可以正确表示字符型常量的是___D__
    A297                        B"a"   
    C"\n"                        D'\t'
6、在C语言中,要求运算数必须是整型的运算符是__D__
      A/                B++   
      C*=                D%
7C语言中,复合语句的构成是将一系列语句置于__C__
    Abeginend之间
    B、方框号“[ ]”之间
    C、花括号“{ }”之间
    D、圆括号“( )”之间
8、有如下程序段,对应正确的数据输入是___A___
float x,y;
scanf(%f%f, &x,&y);
printf(a=%f,b=%f, x,y);
A2.04<回车>                    B2.04,5.67<回车>
  5.67<回车>
CA=2.04,B=5.67<回车>            D2.045.67<回车>
9、以下程序段的输出结果是___D__
    int a=5678;
    printf(%2d\n, a);
    A、提示出错、无结果              B56 
    C78                            D5678
10、已知:char ch='A';则下列表达式的值是__B__
    ch = (ch>='A'&&ch<='Z') ? (ch+32) : ch;
    AA          Ba          CZ        Dz
11、下列描述,正确的是___B__
A、表达式3.91%5是合法的
B、用b=89作为while循环的条件是合法的
C、逗号表达式是没有值和类型的
D、字符型变量和int型变量的操作完全不同
12、阅读以下程序:
    main()
  {int x;
    scanf("%d",&x);
    if(x--<5) printf("%d",x);
    else printf("%d",x++);
  }
  程序运行后,如果从键盘上输人5,则输出结果是__B__
    A3          B 4          C 5            D 6
13、下列程序的运行结果是___C__
#include stdio.h
main()
{ int k;
  k=3;
  switch(k)
  { case 1: printf(%d\n, k++);
    case 2: printf(%d\n, k++);
    case 3: printf(%d\n, k++);
    case 4: printf(%d\n, k++);
            break;
    default: printf(Full!\n);
  }
}
A3            B4            C3            D4
                                  4              4
14、设abcdmn均为int型变量,且a=5b=6c=7d=8
    m=2n=1,则逻辑表达式(m==a<b)&&(n==c<d) 的值为__A__
    A0        B 1      C2        D 3
15、设大一期末c语言必考知识点xytemp均为long int型变量,则以下语句:
{temp=x; x=y; y=temp;} 的功能是__D__
A、把xy按从大到小排列   
B、把xy按从小到大排列
C、无确定结果
D、交换变量x和变量y的值
16、以下程序的输出结果是 ___A__
main()
  {int a, b;
  for(a=1, b=1; a<=100; a++)
    {if(b>=10) break;
      if (b%3==1)
        { b+=3; continue; }
    }
  printf("%d\n",a);
  }
  A4          B6          C5          D101
17、执行以下程序后输出的结果是___D__
main()
{ int y=10;
  do {y--;}
  while(--y);
  printf("%d\n",y--);}
  A-1         B1         C8          D0
18、执行以下程序后输出的结果是___B__
main()
  {int i, j, w=0;
  for(i=4; i; i--)
    for(j=1;j<=2;j++)
        w=w+i*j;  w=i*j;
    printf("%d\n",w);
  }
A4          B0          C1          D30
19、以下程序运行后,输出结果是__C__ 
main()
{
int  n[5]={3,3,3},i,k=2;
for(i=0;i<k;i++)  n[i]=n[i]+1;
printf("%d\n",n[k]);
}
A4          B9          C3          D、不确定的值
20、以下程序的输出结果是 __A__
    f ( int a)
  {int b=0;
    static int c = 3;
    b++; c++;
    return(a+b+c);
  }
  main()
  {int a = 2, i;
  for(i=0;i<3;i++) printf("%d\n",f(a));
  }
      A 7        B 7        C 7          D 7
          8            9            10              7
          9            11          13              7
21、设C程序如下:
    #define ABC(x) x*x
    #include"stdio.h"
    main()
    {int a=3,b;
    b=ABC(a+1);
    printf("b=%d", b); }
    上述程序运行输出的结果是__D_
    Ab=4                        Bb=a+1
    Cb=16                        Db=7
22、以下程序的输出结果是__B__
    main()
  {int i, a[10];
    for(i=9;i>=0;i--) a[i]=10-i;
    printf("%d %d %d",a[1],a[6],a[9]);
  }
    A1 6 9                      B9 4 1
    C9 6 1                      D3 5 7
23、若定义:float x=3.14159*p=&x;
    printf("%f\n",*p++);的输出结果为__C__
    A、无确定值                  Bx的地址       
    C3.14159                    D4.14159
24、以下程序的输出结果是___B__
main()
{char b[]="Language";
char *p=b;
printf("%c ",*(b+2));
p=p+7;
printf("%c\n",*p++);
}
A2  7        Bn  e        Ca  g          Dn  u
25、下列程序的输出结果是___A__
#include "stdio.h"
main()
{
    int a[]={1,2,3,4,5,6,7,8,9,0}, i, s, *p;
    p=a;s=0;

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