C语言复习题整理(2)

2019-04-14 15:37

pad=sum++; pad++; ++pad;

printf(\}

A.7 B.6 C.5 D.4 10.以下程序的运行结果为( D )。

#include main( ) {

int a=2,b=10;

printf(\}

A.a=%2,b= B.a=2,b=10 C.a=%%d,b=%%d D.a=%d,b=%d

11.为了避免嵌套的if-else语句的二义性,C语言规定else总是( C )。

A.与缩排位置相同的if组成配对关系 B.与在其之前未配对的if组成配对关系 C.与在其之前未配对的最近的if组成配对关系 D.与同一行上的if组成配对关系

12.对于for (表达式1; ;表达式3)可理解为( B )。

A.for (表达式1; 0 ;表达式3) B.for (表达式1; 1 ;表达式3) C.for (表达式1;表达式1;表达式3) D.for (表达式1;表达式3;表达式3)

二、程序填空

1.下面程序的功能是计算n!。

#include main ( ) {

int i, n; long p;

printf ( \ scanf (\ p= 1 ; for (i=2; i<=n; i++)

p*=i或p=p*i ; printf(\}

2.下面程序的功能是:从键盘上输入若干学生的成绩,统计并输出最高和最低成绩,当输入负数时结束输入。

#include main ( ) {

float score, max, min;

printf ( \ scanf (\ max=min=score;

while ( score>=0 ) {

if (score>max) max=score;

if ( score

printf(\}

3.下面程序的功能是:计算y=

#include #include main ( ) {

float x , y=0, fz=-1, fm=-1, temp=1; printf ( \ scanf (\

while ( abs(temp)>0.00001 ) {

fz= 【6】-fz*x ; fm=fm+2; temp=fz/fm; y+=temp; }

printf(\}

的值。要求从键盘上输入x的值,精度控制在0.00001内。

4.下面的程序完成两个数的四则运算。用户输入一个实现两个数的四则运算的表达式,程序采用switch语句对其运算进行判定后执行相应

的运算并给出结果。

#include main( ) {

float x,y; char op;

printf(\ scanf(\ 【7】switch (op) {

case '+':

printf(\ 【8】x,op,y,x+y ); 【9】break ; case '-':

printf(\ break; case '*':

printf(\ break; case '/':

if ( 【10】(y>=-1e-6)&&(y<=1e-6) ) printf(\ else

printf(\ break;

default:printf(\ } }

题解4 函 数

4.1 习题 一、选择题

1.C语言中函数形参的缺省存储类型是( B )。

A.静态(static) B.自动(auto) C.寄存器(register) D.外部(extern) 2.函数调用语句function((exp1,exp2), 18)中含有的实参个数为( C )。

A.0 B.1 C.2 3.下面函数返回值的类型是( D )。 square(float x) {

return x*x; }

A.与参数x的类型相同 B.是void型 C.无法确定 D.是int型 4.C语言规定,程序中各函数之间( D )。

A.不允许直接递归调用,也不允许间接递归调用 B.允许直接递归调用,但不允许间接递归调用

D.3 C.不允许直接递归调用,但允许间接递归调用 D.既允许直接递归调用,也允许间接递归调用 5.一个函数返回值的类型取决于( C )。

A.return语句中表达式的类型 B.调用函数时临时指定 C.定义函数时指定或缺省的函数类型 D.调用该函数的主调函数的类型 6.下面叙述中,错误的是( C )。

A.函数的定义不能嵌套,但函数调用可以嵌套 B.为了提高可读性,编写程序时应该适当使用注释

C.变量定义时若省去了存储类型,系统将默认其为静态型变量 D.函数中定义的局部变量的作用域在函数内部

7.在一个源程序文件中定义的全局变量的有效范围为( C )。

A.一个C程序的所有源程序文件 B.该源程序文件的全部范围 C.从定义处开始到该源程序文件结束 D.函数内全部范围

8.某函数在定义时未指明函数返回值类型,且函数中没有return语句,现若调用该函数,则正确的说法是( D )。

A.没有返回值 B.返回一个用户所希望的值 C.返回一个系统默认值 D.返回一个不确定的值

9.函数swap(int x, int y)可实现对x和y值的交换。在执行如下定义及调用语句后,a和b的值分别为( B )。

int a=10, b=20; swap (a,b );

A.10和10 B.10和20 C.20和10 D.20和20 10.下面错误的叙述是( D )。

A.在某源程序不同函数中可以使用相同名字的变量 B.函数中的形式参数是局部变量

C.在函数内定义的变量只在本函数范围内有效

D.在函数内的复合语句中定义的变量在本函数范围内有效

二、程序填空

1.求s=1!+2!+3!+…+10!之和。 程序如下:

#include long int factorial(int n) {

int k=1; long int p=1; for(k=1; k<=n; k++)

【1】p=p*k; ; return p; } main( ) {

int n; float sum=0;

for(n=1;n<=10;n++)

【2】sum=sum+factorial(n); ; printf(\}

2.以下函数用以求x的y次方。

double fun (double x, int y) {

int i; double m=1;

for ( i=1; i 【3】<=y或

三、阅读程序并写出运行结果

1.下面程序运行的结果是_____2,4,,6,8________: #include #define MAX_COUNT 4 void fun( ); main( ) {

int n;

for(n=1; n<=MAX_COUNT; n++) fun( ); }

void fun( ) {

static int k; k=k+2;

printf (\}

4.下面程序运行的结果是___8,17______:

#include int fun(int x, int y) {

static int m=0, n=2; n+=m+1; m=n+x+y; return m; }


C语言复习题整理(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:工程车辆分动系统分动箱传动毕业设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: