C语言程序设计试题集(1)
一、单项选择题(每题2分,共20)
1、以下叙述不正确的是
A) C程序由函数构成
B) 一个C程序至少包含一个main函数
C) main函数可以调用main函数
D) main函数是每个程序执行的起始点
2C程序中能直接让机器执行的文件是
A)编辑后的.c源文件
B)通过编译的.obj文件
C)通过连接的.exe文件
D)编辑后的.bak文件
3、假设定义变量如下:
int  x;
float  y;
以下输入语句中哪个是正确的?
Ascanf“%f%d”,&y,&x;    Bscanf“%f%d”, y, x;
Cscanf“%f%f”,&y,&x;    Dscanf“%d%d”,&y,&x;
4、已知:int a[][3]={1,2,3,4,5,6};则数组a的第一维的大小是
A2    B3    C4    D)无确定值
switch语句表示范围5.如果switch表达式是char 变量code,下面哪一个case子句是合法的。
Acase “3”:    B case ‘3’:    Ccase 3 :  Dcase =3:
6、能正确表示”x的值在[1,10][200,210]范围内的表达式是
A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
B) (x>=1) || (x<=10) || (x>=200) || (x<=210)
C) (x>=1)&&(x<=10) || (x>=200)&&(x<=210)
D) (x>=1) || (x<=10)&&(x>=200) || (x<=210)
7C语言中whiledo-while 循环的主要区别是
do-while循环至少无条件执行一次,而while循环可能一次也不执行
while循环控制条件比do-while循环控制条件严格
do-while循环允许从外部转到循环体内,而while循环不允许
do-while的循环体可以是复合语句,而while循环不可以是复合语句
8、下面哪一项函数的头部是有效的?
one(int a int b)
int thisone(char x)
char another(int a,b)
double yetanother
9、若有定义char x[ ]= "12345"; char y[ ]={ '1', '2', '3', '4', '5'};则
Ax数组与y数组的长度相同    Bx数组长度大于y的长度
Cx 数组长度小于y数组长度    Dx数组等价于y 数组
10、二维数组的第一个元素的行下标和列下标是
A) 11  B)01  C)10  D) 00
二、填空题(每空3分,共30)
1、如果a=4, b=3,那么,在执行语句a=b;之后,ab的值分别是(1
2、语句:
if(6>5)printf(“#”);
printf(“$”);
输出(2
3for( sum=j=0; j<=10; ++j) sum += j; 循环结束后sum的值等于(3
4、长度为10int类型数组和长度为3 double类型数组,哪一个数组占用的内存空间多(4
5、字符数组a)char a[]=“one”;占多少内存字节(5
6、如果ch<‘A’ch>‘Z’,那么,表达式ch>=‘A’&& ch<=‘Z’的值是(6
7、编写C语句,交换ab的值(7
8、为了使用库函数getchar(),必须在程序中包含命令(8
9、设int numbers[5]={17,25,30,56,58};编写Cfor语句,将数组numbers中的每个元素减去3。使用变量i跟踪下标。(9
10、设有函数定义:
设有函数定义:
int max(int x,int )
  int z;
    z=x>y?x∶y;
    return(z);
语句printf(“%d”, max(max(2,3),4));输出什么?(10
三、阅读下列程序,写出运行结果(每题5分,共20)
1 
#include<stdio.h>
void main()
{  char a=’A’;
printf(“%c\n",a+ 32);
}
2
#include<stdio.h>
void main()
{  int x=3,y;
  if(x<0)y=-1;
  else if(x>0)y=1;
  else y=0;
  printf(“x=%d,y=%d\n”,x,y);
}     
3
#include <stdio.h>
void main()
{  int f1f2;
    int j;
    f1=1;f2=1;
    for(j=1; j<=4; j++){
      printf(%d  %d ″,f1f2);
        f1=f1+f2;
        f2=f2+f1;
    }
}
4
#include <stdio.h>
void main()
{ int a[2][3] = {{1,2,3},{4,5,6}};
  int b[3][2], i,j;
  for(i=0;i<2;i++) {
    for(j=0;j<3;j++) b[j][i] = a[i][j];
  }
  printf("array b:\n");
  for(i=0;i<3;i++) {
    for(j=0;j<2;j++)printf("%5d",b[i][j]);
    printf("\n");
  }
}
四、编写程序 (30分,每题10)
1、从键盘上输入两个整数,比较两个数的大小,并输出较大者
2、编写程序,打印如下图案:
*
**
***
****
*****
3、编写程序,求一维数组中最大元素,数据自定。
参考答案:
单项选择题(每题2分,共20)
(1)~(5)CCAAB
(6)~(10)CABBD
二、填空题(每空3分,共30)
(1) a=3, b=3
(2) #$
(3) 55
(4) double类型数组
(5)4
(6) 0
(7) t=a;a=b;b=t;
(8) #include<stdio.h>
(9)for(i=0;i<5;++i)numbers[i]-=3;
(10)4
三、阅读下列程序,写出运行结果(每题5分,共20)
a   
x=3,y=1
1  1  2  3  5  8  13  21
array b:
1  4
2  5
3  6
四、根据题目要求编写完整程序(30分,每题10)
1
#include<stdio.h>
void main()
{ float f1,f2,t;
  scanf("%f%f",&f1,&f2);
if(f1>f2)printf("%f\n",f1);
else printf("%f\n",f2);
}
2
#include<stdio.h>
void main()
{  int a,b;
for(a=1;a<=5;++a){
  for(b=1;b<=a;++b) printf("*");
printf(“\n”);
}
3
#include<stdio.h>
void main()
{  int i,a[10],sum;
  for(i=0;i<10;++i)scanf(“%d”,&a[i]);
sum=a[0];
  for(i=1;i<10;++i)if(a[i]>sum)sum=a[i];
  printf(“sum=%d\n”,sum);
}
C语言程序设计试题集(2)
单项选择题(30分,每题2分)
1.C语言编写的代码程序______
  A、可立即执行                  B、是一个源程序
  C、经过编译即可执行            D、经过编译解释才能执行
2. C语言中用于结构化程序设计的三种基本结构是______
  A 顺序结构、选择结构、循环结构      B ifswitchbreak
  C forwhiledo-while                D ifforcontinue
3. 以下选项中合法的实型常数是______
A5E2.0    B E-3      C .2E0    D 1.3E
4. 假定xy double型,则表达式x=2,y=x+3/2的值是______
A 3.500000      B 3        C 2.000000        D 3.000000
5. ch是字符型变量,下面不正确的赋值语句是______
Ach = 65;        B ch="a";    C ch ='\ n';        D ch= 9+ '0';
6. 下列有关C语言程序书写格式的说法哪个是错误的?
A C程序的书写格式比较自由,一个语句可以占多行,一行也可以有多个语句。
B C语句必须要有分号。
C C语言程序的标识符必须使用小写字母。
D { } 括起来的部分,通常表示了程序的某一层次结构,称为块。
7.下面程序段所表示的数学函数关系是______
    x= -1;
    if  (a!=0)
if  (a>0)  x=1;
else  x=0;
            -1  (a<0)         1  (a<0)
Ax=    0  (a=0)    Bx=    -1  (a=0)
1  (a>0)              0  (a>0)
0  (a<0)                -1  (a<0)
Cx=    -1  (a=0)   Dx=    1  (a=0)
1  (a>0)                0  (a>0)
8. 以下关于do-while循环的不正确描述是______
  A) do-while的循环体至少执行一次
  B) do-while的循环体可以是复合语句

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