2019华工C++作业 下载本文

C++编程作业

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

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

a) 学号:英文符号为sno,数据类型为字符串; b) 姓名:英文符号为sname,数据类型为字符串; c) 性别:英文符号为sgender,数据类型为布尔型; d) 年级:英文符号为syear,数据类型为整型;

结构图定义如下: struct Student{ string sno; string sname; bool sgender; int syear; };

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

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

double calVolumn(double *len) {

return *len**len**len; }

double calArea(double *len) {

return *len**len*6; }

二、

程序阅读题(50分)

#include

using namespace std;

int main() { }

int i, count=0, sum=0; double average;

int a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for(i=0; i<10; i++) { }

average=sum/count;

cout<<\<

if(a[i]%2==0)

continue; sum+=a[i]; count++;

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

2. 上面这段代码的功能是什么?是否存在什么问题?(10分)

3. 如果将数组a中最后一个数字更改为13,最终的输出结果是什么?(10分)

答:1,程序运行结果count = 5 ; average = 5 2,功能:求数组中奇数的个数以及它们的平均值;

存在问题: average=sum/count;这句 sum,count均为int型,结果还是int型 应该改为 average=1.0*sum/count;

3,最后一个数字改为13,程序运行结果count = ,6 ; average = 6