【模板】输入输出流
要点:零活运用cin.get()、getline(),特别学会使用输入输出流
vector<double> Fdepart_string(string data) { int i, j; int kinds = 1; vector<string> part; string A_part; stringstream room; room.str(data); while (room >> A_part) part.push_back(A_part); if (kinds == 1) { for (i = 0; i < part.size(); i++) { double num_cahe; char str_cahe[20]; num_cahe = atof(part[i].c_str()); sprintf(str_cahe, "%g", num_cahe); part[i] = str_cahe; } } vector<double> ans2; double ans_double; for (i = 0; i < part.size() - 1; i++) { ans_double = atof(part[i].c_str()); ans2.push_back(ans_double); } return ans2; } vector<string> depart_string(string data, int kinds) { int i, j; vector<string> part; string A_part; stringstream room; room.str(data); while (room >> A_part) part.push_back(A_part); if (kinds == 1) { for (i = 0; i < part.size(); i++) { double num_cahe; char str_cahe[20]; num_cahe = atof(part[i].c_str()); sprintf(str_cahe, "%g", num_cahe); part[i] = str_cahe; } } return part; } int main() { int kinds; string s1,s2; cin >> kinds; cin.get(); //--------------- getline(cin, s1); getline(cin, s2); //--------------- vector<string> data1, data2; data1 = depart_string(s1, kinds); data2 = depart_string(s2, kinds); //-------------- cout << endl; if(kinds!=1) cout << ListCompare(data1, data2) << endl; else { vector<double> f1, f2; f1 = Fdepart_string(s1); f2 = Fdepart_string(s2); cout << ListCompare(data1, data2) << endl; } return 0; }

浙公网安备 33010602011771号