资源简介

C++语言写的,控制台模式的,本人亲写,可用来略作借鉴,保证完整可运行

资源截图

代码片段和文件信息

#include
using namespace std;
#include 
#include “student.h“
#include “course.h“
#include “attendance.h“

#define stu_Max 100 //学生数组的大小
#define course_Max 100

bool findStudent(student studs[] int stuId int* stuIndex)
{
for (int i = 0; i {
*stuIndex = i;
if (studs[i].getStuId() == stuId)//找到该学生
{
return true;
}
//if (studs[i].getStuName() == NULL)//未找到该学生
//{

//}
}
return false;
}

bool findCourse(course cos[] string courseName int* courseIndex)
{
for (int i = 0; i {
*courseIndex = i;
if (cos[i].getCourseName() == courseName)//找到该课程
{
return true;
}
//if (cos[i].getCourseName() == NULL)//未找到该课程
//{

//}
}
return false;
}

int findMax(int sum[] int* maxIndex)//返回数组中最大值及其下标并将最大值设为0
{
int max = sum[0];
*maxIndex = 0;
for (int i = 0; i {
if (max {
max = sum[i];
*maxIndex = i;
}
}
sum[*maxIndex] = 0;
return max;
}

bool addStuAttendRecord(student studs[] course cos[])//添加学生考勤记录
{
if (studs == NULL || cos == NULL)
return false;
int stuId;
string stuName;
string courseName;
cout << “\n添加学生考勤记录:\n“;
cout << “学号:“;
cin >> stuId;
cout << “姓名:“;
cin >> stuName;
cout << “课程名:“;
cin >> courseName;

int stuIndex;
if (!findStudent(studs stuId &stuIndex))////未找到该学生录入学生信息
{
cout << “尚未记录该学生信息,请录入该学生信息:\n“;
studs[stuIndex].initStudent();
}
int courseIndex;
if (!findCourse(cos courseName &courseIndex))//未找到该课程,录入该课程信息
{
cout << “未记录该课程信息,请录入该课程信息:\n“;
cos[courseIndex].initCourse();
}

attendance* attend = new attendance();
cout << “考勤记录的时间:\n“;
attend->initAttend(studs[stuIndex].getStuId() cos[courseIndex].getCourseId() cos[courseIndex].getCourseName());

studs[stuIndex].addAttendance(attend);
return true;
}

bool changeStuAttendRecord(student studs[] course cos[])//修改某个学生的考勤记录
{
cout << “\n修改学生考勤记录:\n“;
int stuId;
string stuName;
string courseName;
int year;
int month;
int day;
cout << “学号:“;
cin >> stuId;
cout << “姓名:“;
cin >> stuName;
cout << “课程名:“;
cin >> courseName;

int stuIndex;
if (!findStudent(studs stuId &stuIndex))
{
cout << “\n不存在该学生的信息记录请输入正确信息或添加新考勤记录\n“;
return false;
}

int courseIndex;
if (!findCourse(cos courseName &courseIndex))
{
cout << “\n不存在该课程的信息记录,请输入正确信息或添加新考勤记录\n“;
return false;
}

cout << “上课时间:\n“;
cout << “年:“;
cin >> year;
cout << “月:“;
cin >> month;
cout << “日:“;
cin >> day;
double attendId = countAttendId(year month day);

attendance* attendPoint = new attendance();
if (studs[stuIndex].findAttendRecord(attendId attendPoint))//通过出勤id查找该记录
{
cout << “考勤记录为:\n“;
studs[stuIndex].showStudent();
cos[courseIndex].showCourse();
attendPoint->showAttendRecord();
}
else
{
cout << “不存在该 考勤记录\n“;
return false;
}

int choice = 0;
while (choice != 4)
{

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        8633  2018-06-03 18:21  attendanceSystem.cpp
     文件        2362  2018-06-03 16:30  course.h
     文件        2476  2018-06-03 16:47  student.h
     文件        2698  2018-06-03 16:30  attendance.h

评论

共有 条评论