0
我希望爲讀取變量輸出不同的字符串。例如,下面,我希望打印在讀取之前輸入英文標記英文標記使用eng.setmarks()。請建議一種方法來實現這一點。打印讀取不同對象變量的不同字符串
這裏是我的代碼:(看下面循環)
#include <iostream>
#include <cstring>
using std::cin;
using std::cout;
class student {
char name[20];
int age;
class marks {
int marks;
public:
void setmarks(int x) {
marks = x;
}
int getmarks() {
return marks;
}
};
public:
marks eng, math, phy, chem, cs; // nested objects are public
void setname(char* n) {
strncpy(name, n, 20);
}
char* getname() {
return name;
}
void setage(int a) {
age = a;
}
float total() {
size_t total = eng.getmarks() + math.getmarks() +
phy.getmarks() + chem.getmarks() + cs.getmarks();
return total/500.0;
}
};
int main() {a
student new_stud;
char temp[20];
cout << "Enter name: ";
cin >> temp;
cin.get(temp, sizeof(temp));
new_stud.setname(temp);
int age;
cout << "Enter age: ";
cin >> age;
new_stud.setage(age);
for(size_t i = 0; i < 5; ++i) {
// I wish to output: "Enter marks in" + subject_name, but harcoding it seems tedious
}
cout << "\nTotal Percentage: " << new_stud.total();
return 0;
}
對不起,我不明白你在問什麼?你能否更精確地闡述它。 – surajsn
我的意思是這些單詞不會被寫入,例如當我閱讀不同的主題標記時,我必須明確地寫出*「輸入英文標記:」並閱讀標記。所以如果沒有科目很大,那就成了頭痛的問題。我認爲** Marci **已經給出了很好的解決方案! – samjoe