我正在嘗試撰寫學校公告(如果這不是正確的詞,我很抱歉,我對“公告”的意思是每個學生的成績。英語不是我的 1° 語言),我想要詢問用戶學生的姓名,然后創建一個
int student_name;
所以我不需要創建 1000 個
int student_1
int student_2
然后只需使用cin <<. 那么,我該怎么做呢?我希望我的問題很容易理解。謝謝!
uj5u.com熱心網友回復:
#include <iostream>
#include <map>
#include <string>
void createStudent(std::map<string, int>& input)
{
std::string name;
int grade;
for(int i=0; i<1000; i)
{
std::cin>>name>>grade;
input.insert(std::pair<string, int>(name, grade));
}
return;
}
void showContentMap(std::map<string, int>& input)
{
for(int i=0; i<input.size(); i)
{
std::cout<<input[i].first<<" : "<<input[i].second<<std::endl;
}
return;
}
int main()
{
std::map<string, int> students;
createStudent(students);
showContentMap(students);
return 0;
}
解釋:
- 命令功能的執行
createStudent()將students它們的識別符號(例如名稱和等級)分配給引數。據了解,學生人數為1000人。 - 命令函式
showContentMap()演示了引數的內容students。 - 學生的主要屬性是name和grade。這些屬性將被分配到引數中
map<string, int> students。
uj5u.com熱心網友回復:
由于您要創建一個允許添加和洗掉學生姓名的系統,因此最好使用類似std::vector<std::string> studentNames;. 每次要附加新的學生姓名時,都可以使用studentNames.pushBack("John Doe");.
請記住#include <vector>在代碼的頂部。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/364946.html
上一篇:在Julia變數中使用素數“'”
