Description
With a class "Student" declared as below:
class Student {
public:
int id;
char name[50]; // Data field
int age; // Data field
Student();
Student(int, char*, int);
};
You are required to implement the class functions and also two other functions used to process Student objects, which can get output as specified later.
void set(Student &, int, char*, int);
void print(Student);
1) You don't need to submit the main function.
2) You don't need to include the header file for class declaration by yourself.
Output
Steven Gates (100) is 61 years old.
Larry Jordan (123) is 18 years old.
No Name (124) is 0 years old.
提示,头文件请包涵如下代码:
#include<iostream>
#include<cstring>
using namespace std;
class Student
{
public:
int id;
char name[50]; // Data field
int age; // Data field
Student();
Student(int, char*, int);
//void set(int, char*, int);
//void print();
};
void set(Student &, int, char*, int);
void print(Student);
Provided Codes
framework.cpp
#include <iostream>
#include <cstring>
#include "source.h"
using namespace std;
int main()
{
Student std1, std2(123, "Larry Jordan", 18), std3(124);
set(std1, 100, "Steven Gates", 61);
print(std1);
print(std2);
print(std3);
return 0;
}
Submission
source.h
#include <iostream>
#include <cstring>
using namespace std;
class Student {
public:
int id;
char name[50]; // Data field
int age; // Data field
Student();
Student(int, char*, int);
};
Student::Student(){
id=0;
strcpy(name,"No Name");
age=0;
}
Student::Student(int Id,char* Name="No Name",int Age=0){
id=Id;
strcpy(name,Name);
age=Age;
}
void set(Student &stu, int Id, char* Name, int Age){
stu.id=Id;
strcpy(stu.name,Name);
stu.age=Age;
}
void print(Student stu){
cout<<stu.name<<" ("<<stu.id<<") is "<<stu.age<<" years old."<<endl;
}
Standard Answer
source.h
#include <iostream>
#include <cstring>
using namespace std;
class Student
{
public:
int id;
char name[50]; // Data field
int age; // Data field
Student();
Student(int, char*, int);
//void set(int, char*, int);
//void print();
};
void set(Student &, int, char*, int);
void print(Student);
Student::Student() {
id=0;
strcpy(name,"No Name");
age=0;
}
Student::Student(int pid,char* pname="No Name",int page=0) {
id=pid;
strcpy(name,pname);
age=page;
}
void set(Student&stu,int id,char*name,int age) {
stu.id=id;
stu.age=age;
strcpy(stu.name,name);
}
void print(Student stu) {
cout<< stu.name <<" ("<<stu.id<<") "<<"is "<<stu.age<<" years old."<<endl;
}
最后
以上就是坚定八宝粥最近收集整理的关于1348 [BA1000] The Student Class with Public Data Fields的全部内容,更多相关1348内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复