十一.1 储存班长信息的学生类

/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作    者:cxz
* 完成日期:2014年 5月 5日
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
class Stu   //声明基类
{
public:
    Stu(int n, string nam );  //基类构造函数
    void display( );          //成员函数,输出基类数据成员
protected:        //(*)访问权限为保护型的数据成员
    int num;      //学生学号
    string name;  //学生姓名
};
class StuDetail: public Stu              //声明派生类StuDetail
{
public:
    //学生nam,学号n,a岁,家住ad,他的班长是nam1,学号n1
    StuDetail(int n, string nam,int a, string ad,int n1, string nam1):
    Stu(n,nam),monitor(n1,nam1),age(a),addr(ad) {};
//派生类构造函数
    void show( ); //成员函数,输出学生的信息
    void show_monitor( );    //成员函数,输出班长信息
private:
    Stu monitor;   //学生所在班的班长,班长是学生,是Stu类的成员
    int age;       //学生年龄
    string addr;   //学生的住址
};
Stu::Stu(int n,string nam)
{
    num=n;
    name=nam;
}
void Stu::display( )
{
    cout<<"学号:"<<num<<endl;
    cout<<"姓名:"<<name<<endl;

}
void StuDetail::show( )
{
    display();
    cout<<"年龄:"<<age<<endl;
    cout<<"住址:"<<addr<<endl;
} //成员函数,输出学生的信息
void StuDetail::show_monitor( )
{
    monitor.display( );
}
int main( )
{
    //学生王力,10010号,19岁,家住上海的北京路,他的班长是李孙,学号10001
    cout<<"学生的信息:"<<endl;//输出学生信息
    StuDetail s(10010,"Wang-li",19,"115 Beijing Road,Shanghai",10001,"Li-sun");
    s.show( );
    cout<<"班长信息:"<<endl;
    s.show_monitor();                //输出班长信息
    return 0;
}


 

成果展示:

心得体会:表示有点乱、、、

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Android Studio中设计学生选课系统的步骤如下: 1. 创建新项目 在Android Studio中创建一个新项目,选择Empty Activity作为默认模板。 2. 定义实体和扩展 创建三个Java:Person.java、Course.java和Relation.java,定义它们的属性和方法。其中,Person包含id、myname和myclass三个属性,Course包含id、name、obj和phone四个属性,Relation包含studentId和courseId两个属性。 3. 创建数据库 在app包下创建一个名为DBOpenHelper.java的,继承SQLiteOpenHelper,并重写onCreate()和onUpgrade()方法。在onCreate()方法中创建student、course和relations三个表,并定义它们的字段。在onUpgrade()方法中更新表结构。 4. 创建CourseActivity和PersonActivity界面 在res/layout目录下创建两个XML布局文件:activity_course.xml和activity_person.xml,分别对应于CourseActivity和PersonActivity界面。在这两个布局文件中添加TextView、EditText、Button等控件,并设置它们的属性。 5. 编写Activity代码 创建CourseActivity和PersonActivity两个Java,并继承AppCompatActivity。在这两个中,实现对数据库的增、删、改、查等操作,并将这些操作与界面上的控件进行绑定。在CourseActivity中,实现添加、删除课程和跳转到PersonActivity的功能,在PersonActivity中,实现对学生信息的增、删、改、查等操作。 最终的代码如下: Person.java ``` public class Person { private int id; private String myname; private String myclass; public Person(int id, String myname, String myclass) { this.id = id; this.myname = myname; this.myclass = myclass; } // getter and setter methods } ``` Course.java ``` public class Course { private int id; private String name; private String obj; private String phone; public Course(int id, String name, String obj, String phone) { this.id = id; this.name = name; this.obj = obj; this.phone = phone; } // getter and setter methods } ``` Relation.java ``` public class Relation { private int studentId; private int courseId; public Relation(int studentId, int courseId) { this.studentId = studentId; this.courseId = courseId; } // getter and setter methods } ``` DBOpenHelper.java ``` public class DBOpenHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "mydb.db"; private static final int DATABASE_VERSION = 1; private static final String TABLE_STUDENT = "student"; private static final String COL_STUDENT_ID = "id"; private static final String COL_STUDENT_NAME = "myname"; private static final String COL_STUDENT_CLASS = "myclass"; private static final String TABLE_COURSE = "course"; private static final String COL_COURSE_ID = "id"; private static final String COL_COURSE_NAME = "name"; private static final String COL_COURSE_OBJ = "obj"; private static final String COL_COURSE_PHONE = "phone"; private static final String TABLE_RELATIONS = "relations"; private static final String COL_RELATIONS_STUDENT_ID = "studentId"; private static final String COL_RELATIONS_COURSE_ID = "courseId"; private static final String CREATE_TABLE_STUDENT = "CREATE TABLE " + TABLE_STUDENT + "(" + COL_STUDENT_ID + " INTEGER PRIMARY KEY," + COL_STUDENT_NAME + " TEXT," + COL_STUDENT_CLASS + " TEXT)"; private static final String CREATE_TABLE_COURSE = "CREATE TABLE " + TABLE_COURSE + "(" + COL_COURSE_ID + " INTEGER PRIMARY KEY," + COL_COURSE_NAME + " TEXT," + COL_COURSE_OBJ + " TEXT," + COL_COURSE_PHONE + " TEXT)"; private static final String CREATE_TABLE_RELATIONS = "CREATE TABLE " + TABLE_RELATIONS + "(" + COL_RELATIONS_STUDENT_ID + " INTEGER," + COL_RELATIONS_COURSE_ID + " INTEGER," + "PRIMARY KEY (" + COL_RELATIONS_STUDENT_ID + ", " + COL_RELATIONS_COURSE_ID + "))"; public DBOpenHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_TABLE_STUDENT); db.execSQL(CREATE_TABLE_COURSE); db.execSQL(CREATE_TABLE_RELATIONS); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO: update table structure } } ``` CourseActivity.java ``` public class CourseActivity extends AppCompatActivity { private EditText etId, etName, etObj, etPhone; private Button btnAdd, btnDel, btnPerson; private SQLiteDatabase db; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_course); etId = findViewById(R.id.et_id); etName = findViewById(R.id.et_name); etObj = findViewById(R.id.et_obj); etPhone = findViewById(R.id.et_phone); btnAdd = findViewById(R.id.btn_add); btnDel = findViewById(R.id.btn_del); btnPerson = findViewById(R.id.btn_person); DBOpenHelper dbHelper = new DBOpenHelper(this); db = dbHelper.getWritableDatabase(); btnAdd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); String name = etName.getText().toString(); String obj = etObj.getText().toString(); String phone = etPhone.getText().toString(); ContentValues values = new ContentValues(); values.put("id", id); values.put("name", name); values.put("obj", obj); values.put("phone", phone); db.insert("course", null, values); } }); btnDel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); db.delete("course", "id=?", new String[]{id}); } }); btnPerson.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(CourseActivity.this, PersonActivity.class); startActivity(intent); } }); } } ``` PersonActivity.java ``` public class PersonActivity extends AppCompatActivity { private EditText etId, etName, etClass; private Button btnAdd, btnDel, btnUpdate, btnQuery; private SQLiteDatabase db; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_person); etId = findViewById(R.id.et_id); etName = findViewById(R.id.et_name); etClass = findViewById(R.id.et_class); btnAdd = findViewById(R.id.btn_add); btnDel = findViewById(R.id.btn_del); btnUpdate = findViewById(R.id.btn_update); btnQuery = findViewById(R.id.btn_query); DBOpenHelper dbHelper = new DBOpenHelper(this); db = dbHelper.getWritableDatabase(); btnAdd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); String name = etName.getText().toString(); String myclass = etClass.getText().toString(); ContentValues values = new ContentValues(); values.put("id", id); values.put("myname", name); values.put("myclass", myclass); db.insert("student", null, values); } }); btnDel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); db.delete("student", "id=?", new String[]{id}); } }); btnUpdate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); String name = etName.getText().toString(); String myclass = etClass.getText().toString(); ContentValues values = new ContentValues(); values.put("myname", name); values.put("myclass", myclass); db.update("student", values, "id=?", new String[]{id}); } }); btnQuery.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String id = etId.getText().toString(); Cursor cursor = db.query("student", null, "id=?", new String[]{id}, null, null, null); if (cursor.moveToFirst()) { String name = cursor.getString(cursor.getColumnIndex("myname")); String myclass = cursor.getString(cursor.getColumnIndex("myclass")); etName.setText(name); etClass.setText(myclass); } cursor.close(); } }); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值