华南理工大学高级语言程序设计C++ ·平时作业2019 联系客服

发布时间 : 星期日 文章华南理工大学高级语言程序设计C++ ·平时作业2019更新完毕开始阅读f63c91fd67ce0508763231126edb6f1aff0071de

C++编程作业

一、 编程题(共4小题,每小题10分,共40分)

1. 有一个健身房内部管理系统,请根据以下信息设计出能够表示会员账户信息的结构体,结构体名称为User。会员信息类型如下:

a) 用户身份证号码:英文符号为id,数据类型为字符串; b) 账号:英文符号为card,数据类型为整型;

c) 用户姓名:英文符号为name,数据类型为字符串; d) 用户地址:英文符号为address,数据类型为字符串; e) 账户金额:英文符号为money,数据类型为整型。

答struct User {

string id; long card; string name; string address; int money; }

2. 有一个学生成绩管理系统,请设计出能够表示学生信息的结构体,结构体名称为Student。学生信息类型如下:

f) 学号:英文符号为sno,数据类型为字符串; g) 姓名:英文符号为sname,数据类型为字符串; h) 性别:英文符号为sgender,数据类型为布尔型; i) 年级:英文符号为syear,数据类型为整型; 答

struct Student {

string sno; string sname; bool sgender; int syear; }

3. 设计两个函数,分别用于计算立方体的体积和表面积,函数名分别为

calVolumn和calArea。要求边长以参数形式传入函数。立方体的边长为双精度浮点数。 答

//计算体积

double calVolumn(double d_l){ return d_l*d_l*d_l; }

//计算表面积

double calAre (double d_l) { return 6*d_l*d_l; }

4. 给定一个非零整数,判断其是正数还是负数。(注:本题已提供一部分起始代码,请根据题意补充完整即可;无需任何输出结果。)

int number = 100; // 给定的非零整数

boolean flag = true; // 是否为正数的标志。当该变量为true时,表示number为正数,否则为负数。 (请补充)

if(number % 2 == 0){

return “正数”; }else{

return “负数” ; }

二、

程序阅读题(共6小题,每小题10分,共60分)

#include using namespace std;

int main() {

for (; t > 0; t--) { }

result3 = result3 * t; for (; r > 0; r--) { }

result2 = result2 * r; double n=5, r=3; double t = n - r; double result; double result1 = 1; double result2 = 1; double result3 = 1; for (; n > 0; n--) { }

result1 = result1 * n;

}

result = result1 / (result2 * result3);

cout<<\<

1. 请写出上面这段代码的运行结果。

答:result = 10

2. 上面这段代码的功能是什么?

答: 计算阶乘

3. 如果将r赋值为4,上面这段代码的运行结果是什么。

答:result = 5

4. 如果将n赋值为4,上面这段代码的运行结果是什么。

答:result = 4

5. 尝试阐述如何对该算法进行优化。(无需写出代码,文字说明即可)

答:可以单独写个计算阶乘的函数,再调用

6. 日常编程时,如果遇到比如“求平方”之类的数学运算时,是自己编写计算过程好还是直接使用某个数学库的函数好?为什么?

答:直接使用数学库的函数比较好,因为这样可以让编程变得更方便快捷,代码也会更加整洁,通读性比较高。

以上题目均要求以word文档的形式提交(其他方式一律以0分计)。