C语言2作业参考答案

2019-03-16 13:35

C语言2作业1

一、判断题 (16分)

1. C程序是由函数构成的,每一个函数完成相对独立的功能。

2分

2. 被main函数调用的函数只能是库函数。

2分

3. 只有在函数被调用时,其形式参数才临时地占有存储空间.

2分

4. 函数若无返回值,则它一定无形参.

2分

5. 如果函数类型不定义为空类型,即使在return后面没有表达式,而实际上函数也是有一个不确定的返回值的.

2分

6. 函数必须有形参

2分

7. 函数必须有return语句

2分

8. 函数调用语句:func(rec1,rec2+rec3,(rec4,rec5));中,含有的实参个数是5

2分

二、选择题 (18分)

1.一个数据类型为void的函数中可以没有return语句,那么函数被调用时( ).

[A]

2分

A. 没有返回值 B. 返回一个系统默认值 C. 返回值由用户临时决定 D. 返回一个不确定的值

2.在C语言中,函数的数据类型是指____。

[A]

2分

A. 函数返回值的数据类型 B. 函数形参的数据类型 C. 调用该函数时的实参的数据类型 D. 任意指定的数据类型

3.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是____。

[D]

2分

A. 函数调用可以作为独立的语句存在 B. 函数调用可以作为一个函数的实参 C. 函数调用可以出现在表达式中 D. 函数调用可以作为一个函数的形参

4.阅读下面程序段,则执行后输出的结果是____。 #include void main()

{ int m=4,n=2,k; k=fun(m,n);

printf(\}

int fun(int m,int n) {

return(m*m*m-n*n*n); }

[C]

A. 64 B. 8 C. 56 D. 0

2分

5.编写求两个双精度数之和的函数,选项中正确的是____。 A)double add(double a,double b) { double s; s=a+b;

return s; }

B)double add(double a,b) { double s; s=a+b;

return (s);}

C)double add(double a double b) { double s; s=a+b; returns;} D)double add(a,b) { double a,b,s; s=a+b;

return (s);}

[A]

A. A B. B C. C D. D

2分

6.现有如下程序段 #include int aa(int x,int y); void main()

{ int a=24,b=16,c; c=aa(a,b);

printf(\}

int aa(int x,int y) { int w; while(y) { w=x%y; x=y; y=w; }

return x; }

则程序段的输出结果是____。

[D]

A. 5 B. 6 C. 7 D. 8

2分

7.函数的值通过return语句返回,下面关于return语句的形式描述错误的是____。

[C]

2分

A. return 表达式; B. return (表达式);

C. 一个return语句可以返回多个函数值 D. 一个return语句只能返回一个函数值

8.阅读下面程序,则执行后的结果为____。 #include void main()

{ fun3(fun1(),fun2());} fun1()

{ int k=20; return k;} fun2()

{ int a=15; return a;}

fun3(int a,int b) { int k;

k=(a-b)*(a+b); printf(\

[B]

2分

A. 0 B. 175 C. 184 D. 编译不通过

9.阅读下列程序,则执行后输出的结果是____。 #include void fun(int k) { k++; k=k*6;} void main() { int k=1; fun(k);

printf(\

[A]

A. 1 B. 2 C. 6 D. 12

2分

三、程序设计题 (30分) 1. 第5章 四、1

10分

题目描述

输入一个整数x,输出下面分段函数f(x)的值。要求将分段函数的计算定义成函数。当x>0时 f(x)=1;当x=0时 f(x)=0;当x<0时 f(x)=-1。

输入描述

输入一个整数

输出描述

输出分段函数f(x)的值

样例输入

100

样例输出

f(100)=1 【参考答案1】 #include

int f(int x) // 函数定义 {

if(x>0) return 1;

else if(x==0) return 0; else return -1; }

void main() { int x,y;

scanf(“%d”,&x); y=f(x); // 函数调用

printf(\}

【参考答案2】 2. 第5章 四、4

10分

#include int f(int x) { int y; if(x>0) y=1; else if(x==0) y=0; else y=-1; return y; } void main() { int x; scanf(“%d”,&x); printf(\} 题目描述

输入三个数,输出它们的最小值。要求定义一个函数,返回两个数的最小值。

输入描述

输入三个实数中间用空格间隔

输出描述

输出结果保留三位小数

样例输入

5.7 98.32 -123.45678 样例输出

【参考答案2】 -123.457 【参考答案1】 #include

double min(double x,double y) { if(x

void main()

{ double a,b,c,m;

scanf(\ m=min(min(a,b),c); printf(\}

3. 第5章 四、5

10分

#include double min(double x,double y) { double m; if(x

在主函数中输入字符c和m,调用函数prn,连续将字符c输出m次。定义函数prn,完成连续将某个字符c输出m次后换行。

输入描述

先输入要输出字符,再输入一个整数,两者之间用空格间隔

输出描述

在一行中输出

样例输入

# 5

样例输出

##### 【参考答案】

#include

void prn(char c,int m) { int i;

for(i=1;i<=m;i++) putchar(c); printf(\}

void main() { char c;


C语言2作业参考答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新课标人教版小学六年级下册语文单元备课主讲稿 全册 - 图文

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

马上注册会员

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