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