C语言2作业参考答案(3)

2019-03-16 13:35

C语言2作业3

一、判断题 (8分)

1. 静态局部变量只在本函数内可用。

2分

2. 外部变量是全局变量。

2分

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

2分

4. 在函数体内定义的变量称全局变量,可以被程序中的所有函数引用。 2

二、选择题 (10分)

1.以下程序的输出结果是______。 int f( )

{ static int i=0; int s=1; s+=i; i++; return s; }

main()

{ int i,a=0;

for(i=0;i<5;i++) a+=f( ); printf(\\}

[D]

A. 20 B. 24 C. 25 D. 15

2分

2.若有以下程序

#include void f(int n); main()

{ void f(int n); f(5); }

void f(int n)

{ printf(\

则以下叙述中不正确的是______。

[C]

2分

A. 若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f

B. 若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f

C. 对于以上函数程序,编译时系统会提示出错信息;提示对f函数重复说明

D. 函数f无返回值,所以可用void将其类型定义为无值型

3.以下程序的输出结果是______。 int x=3; main() { int i;

for(i=1;i

incre()

{ static int x=1; x*=x+1;

printf(\}

[C]

A. 3 3 B. 2 2 C. 2 6 D. 2 5

2分

4.设有以下函数; f(int a) { int b=0;

static int c=3; b++;c++;

return(a+b+c); }

如果在下面的程序中调用该函数,则输出结果是______。 main()

{ int a=2, i;

for(i=0;i<3;i++) printf(\ }

A) B) C) D) 7 7 7 7 8 9 10 7 9 11 13 7

[A]

2分

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

5.若程序中定义了以下函数

double myadd(double a,double b) {return(a+b);}

并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是______。

[A] 2分

A. double myadd(double a, b); B. double myadd(double,double); C. double myadd(double b, double a); D. double myadd(double x, double y);

三、程序填空题 (10分)

1. 功能:通过函数的递归调用计算阶乘。#include long power(int n) {

long f; if(n>1)

f=__(1)__; else f=1; return(f); }

void main() {

int n; long y;

scanf(\ y=__(2)__;

printf(\}

(1)答案 2分

power(n-1)*n

(2)答案 2分

power(n)

(3)答案 1分

y

5分

2. 功能:利用全局变量计算长方体的体积及三个面的面积。

5分

#include int s1,s2,s3;

int vs(int a,int b,int c) {

int v;

v=__(1)__; s1=a*b; s2=__(2)__; s3=a*c; return v; }

int main() {

int v,l,w,h;

printf(\:\ scanf(\ __(4)__;

printf(\}

(1)答案 2分

a*b*c

(2)答案 1分

b*c

(3)答案 1分

&l

(4)答案 1分

v=vs(l,w,h)

四、程序设计题 (20分) 1. 统计整数中含某数字个数

10分

题目描述

编写函数int ndigit(int n,int k)统计整数n中含数字k的个数。

如:ndigit(38987,8)返回值为2, ndigit(24226,2)返回值为3, ndigit(24226,9)返回值为0。

在主函数中输入整数n和k,调用函数ndigit计算出n中含k的个数,并在主函数输出。如果输入的k值不是一位整整则输出error。

输入描述

输入一个整数和一个0~9的数字

输出描述

输出一个相应的 整数

样例输入

输入样例1: 345464 4

输入样例2: 0 0

输入样例3:

4565 -6

样例输出

输出样例1: 3

输出样例2: 1

输出样例3:

error 【参考答案】

#include

int ndigit(int n,int k) { int c=0;

do { // 若用while语句,则在前面要加if(n==0&&k==0) return 1; if (n==k) c++; n/=10; }while(n!=0); return c; }

void main() { int n,k;

scanf(\ if(k>9||k<0) printf(\


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

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

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

马上注册会员

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