《C语言程序设计》模拟卷

[复制链接]
发表于 2020-3-30 13:41:40 | 显示全部楼层 |阅读模式
《C语言程序设计》模拟卷
题号        一        二        三        四        总分
得分                                       
评卷人                                       
一、选择题:
1.一个C语言的源程序中______。
A)必须有一个主函数          B)可以有多个主函数
C)必须有主函数和其他函数    D)可以没有主函数
2.执行以下语句的结果为______。
   y=10;    x=y++;
   A)x=10,  y=10                B)x=11,   y=11
   C)x=10,  y=11                D)x=11,   y=10
3.执行以下程序段后,c3的值是______。
    int c1=1,c2=2,c3;
    c3=c1/c2;
A) 0       B) 1/2       C) 0.5     D) 1
4.C语言中字符型(char)数据在内存中的形式存储是______。
A) 原码    B) 补码      C)反码     D) ASCII码
5.下列常数中不能作为C的常量的是______。
A) 0xA5   B) 2.5e-2   C) 3e2   D) 2e32.6
6.C语言中整数-8在内存中的存储形式是______。
A) 1111 1111 1111 1000       B) 1000 0000 0000 1000
      C) 0000 0000 0000 1000       D) 1111 1111 1111 0111
7.已知 int i,a;执行语句"i=(a=2*3,a*5),a+6;"后,变量i的值是______。
A)6         B)12       C)30      D)36
8.执行以下程序段后,a,b,c的值分别是______。
     int a,b=100,c,x=10,y=9;
     a=(--x==y++)?--x:++y;
     if(x<9)b=x++; c=y;
A)9,9,9      B)8,8,10    C)9,10,9   D)1,11,10
9.一个C语言程序的基本组成单位是______。
     A)主程序     B)子程序      C)函数     D)过程
10.已知函数abc的定义为:
    void abc ( )
    { ....... }
    则函数定义中void的含义是_____。
      A)执行函数abc后,函数没有返回值
B)执行函数abc后,函数不再返回
      C)执行函数abc后,可以返回任意类型
D)以上三个答案全是错误的
11.以下程序的输出结果是____。
    main()
    { int i,x[3][3]={1,2,3,4,5,6,7,8,9};
     for(i=0;i<3;i++) printf("%d,",x[i][2-i]);
}
A) 1,5,9,     B) 1,4,7,     C) 3,5,7,    D) 3,6,9,
12.已知:double *p[6];它的含义是_____。
     A)p是指向double型变量的指针   B)p是double型数组
C)p是指针数组                  D)p是数组指针
13.已知:int *p, a; 则语句"p=&a;"中的运算符"&"的含义是_____。
      A)位与运算  B)逻辑与运算 C)取指针内容 D)取变量地址
14.变量的指针,其含义是指该变量的(  )
A)值           B)地址       C)名       D)一个标志
15.下面程序段的运行结果是:(  )
     char c[ ]=”\t\v\\\0will\n”
     printf(“%d”,strlen(c));
A)14   B)3    C)9     D)字符串中有非法字符,输出值不确定
二、填空题:
1.表达式10+16%3的值为___________。
2.写出满足下列条件的表达式:a和b都不小于c______________________。
3.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值为_____。
4.下面函数的功能是求整数1到n的和请把程序补充完整。
long  sum( int n)
{ int i;
  __________
for(i=1;i<=n;i++)
_______________
return s;
}
三、程序阅读题,写出程序的输出结果:
1.#include “stdio.h”
   main()
   {int i, j;
    i=j=2;
    if(i==1)
       if(i==2)
      printf(“%d”,i=i+j);
      else
       printf(“%d”,i=i-j);
   printf(“%d”,i);
   }
___________________________________。
2.main()
{int i=3
    while(i<10))
    {if(i<6)
        {i+=2;
         continue;
        }
     else
      printf(“%d  ”,++i);
    }
   }
___________________________________。
3.#include “stdio.h”
   #define X  5
   #define Y  X+1
   #define Z  Y*X/2
   main( )
   {int a;
    a=Y;
    printf(“%d  %d\n”,Z,--a);
}
___________________________________。
四、编程题:(共45分)
1.编程求分段函数y=f(x)的值,f(x)的表达式如下:
                2x+3   x<-1
       f(x)=    5x+10  -1≤x≤1
                12x      x>1
2.用switch语句编写程序,实现以下功能:从键盘输入数字1、2、3、4。分别显示excellent,good,pass,fail.输入其它键时显示error。
3.编写一函数,找出一整数的全部因子。
参考答案:
1、
#include "math.h"
main(  )
{float x,y;
printf("input x\n");
scanf("%f",&x);
    if(x<-1) y=2*x+3;
    else if(x>=-1&&x<=1)  y=5*x+10;
       else             y=12*x;
printf("x=%f,y=%f",x,y);
}
2、
main()
{ int x;
     printf("please input a number\n");
     scanf("%d",&x);
     switch (x)
      { case 1: printf("excellent\n");break;
       case 2: printf("good\n");break;
       case 3: printf("pass\n");break;
      case 4: printf("fail\n");break;
     default : printf("error\n");
     }
   }
3、
void yz(int n)
{ int i;
   for(i=1;i<=n;i++)
  I f(n%i==0) printf("%5d",i);
   return ;
  }

快速回复 返回顶部 返回列表