//编写一个学生类(Students),包括姓名(name)、性别(sex)、学号(num)、语文课(Chinese)、英语课(English)、 //数学课(Math)和平均值(avg),方法包括求

本文介绍了一个简单的面向对象设计案例——学生类的定义及其实现。该类包含学生的姓名、性别、学号等基本信息,并能计算三门课程的平均成绩。
//编写一个学生类(Students),包括姓名(name)、性别(sex)、学号(num)、语文课(Chinese)、英语课(English)、
//数学课(Math)和平均值(avg),方法包括求三门课的平均分,要求输出小组成员的相关信息。
package mianxiangduixiangren;


public class Students {// 定义Students类
String name, sex;// 成员变量
int num;
static float Chinese;
static float English;
static float Math;
double avg;


public double achievement(float Chinese, float English, float Math)// 成员方法


{
return (Chinese + English + Math) / 3;
}


public static void main(String[] args) {
Students P1 = new Students();// 声明并创建对象
P1.name = "张三";// 给p1的属性赋值
P1.sex = "女";
P1.Chinese = 85;
P1.English = 90;
P1.Math = 75;
System.out.println(P1.achievement(P1.Chinese, P1.English, P1.Math));// 输出


}


}
以下是一个简单的学生成绩管理系统的C语言实现: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_STUDENT 100 struct student { char id[10]; char name[20]; char sex; float score[3]; }; struct student students[MAX_STUDENT]; int num_students = 0; void insert_student(char *id, char *name, char sex, float x, float y, float z) { if (num_students < MAX_STUDENT) { strcpy(students[num_students].id, id); strcpy(students[num_students].name, name); students[num_students].sex = sex; students[num_students].score[0] = x; students[num_students].score[1] = y; students[num_students].score[2] = z; num_students++; printf("Insert student success.\n"); } else { printf("Too many students. Cannot insert more.\n"); } } void list_students() { int i; for (i = 0; i < num_students; i++) { printf("%s %s %c %.1f %.1f %.1f\n", students[i].id, students[i].name, students[i].sex, students[i].score[0], students[i].score[1], students[i].score[2]); } } void find_student(char *id) { int i; for (i = 0; i < num_students; i++) { if (strcmp(students[i].id, id) == 0) { printf("%s %s %c %.1f %.1f %.1f\n", students[i].id, students[i].name, students[i].sex, students[i].score[0], students[i].score[1], students[i].score[2]); return; } } printf("Cannot find student with id %s.\n", id); } void change_student(char *id, char *new_name, char new_sex, float new_x, float new_y, float new_z) { int i; for (i = 0; i < num_students; i++) { if (strcmp(students[i].id, id) == 0) { strcpy(students[i].name, new_name); students[i].sex = new_sex; students[i].score[0] = new_x; students[i].score[1] = new_y; students[i].score[2] = new_z; printf("Change student success.\n"); return; } } printf("Cannot find student with id %s.\n", id); } int main() { while (1) { char cmd[10], id[10], name[20], sex; float x, y, z; printf("Enter command: "); scanf("%s", cmd); if (strcmp(cmd, "Insert") == 0) { scanf("%s %s %c %f %f %f", id, name, &sex, &x, &y, &z); insert_student(id, name, sex, x, y, z); } else if (strcmp(cmd, "List") == 0) { list_students(); } else if (strcmp(cmd, "Find") == 0) { scanf("%s", id); find_student(id); } else if (strcmp(cmd, "Change") == 0) { scanf("%s %s %c %f %f %f", id, name, &sex, &x, &y, &z); change_student(id, name, sex, x, y, z); } else if (strcmp(cmd, "Quit") == 0 || strcmp(cmd, "Exit") == 0) { break; } else { printf("Unknown command.\n"); } } return 0; } ``` 该程序中使用了结构体来表示学生信息,同时使用了全局变量 `students` 和 `num_students` 来存储所有学生的信息和学生数量。程序中实现了插入学生信息、输出所有学生信息、查找学生信息、修改学生信息和退出程序等功能。在主函数中,使用了一个死循环来不断地接受用户输入并执行相应的操作,直到用户输入退出命令为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值