文档库 最新最全的文档下载
当前位置:文档库 › C++编程题(六)

C++编程题(六)

C++编程题(六)
C++编程题(六)

第六章上机题目

重点:掌握函数的定义、调用及声明。

参数传递

函数的应用

难点:指针、引用及函数的递归调用

实验内容:

一、基础题

1、定义函数把华氏温度转化为摄氏温度,公式为:C=(F-32)×5/9;在主函数中计算输出30、35、40、45、50、55、60华氏温度对应的摄氏温度对照表。

2、编写函数求一个不超过五位的十进制整数各位数值的和。(如:输入2634,输出15)并将结果传回主调函数

3、定义函数getPower(int x,int y)计算x的y次幂,在主函数调用该函数求x5+y5之和。

4、编写函数求出一个3x3矩阵的最大和最小元素及其下标。(数据自定,所有输入与输出在主函数完成)

5、编写函数,用以判断一个整数是否为素数,如果是,则返回1;否则返回0,并利用此函数,找出100-200之间的所有素数。

6、编写函数将一个浮点数分解成整数部分与小数部分,在主函数中读入任意5个浮点数,调用该函数,输出其整数值和小数值。

7、设计两个函数,求两个数的最大公约数和最小公倍数,在主函数中输入数据进行测试。

8、编写函数,求如下级数和,在主函数中输入n,并输出结果。

A=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+4)+…….+1/(1+2+3+…+n)。

9、设计一个函数,求任意n个整数的最大数及其下标,并在主函数中输入10个整数,调用此函数。

7、编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,计算边长为1的正方形及其内切圆、内接等腰三角形和等腰梯形面积。

函数原型如下:

double area(double radius=0);

double area(double a, double b);

double area(double a, double b, double h);

double area(double a, double b, double c, int);

完成该程序。

二、提高题

1、设计函数factors(num,k),返回整数num中包含因子k的个数,如果没有该因子,则返回0。

2、删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回值为删除重复数据后数组中数据的个数。

例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10

删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。

返回值为9。

3、设计一个简单的计算器程序,从键盘输入“+ 3 5 ”代表表达式“3+5”,程序读入运算符和数据,调用Calculate( )函数,根据运算符进行加、减、乘、除四则运算。要求能反复执行这一过程,直到用户输入“#”符号作为运算符为止。

函数原型如下:

double add(double ,double ); //加

double minus(double ,double ); //减

double multi(double ,double ); //乘

double div(double ,double ); //除

double Calculate (double ,double ,char ); // 运算符作为字符数读入

4、设计递归函数将十进制数转换二进制输出。

5、设计函数digit(num,k),返回整数num从右边开始的第k位数字的值。例如:

digit(4647,3)=6

digit(23523,7)=0

6、阅读程序,预测结果,上机运行程序对比。

#include

using namespace std;

int i=1; // i 为全局变量,具有静态生存期。

void main(void)

{ static int a; // 静态局部变量,有全局寿命,局部可见。

int b=-10; // b, c为局部变量,具有动态生存期。

int c=0;

void other(void);

cout<<"---MAIN---\n";

cout<<" i: "<

c=c+8; other();

cout<<"---MAIN---\n";

cout<<" i: "<

i=i+10; other();

}

void other(void)

{

static int a=2;

static int b;

// a,b为静态局部变量,具有全局寿命,局部可见。

//只第一次进入函数时被初始化。

int c=10; // C为局部变量,具有动态生存期,

//每次进入函数时都初始化。

a=a+2; i=i+32; c=c+5;

cout<<"---OTHER---\n";

cout<<" i: "<

b=a;

}

相关文档