编写函数: stucard(id,name,prof), 参数为学号、姓名、专业,功能是打印学生卡片。 如调用:stucard(“1101156101”,”穆自强”,“金融”),则 显示如下: ———————————— 学号:1101156101 姓名:穆自强 专业:金融
时间: 2023-10-21 13:05:36 浏览: 47
下面是一个实现该功能的 Python 函数:
```python
def stucard(id, name, prof):
print("————————————")
print("学号:" + id)
print("姓名:" + name)
print("专业:" + prof)
```
调用方式如下:
```python
stucard("1101156101", "穆自强", "金融")
```
输出如下:
```
————————————
学号:1101156101
姓名:穆自强
专业:金融
```
相关问题
1、编写一个Student学生类,要求: 1)具有私有属性:姓名、年龄、性别、专业(prof)。 2)具有两个带参数构造函数:在第一个构造函数中,设置学员的性别为男、专业为工业工程,其余属性的值由参数给定;在第二个构造函数中,所有属性的值都由参数给定。 3)具有一个空构造函数。 4)具有一个study()方法,输出该学员的姓名和专业。 5)编写一个测试MainApp类,主方法为main(),其功能: 实例化2个学生对象s1,s2,s1和s2对象的属性值自行给出,调用2个对象的study方法
public class Student {
private String name;
private int age;
private String gender;
private String prof; // 第一个构造函数
public Student(String name, int age, String prof) {
this.name = name;
this.age = age;
this.gender = "男";
this.prof = prof;
} // 第二个构造函数
public Student(String name, int age, String gender, String prof) {
this.name = name;
this.age = age;
this.gender = gender;
this.prof = prof;
} // 空构造函数
public Student() {
this.name = "";
this.age = 0;
this.gender = "";
this.prof = "";
} // study方法
public void study() {
System.out.println(this.name+"正在学习"+ this.prof);
}
}public class MainApp {
public static void main(String[] args) {
Student s1 = new Student("李明", 18, "软件工程");
Student s2 = new Student("张红", 17, "女", "工业工程");
s1.study();
s2.study();
}
}
3. 定义一个基类teacher,它有公有成员函数showinfo(),函数打印数据成员信息,有私有数据成员int num,string name,char sex。派生类professor是teac
### 回答1:
her的子类,增加了一个私有数据成员string title,并且重载了showinfo()函数,打印出所有数据成员的信息。
定义基类teacher:
```
class teacher {
public:
void showinfo() {
cout << "num: " << num << endl;
cout << "name: " << name << endl;
cout << "sex: " << sex << endl;
}
private:
int num;
string name;
char sex;
};
```
定义派生类professor:
```
class professor : public teacher {
public:
void showinfo() {
teacher::showinfo();
cout << "title: " << title << endl;
}
private:
string title;
};
```
在派生类中重载showinfo()函数,先调用基类的showinfo()函数,再打印出新增的数据成员title的信息。
### 回答2:
基类teacher的定义如下:
```cpp
class teacher {
public:
void showinfo() {
cout << "教师编号:" << num << endl;
cout << "姓名:" << name << endl;
cout << "性别:" << sex << endl;
}
private:
int num;
string name;
char sex;
};
```
派生类professor的定义如下:
```cpp
class professor : public teacher {
};
```
在派生类professor中,可以直接使用基类teacher中的公有成员函数showinfo()来打印数据成员信息。例如,可以创建一个professor对象,并调用showinfo()函数来显示教师信息:
```cpp
professor p;
p.showinfo();
```
这样就会打印出基类teacher中定义的数据成员信息:教师编号、姓名和性别。同时,派生类professor也继承了基类teacher中定义的私有数据成员int num、string name和char sex,可以在派生类中使用这些私有数据成员。但由于私有数据成员无法直接访问,所以在派生类中无法直接打印出这些私有数据成员的信息。只能通过调用基类的公有成员函数showinfo()来输出私有数据成员的信息。
### 回答3:
定一个基类Teacher,它有公有成员函数showinfo(),该函数打印基类的数据成员信息。基类的私有数据成员有一个int类型的num和一个string类型的name,还有一个char类型的sex。
派生类Professor是Teacher的派生类,继承了基类的公有成员函数和私有数据成员。在Professor类中,我们可以通过继承的showinfo()函数来打印基类和派生类的数据成员信息。
下面是一个模拟实现的例子:
```cpp
#include <iostream>
using namespace std;
class Teacher {
private:
int num;
string name;
char sex;
public:
Teacher(int n, string nam, char s) {
num = n;
name = nam;
sex = s;
}
void showinfo() {
cout << "基类Teacher的数据成员信息为:" << endl;
cout << "num: " << num << endl;
cout << "name: " << name << endl;
cout << "sex: " << sex << endl;
}
};
class Professor : public Teacher {
public:
Professor(int n, string nam, char s) : Teacher(n, nam, s) {
}
};
int main() {
Professor prof(1234, "张三", 'M');
prof.showinfo();
return 0;
}
```
在这个例子中,我们定义了一个基类Teacher和一个派生类Professor。派生类Professor继承了基类Teacher的公有成员函数showinfo(),并通过基类的构造函数初始化了继承的私有数据成员。
在main函数中,我们创建了一个派生类的对象prof,并调用了它的showinfo()函数来打印基类和派生类的数据成员信息。
输出结果为:
基类Teacher的数据成员信息为:
num: 1234
name: 张三
sex: M