#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(); struct Entry; vector<Entry>phone_book(1000); void print_entry(int i) { cout<<phone_book[i].name<<' '<<phone_book[i].number<<'\n'; } void add_entries(int i) { phone_book.resize(phone_book.size()+n); }
时间: 2024-04-29 10:19:19 浏览: 200
这段代码还是有问题的。首先,第四行的 vector 声明中使用了名为 Entry 的结构体,但是该结构体的定义并未给出,需要在该行之前或之后给出。第六行中的 print_entry 函数依然使用了未定义的成员变量 name 和 number。此外,该函数必须接收一个参数,即 i,表示要打印的条目在 phone_book 中的索引。第九行中的 n 变量仍然未定义。最后,main 函数的声明中也有一个分号需要删除。如果您能提供更多上下文信息,我可以更好地帮助您修复这些问题。
相关问题
纠正代码#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(); struct Entry; vector<Entry>phone_book(1000); void print_entry(int i) { cout<<phone_book[i].name<<' '<<phone_book[i].number<<'\n'; } void add_entries(int i) { phone_book.resize(phone_book.size()+n); }
这段代码还是有问题的。假设您想要实现一个电话簿,您需要给出 Entry 结构体的定义,包括成员变量 name 和 number。同时,add_entries 函数需要接收一个参数 n,表示要添加的新条目数。以下是可能的纠正代码:
```
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Entry {
string name;
string number;
};
vector<Entry> phone_book(1000);
void print_entry(int i) {
cout << phone_book[i].name << ' ' << phone_book[i].number << '\n';
}
void add_entries(int n) {
phone_book.resize(phone_book.size() + n);
}
int main() {
// 在这里调用函数,添加和打印电话簿条目
return 0;
}
```
请注意,main 函数的声明没有分号,而且需要在函数体内调用其他函数,比如 add_entries 和 print_entry。
阅读全文