您的位置:首页 > 编程语言 > C语言/C++

简单的学生信息处理程序实现(C++程序设计第2周)

2017-02-28 16:17 639 查看

简单的学生信息处理程序实现

来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)

注意: 总时间限制: 1000ms 内存限制: 65536kB

描述

在一个学生信息处理程序中,要求实现一个代表学生的类,并且所有成员变量都应该是私有的。

(注:评测系统无法自动判断变量是否私有。我们会在结束之后统一对作业进行检查,请同学们严格按照题目要求完成,否则可能会影响作业成绩。)

输入

姓名,年龄,学号,第一学年平均成绩,第二学年平均成绩,第三学年平均成绩,第四学年平均成绩。

其中姓名、学号为字符串,不含空格和逗号;年龄为正整数;成绩为非负整数。

各部分内容之间均用单个英文逗号","隔开,无多余空格。

输出

一行,按顺序输出:姓名,年龄,学号,四年平均成绩(向下取整)。

各部分内容之间均用单个英文逗号","隔开,无多余空格。

样例输入

1Tom,18,7817,80,80,90,70

样例输出

1Tom,18,7817,80

//在如何处理输入,遇到了问题。关于cin一定要再看.

代码:

#include <iostream>
#include<string.h>
using namespace std;

class Student
{
private:
char name[10];
char number[10];
int age;
int score[4];
public:
void SetName(char *);
void SetNumber(char *);
void SetAge(int);
void SetScore1(int);
void SetScore2(int);
void SetScore3(int);
void SetScore4(int);
int AverageScore();
};
void Student::SetName(char * name)
{
strcpy(this->name, name);
}
void Student::SetNumber(char * number)
{
strcpy(this->number, number);
}
void Student::SetAge(int age)
{
this->age = age;
}
void Student::SetScore1(int score1)
{
score[0] = score1;
}
void Student::SetScore2(int score2)
{
score[1] = score2;
}
void Student::SetScore3(int score3)
{
score[2] = score3;
}
void Student::SetScore4(int score4)
{
score[3] = score4;
}
int Student::AverageScore()
{
int average = (score[0] + score[1] + score[2] + score[3]) / 4;
return average;
}

int main()
{
char name[10] = { 0 };
cin.getline(name, 10, ',');
int age = 0;
char dot;
cin >> age >> dot;
char number[10] = { 0 };
cin.getline(number, 10, ',');
int score[4] = { 0 };
cin >> score[0] >>dot >> score[1] >> dot >> score[2] >> dot >> score[3];
Student s1;
s1.SetName(name);
s1.SetNumber(number);
s1.SetAge(age);
s1.SetScore1(score[0]);
s1.SetScore2(score[1]);
s1.SetScore3(score[2]);
s1.SetScore4(score[3]);
int average = s1.AverageScore();
cout << name << ',' << age << ',' << number << ',' << average << endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐