配色: 字号:
《C语言程序设计》复习题(有答案)
2014-06-03 | 阅:  转:  |  分享 
  
《C语言程序设计》期末复习题

一、填空题

1.程序设计语言一般分为机器语言、汇编语言、高级语言三大类。

2.在C语言中,基本的逻辑运算符有3个:逻辑与(&&)、逻辑或(||)、逻辑非(!)。

3.结构化程序设计有顺序、选择、循环3种基本控制结构形式。

4.在C语言中,有3种类型的整型变量:基本整型、长整型、短整型。

5.用于输出十进制形式基本整型数据的格式说符为%d或%md。…else结构、if…elseif结构、switch结构来实现各种形式的选择结构。

10.C语言中的宏定义有两种形式:符号常量定义、带参数的宏定义。

11.数据的存储类型分为自动类型(auto)、静态类型(static)、寄存器类型(register)、外部类型(extern)。

12.在C语言中,函数分为标准库函数、用户自己定义的函数两种。



二、选择题

1.在C语言中,表达式语句的终结符是(B)

A.:B.;C.。D.,

2.在一个函数体内部,由左、右花括号括起来的语句称为(B)

A.赋值语句B.复合语句C.单行语句D.空语句

3.C语言中“结束本次循环的执行,但不退出循环结构”所使用的语句是(B)

A、break语句B、continue语句C、return语句D、switch语句

4.下列函数中不是常用库函数的是(D)

A.scanf()B.fabs()C.cos()D.abc()

5.下列变量名中,合法的变量名是()()。



8.用(B)说明的局部变量称为局部静态变量。

A.autoB.staticC.registerD.extern

9.定义局部静态变量时若不赋初值,则在编译时将自动赋初值为(A)

A.0B.1C.随即赋值D.不赋值

10.文件包含命令的一般形式为(B)

A.#defineB.#include<文件名>

C.#ifdef,#else,#endifD.#if,#else,#endif

11.说明语句:inta[50];定义了一个包含(C)个元素的整型一维数组。

A.30B.40C.50D.80

12.设有变量说明“inta=11,c=10;”,则表达式(--a!=c++)?(--a):++c的值是(D)。

A.9B.10C.11D.12

13.在C语言中,用符号()()A.6 B.8 C.14 D.48



三、程序填空题

1.设有C程序如下:

#definePQ4.5

#defineABC(x)PQ+(xx)

#include“stdio.h”

main()

{inta=3,b,c,d;

b=ABC(a);

c=ABC(a+1);

d=2.0ABC(a);

printf(“b=%5d,c=%-5d,d=%d\n,b,c,d);

}

上述程序的运行结果是:b=13,c=11,d=18



2.如下C程序,程序运行时输入的p值为20,输出结果为w=0.607500

#include"stdio.h"

main()

{floatp,w;

printf("inputp:");

scanf("%f",&p);

if(p<=0.0)w=0.0;

elseif(p<=0.5)w=0.01p;

elseif(p<=1.0)w=0.005+0.015(p-0.5);

elseif(p<=2.0)w=0.0125+0.02(p-1.0);

elseif(p<=5.0)w=0.0325+0.025(p-2.0);

elseif(p<=10.0)w=0.1075+0.03(p-5.0);

elsew=0.2575+0.035(p-10.0);

printf("w=%f\n",w);}

3.如下C程序,程序运行时从键盘输入数据:9095867260-12,输出结果为count=2

#include"stdio.h"

main()

{intcount;

floatgrade;

count=0;

scanf("%f",&grade);

while(grade>=0.0)

{if(grade>=90.0)count=count+1;

scanf("%f",&grade);}

printf("count=%d\n",count);}

4.以下程序段的作用是计算N!的递归函数

doublep(intk)

{doublef;

if((k==0)||(k==1))f=1;

elsef=p(k-1)k;

return(f);}

5.如下C程序,程序运行时从键盘输入数据:123456789101112131415

16171819202122232425,输出结果为17131925

#include

voidmain()

{intk,j,p[5][5];

printf("inputdata:");

for(k=0;k<5;k++)

for(j=0;j<5;j++)

scanf("%d",&p[k][j]);

for(k=0;k<5;k++)

{for(j=0;j<5;j++)

printf("%8d",p[k][j]);

printf("\n");}

printf("\n");

for(k=0;k<5;k++)

printf("%8d",p[k][k]);

printf("\n");}



四、编程题(5分)

1.编写程序完成一道数学计算:m=1+2+3+…+1000。

#include

voidmain()

{intn,m;

m=1;

for(n=2;n<=1000;n=n+1)m=m+n;

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

}

2.编写程序完成一道数学计算:求n!的值(要求用for循环完成)。(P102)

五.简答题(15分)每题5分

程序设计的过程分为几个基本步骤?(P4)



当型循环结构与直到型循环结构的区别与联系?(P99-101)



在C语言中,给数组元素提供数据的方法有几种?(P158)



























4





2









献花(0)
+1
(本文系从不微笑的...首藏)