1、指出下列程序中的错误,并说明为什么。(抄题,在错误语句右侧标注错误原因,并改正) # include< iostream> using namespace std; class Student{ int sno; int age; void printStu (); void setSno (int d); }; void printStu () { cout<< "\nSno is"<<sno<<"," Cout<<"age is"<< age<< ". "<<endl; } void setSno (int s) { sno=s; } void setAge (int a) { age=a; } int main () { Student lin; lin.setSno (20021); lin.setAge (20); lin.printStu (); },并将改正的代码打出来
时间: 2024-03-26 08:38:16 浏览: 73
错误:1. 在类定义中,分号后面不应该有多余的空格。2. 类中的方法定义需要声明在类的内部,而不是在类的外部。3. printStu() 和 setSno() 方法的定义应该在类的外部添加 Student:: 前缀来指定所属的类。4. 在 printStu() 方法中,第二个 cout 应该小写。5. 在 setAge() 方法中,函数名应该是 setAge() 而不是 setage()。
改正后的代码如下:
```
#include <iostream>
using namespace std;
class Student {
private:
int sno;
int age;
public:
void printStu();
void setSno(int d);
void setAge(int a);
};
void Student::printStu() {
cout << "\nSno is " << sno << ", age is " << age << ". " << endl;
}
void Student::setSno(int s) {
sno = s;
}
void Student::setAge(int a) {
age = a;
}
int main() {
Student lin;
lin.setSno(20021);
lin.setAge(20);
lin.printStu();
return 0;
}
```
阅读全文