基于C语言实现学生选课系统

鉴于C语言实现的通讯录,为了巩固C语言的基础知识,试着写一个简单的学生选课系统。

思路比较简单:

1.回滚显示各种提示信息或操作信息

2.链表操作。

代码中有管理员部分功能没有实现,学生和老师的功能基本实现,但有待加固,如果初学者可是试着去完善一下。
还可以将老师,学生的信息输出到文件文本中,本代码中没有实现,但并不是很难。

代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* 总链表——存放所有信息 */
typedef struct Sum_Node
{
  /* 学生信息 */
  char stuNo[20][20];
  char stuName[20][20];
  char stuSex[20][20];
  /* 课程信息 */
  char CourseNum[20];
  char CourseName[20];
  char CourseTeacher[20];
  struct Sum_Node *next;
}TotalNode;

/* 链表管理员——暂时不需要 */
/*typedef struct Node
{
  char Num[20];
  char Name[20];
  char Sex[10];
  struct Node *next;
}Manager_Node;*/

char studentAccount[20];
char studentPassword[20];
char teacherAccount[20];
char teacherPassword[20];
char managerAccount[20];
char managerPassword[20];

/* 定义结构体指针 */
TotalNode *pTeacher;
TotalNode *pStudent;

/* 函数的声明 */
void checkPerson_Msg(TotalNode *phead,int n);
void CreateTeacherNode(TotalNode *head);

/* 学生信息的输出-链表 */
void OutStudentNode(TotalNode *head,char *Account)
{
  TotalNode *p;
  int num=0;
  int i,j;
  int flag=0;
  char Account_random[20]="";
  pStudent=pTeacher; // 学生和老师用的链表是同一个
  p=pStudent;

  puts("******所选课程信息******");
  puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  if(pStudent==NULL)
  {
    puts("没有数据!");
    puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
    return;
  }
  printf("请输入所要查询人的姓名:");
  gets(Account_random);  // 获取所要查询的学生姓名
  if(0 == Account_random[0])
  {
    gets(Account_random);
  }
  while(p!=NULL)
  {
    for(j=0;j<20;j++)
    {
      if(0 == strcmp(p->stuName[j],Account_random))
      {
        printf("课程代码:%s\t",p->CourseNum);
        printf("课程名称:%s\t",p->CourseName);
        printf("课程老师:%s\t",p->CourseTeacher);
        for(i=0;i<20;i++)
        {
          if(p->stuNo[i][0]!='\0')
          {
            num++;
          }
        }
        printf("选课学生:%d\t",num);
        num=0; // 清0操作
        putchar('\n');
        flag=1;
      }
    }
    p=p->next;
  }
  if(0 == flag)
  {
    puts("没有该学生选课信息!!!!");
  }
  puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  putchar('\n');
}

/* 学生信息的插入-链表 */
void InsertStudentNode(TotalNode *head,char *Account)
{
  TotalNode *p;
  int i;
  char courseCode[20]="";
  pStudent=pTeacher; // 学生和老师用的链表是同一个,都是链表头
  p=pStudent;
  if(p==NULL)
  {
    puts("等待教师录入选课信息,请下次再进行选择!!");
    return;
  }
  printf("【请输入正确的课程代码】");
  gets(courseCode);
  if(0 == courseCode[0])
  {
    gets(courseCode);
  }
  while(p!=NULL)
  {
    if(0 == strcmp(p->CourseNum, courseCode))
    {
      for(i=0;i<20;i++)
      {
        if(p->stuNo[i][0] == '\0')
        {
          printf("请输入学号:");
          gets(p->stuNo[i]);
          printf("请输入姓名:");
          gets(p->stuName[i]);
          printf("请输入性别:");
          gets(p->stuSex[i]);
          puts("选课成功!!!!");
          return;
        }
      }
    }
    p=p->next;
  }
  puts("$$$$$$选课失败,请重新选择$$$$$$");

}

/* 删除所选课程 */
void DeleteStudentNode(TotalNode *head,char *Account)
{
  char coursNo[20]="";  // 课程代码
  char student[20]="";  // 学生姓名
  TotalNode *p;
  int i;
  int flag=0;
  pStudent=pTeacher; // 学生和老师用的链表是同一个,都是链表头
  p=pStudent;
  if(pStudent==NULL)
  {
    puts("没选该课程,删除失败!!!!");
    return;
  }

  printf("【输入学生姓名】");
  gets(student);
  if(0 == student[0])
  {
    gets(student);
  }

  printf("【请输入删除的课程代码】");
  gets(coursNo);
  if(0 == coursNo[0])
  {
    gets(coursNo);
  }
  while(p!=NULL)
  {
    if(0==strcmp(p->CourseNum,coursNo)) // 查询所要删除的课程代码
    {
      for(i=0;i<20;i++)
      {
        if(0==strcmp(p->stuName[i],student))
        {
          /* 初始化清0操作 */
          p->stuNo[i][0]='\0';
          p->stuName[i][0]='\0';
          p->stuSex[i][0]='\0';
          puts("删除成功!!!!");
          flag=1;   // 删除标志位
        }
      }
    }
    p=p->next;
  }
  if(0 == flag)  // 如果删除成功标志位置1
  {
    puts("删除失败!!!!");
  }

}

/* 教师信息的输出-链表 */
void OutTeacherNode(TotalNode *head)
{
  TotalNode *p;
  int num=0;
  int i;
  p=pTeacher;
  puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  if(pTeacher==NULL)
  {
    puts("没有数据!");
    puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
    return;
  }
  while(p!=NULL)
  {
    printf("课程代码:%s\t",p->CourseNum);
    printf("课程名称:%s\t",p->CourseName);
    printf("课程老师:%s\t",p->CourseTeacher);
    for(i=0;i<20;i++)
    {
      if(p->stuNo[i][0]!='\0')
      {
        num++;
      }
    }
    printf("选课学生:%d\t",num);
    num=0; // 清0操作
    putchar('\n');
    p=p->next;
  }
  puts("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
  putchar('\n');
}

/* 教师信息的插入-链表 */
void InsertTeacherNode(TotalNode *head)
{
  TotalNode *p;
  TotalNode *q;
  int i;
  p=pTeacher; // 教师链表的头
  if(pTeacher==NULL)
  {
    CreateTeacherNode(head);
    puts("添加成功!");
    return;
  }
  while(p!=NULL)
  {
    if(p->next == NULL)
    {
      q=(TotalNode *)malloc(sizeof(TotalNode));
      p->next=q;
      q->next=NULL;
      for(i=0;i<20;i++)
      {
        q->stuNo[i][0]='\0';
      }
      printf("请输入课程代码:");
      gets(q->CourseNum);
      if(0 == *q->CourseNum)
      {
        gets(q->CourseNum);
      }
      printf("请输入课程名称:");
      gets(q->CourseName);
      printf("请输入课程教师:");
      gets(q->CourseTeacher);
      puts("添加成功!");
      break;
    }
    p=p->next;
  }
  //pTeacher=head;
}

/* 教师信息的插入-链表 */
void CreateTeacherNode(TotalNode *head)
{
  int i;
  pTeacher=(TotalNode *)malloc(sizeof(TotalNode));
  pTeacher->next=NULL;
  for(i=0;i<20;i++)
  {
    pTeacher->stuNo[i][0]='\0';
  }
  printf("请输入课程代码:");
  gets(pTeacher->CourseNum);
  if(0 == *pTeacher->CourseNum)
  {
    gets(pTeacher->CourseNum);
  }
  printf("请输入课程名称:");
  gets(pTeacher->CourseName);
  printf("请输入课程教师:");
  gets(pTeacher->CourseTeacher);
  //pTeacher=head;
}

/* 删除指定数据 */
void DeleteTeacherNode(TotalNode *phead)
{
  char coursNo[20]="";  // 课程代码
  TotalNode *p;
  TotalNode *s;
  p=pTeacher; // 教师链表的头
  s=pTeacher;
  if(NULL==pTeacher)
  {
    puts("没有课程信息!!!!");
    return;
  }
  printf("【请输入删除的课程代码】");
  gets(coursNo);
  if(0 == coursNo[0])
  {
    gets(coursNo);
  }
  if(0 == strcmp(p->CourseNum,coursNo))
  {
    pTeacher=p->next;
    puts("删除成功!!");
    return;
  }
  while(p != NULL)
  {
    if(0 == strcmp(p->CourseNum,coursNo))
    {
      s->next=p->next;
      puts("删除成功!!");
      return;
    }
    s=p;
    p=p->next;
  }
}

/* 功能显示 */
void display(TotalNode *phead)
{
  int n;
  while(1)
  {
    puts("=========请选择登录页面=========");
    puts("[1]学生登录");
    puts("[2]教师登录");
    puts("[3]管理员登录");
    puts("[4]退出系统");
    while(1)  // 循环检查输入的值是否正确
    {
      printf("【请选择】");
      scanf("%d",&n);
      if(n>4 || n<1)
      {
        puts("输入有误,请选择正确的选项:");
        continue;    // 输入不正确,重新输入
      }
      else
      {
        break; // 输入正确,退出循环
      }
    }
    if( 1 == n ) //  学生登录系统
    {
      puts("=========欢迎登录学生系统=========");
      printf("请输入账号和密码\n");
      checkPerson_Msg(phead,1);

    }
    if( 2 == n ) //  老师登录系统
    {
      puts("=========欢迎登录教师系统=========");
      printf("请输入账号和密码\n");
      checkPerson_Msg(phead,2);

    }
    if( 3 == n ) //  管理员登录系统
    {
      puts("=========欢迎登录管理员系统=========");
      printf("请输入账号和密码\n");
      checkPerson_Msg(phead,3);

    }
    if( 4 == n ) //  退出系统
    {
      puts("@@@@@@@@@欢迎下次登录,再见!!!@@@@@@@@@");
      exit(0);
    }
  }
}

/* 学生登录后的操作,查询、修改 */
void Student_Mng(TotalNode *phead, char *Account,int n)
{
  switch(n)
  {
  case 1:   // 查询
    OutStudentNode(phead,Account);
    break;
  case 2:   // 添加
    InsertStudentNode(phead,Account);
    break;
  case 3:   // 删除
    DeleteStudentNode(phead,Account);
    break;
  case 4: ;  // 返回主页面,上层已经实现,此处不需要考虑
    break;
  default:
    puts("异常!");
    break;
  }
}

/* 教师登录后的操作,查询、修改 */
void Teacher_Mng(TotalNode *phead, char *Account,int n)
{

  switch(n)
  {
  case 1: // 查询学生选课情况
    OutTeacherNode(phead);
    break;
  case 2: // 添加和删除课程信息
    InsertTeacherNode(phead);
    break;
  case 3:
    DeleteTeacherNode(phead);
    break;
  case 4:
    break; // 上层实现其功能
  default:
    puts("异常!");
    break;
  }
}

/* 管理员登录后的操作,查询、修改 */
void Manager_Mng(char *Account, int n)
{
  switch(n)
  {
  case 1:
    break;
  case 2:
    break;
  case 3:
    break;
  default:
    puts("异常!");
    break;
  }
}
/* 显示各功能登录后的信息 */
void display_Detailed(TotalNode *phead ,char *Account,int n)
{
  int in;
  switch(n)
  {
  case 1:
    while(1)
    {
      printf("=========欢迎%s同学=========\n",Account);
      puts("[1]查询已选课程"); // 查询自己所选的所有课程包括:课程代码、课程名称、任课老师
      puts("[2]添加课程");    // 增加所选课程
      puts("[3]删除所选课程"); // 删除所选课程
      puts("[4]返回主页面");
      printf("【请选择】");
      scanf("%d",&in);
      if(4 == in)
      {
        return; // 返回上层登录页面
      }
      Student_Mng(pStudent,Account, in);
      //puts("[4]");
    }
    break;
  case 2:
    while(1)
    {
      printf("=========欢迎%s老师=========\n",Account);
      puts("[1]查询学生选课信息");  //
      puts("[2]添加老师课程信息");  //
      puts("[3]删除老师课程信息");  //
      puts("[4]返回主页面");
      printf("【请选择】");
      scanf("%d",&in);
      if(4 == in)
      {
        return; // 返回上层登录页面
      }
      Teacher_Mng(pTeacher,Account, in);
    }
    //puts("[4]");
    break;
  case 3:
    printf("=========欢迎%s同志=========\n",Account);
    puts("[1]查询学生所选课程信息");
    puts("[2]修改选课信息");
    puts("[3]返回主页面");
    scanf("%d",&in);
    Manager_Mng(Account, in);
    //puts("[4]");
    break;
  default:
    puts("异常!");
    break;
  }

}

/* 验证账号密码 */
void checkAccountandPassword(TotalNode *phead ,char *Account, char *Password,int n)
{
  while(1)
  {
    gets(Account);
    /**/
    if(0 == strcmp(Account,"wantin"))
    {
      while(1)
      {
        printf("请输入密码:");
        gets(Password);
        if(0 == strcmp(Password,"123456"))
        {
          display_Detailed(phead,Account, n);
          return;
        }
      }
    }
    else
    {
      printf("请输入账号:");
    }
  }
}

/* 校验学生、教师、管理员的账号 密码 */
void checkPerson_Msg(TotalNode *phead , int n)
{
  switch(n)
  {
    case 1: // 学生登录  char studentAccount[20]; char studentPassword[20];
      checkAccountandPassword(phead, studentAccount,studentPassword,n);
      break;
    case 2: // 教师登录  char teacherAccount[20]; char teacherPassword[20];
      checkAccountandPassword(phead, teacherAccount,teacherPassword,n);
      break;
    case 3: // 管理员登录 char managerAccount[20]; char managerPassword[20];
      checkAccountandPassword(phead, managerAccount,managerPassword,n);
      break;
    default:
      puts("异常!");
      break;
  }
}

/* */

void main()
{
  TotalNode *phead=NULL;
  display(phead);
}

大家可以根据下面的操作来帮助读懂这段代码。

操作结果如下:

=========请选择登录页面=========
[1]学生登录
[2]教师登录
[3]管理员登录
[4]退出系统
【请选择】2
=========欢迎登录教师系统=========
请输入账号和密码
请输入账号:wantin
请输入密码:123456
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】2
请输入课程代码:123
请输入课程名称:C语言
请输入课程教师:王艇
添加成功!
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】2
请输入课程代码:456
请输入课程名称:Java
请输入课程教师:王艇
添加成功!
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】2
请输入课程代码:789
请输入课程名称:PHP
请输入课程教师:王艇
添加成功!
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:0
课程代码:456    课程名称:Java   课程老师:王艇   选课学生:0
课程代码:789    课程名称:PHP    课程老师:王艇   选课学生:0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】4
=========请选择登录页面=========
[1]学生登录
[2]教师登录
[3]管理员登录
[4]退出系统
【请选择】1
=========欢迎登录学生系统=========
请输入账号和密码
请输入账号:wantin
请输入密码:123456
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】1
******所选课程信息******
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
请输入所要查询人的姓名:王艇
没有该学生选课信息!!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】3
【输入学生姓名】王艇
【请输入删除的课程代码】123
删除失败!!!!
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】2
【请输入正确的课程代码】123
请输入学号:110
请输入姓名:王艇
请输入性别:男
选课成功!!!!
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】1
******所选课程信息******
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
请输入所要查询人的姓名:王艇
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】4
=========请选择登录页面=========
[1]学生登录
[2]教师登录
[3]管理员登录
[4]退出系统
【请选择】2
=========欢迎登录教师系统=========
请输入账号和密码
请输入账号:wantin
请输入密码:123456
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:1
课程代码:456    课程名称:Java   课程老师:王艇   选课学生:0
课程代码:789    课程名称:PHP    课程老师:王艇   选课学生:0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】4
=========请选择登录页面=========
[1]学生登录
[2]教师登录
[3]管理员登录
[4]退出系统
【请选择】1
=========欢迎登录学生系统=========
请输入账号和密码
请输入账号:wantin
请输入密码:123456
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】2
【请输入正确的课程代码】456
请输入学号:110
请输入姓名:王艇
请输入性别:男
选课成功!!!!
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】1
******所选课程信息******
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
请输入所要查询人的姓名:王艇
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:1
课程代码:456    课程名称:Java   课程老师:王艇   选课学生:1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】2
【请输入正确的课程代码】123
请输入学号:112
请输入姓名:王五
请输入性别:男
选课成功!!!!
=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】1
******所选课程信息******
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
请输入所要查询人的姓名:王艇
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:2
课程代码:456    课程名称:Java   课程老师:王艇   选课学生:1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】1
******所选课程信息******
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
请输入所要查询人的姓名:王五
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin同学=========
[1]查询已选课程
[2]添加课程
[3]删除所选课程
[4]返回主页面
【请选择】4
=========请选择登录页面=========
[1]学生登录
[2]教师登录
[3]管理员登录
[4]退出系统
【请选择】2
=========欢迎登录教师系统=========
请输入账号和密码
请输入账号:wantin
请输入密码:123456
=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
课程代码:123    课程名称:C语言  课程老师:王艇   选课学生:2
课程代码:456    课程名称:Java   课程老师:王艇   选课学生:1
课程代码:789    课程名称:PHP    课程老师:王艇   选课学生:0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

=========欢迎wantin老师=========
[1]查询学生选课信息
[2]添加老师课程信息
[3]删除老师课程信息
[4]返回主页面
【请选择】

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C++实现简单的图书管理系统

    今天再为大家介绍另一个常用的管理系统--图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果. 图书信息包括:登录号.书名.作者名.分类号.出版单位.出版时间.价格等.试设计一图书信息管理系统,使之能提供以下功能: (1)图书信息录入功能(图书信息用文件保存) (2)图书信息浏览功能 (3)查询和排序功能:(至少一种查询方式)         .按书名查询         .按作者名查询 (4)图书信息的删除与修改 分享代码如下 #include<iostream.h>

  • C语言实现学生选课系统

    本文实例为大家分享了C语言实现学生选课系统的具体代码,供大家参考,具体内容如下 代码: #include<stdio.h> #include<windows.h> #include<stdlib.h> #include<conio.h> typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef unsigned int uint32_t; #define CLASS_CLS

  • C++实现简单的信息管理系统

    本文为大家分享C++实现简单的信息管理系统,小编之前在学习的时候也要做一些管理系统,在网上查了许多资料,现在我把资料分享给大家,希望能够帮助到大家. #include <stdio.h> #include <stdlib.h> #include "file.h" void savaList(Node *head)/**把用户录入的数据存储到文件里面去方便下次读取*/ { FILE *fp=fopen("data\\data.txt" ,&qu

  • C++实现简单的学生管理系统

    C++实现简单的学生管理系统 //Student.cpp #include<iostream> using namespace std; struct Stu { char no[10]; char name[16]; int math; int chi; double ave; }; class Student { public: Stu st; Student * next; public: Student(){} Student(Stu s) { st=s; next=NULL; st.

  • C++实现简单的职工信息管理系统

    功能主模块描述 模块一:增加人员函数Add():增加职工基本信息. 模块二:删除人员函数Delete():删除指定的职工的基本信息以及薪酬. 模块三:修改人员函数Modify():修改指定的职工基本信息. 模块四:查询职工信息函数Search():查询指定的职工信息以及薪酬. 模块五:排序职工信息函数Sort():职工信息排序功能实现 模块六:基础数据设置函数Set():设置五类职位的基本薪酬. 模块七:数据存盘,载入函数Save()以及Load():储存职工基本信息,薪酬以及五类职位的基本薪酬

  • C++实现停车场管理系统

    本文实例为大家分享了停车场管理系统的具体代码,供大家参考,具体内容如下 #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cstdlib> #include<algorithm> #include<queue> #include<vector> #include<stack> #includ

  • C++实现学生选课系统

    本文实例为大家分享了C++实现学生选课系统的具体代码,供大家参考,具体内容如下 #include <iostream> #include <iomanip> #include <fstream> #include<Windows.h> #include<cstring> using namespace std; struct SubList/*某个学生所学的课程中的某一个 */ { int num; /*课程代号 */ SubList *next

  • C++获取当前系统时间的方法总结

    本文实例讲述了C++获取当前系统时间的方法.分享给大家供大家参考.具体如下: 方案- 优点:仅使用C标准库:缺点:只能精确到秒级 #include <time.h> #include <stdio.h> int main( void ) { time_t t = time(0); char tmp[64]; strftime(tmp,sizeof(tmp),"%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t)); puts(

  • C++学生信息管理系统

    本文实例为大家分享了C++学生信息管理系统源码,供大家参考,具体内容如下 1. tea_list.c #include<stdio.h> #include<stdlib.h> #include<string.h> #include"teacher.h" int sq_tea ; PTEA head = NULL ; FILE *fp ; int tea_llopen(const char* path)//打开文件 { fp=fopen(path,&q

  • 基于C语言实现学生选课系统

    鉴于C语言实现的通讯录,为了巩固C语言的基础知识,试着写一个简单的学生选课系统. 思路比较简单: 1.回滚显示各种提示信息或操作信息 2.链表操作. 代码中有管理员部分功能没有实现,学生和老师的功能基本实现,但有待加固,如果初学者可是试着去完善一下. 还可以将老师,学生的信息输出到文件文本中,本代码中没有实现,但并不是很难. 代码如下: #include <stdio.h> #include <stdlib.h> #include <string.h> /* 总链表--

  • C语言实现学生选课系统完整版

    本文实例为大家分享了C语言实现学生选课系统的具体代码,供大家参考,具体内容如下 #include<stdio.h> #include<stdlib.h> int N1,N2,kk1,kk2,kk3; struct couse * head1; struct student * head2; struct couse//课程信息结构体 { int num1; char name1[20]; int score; int nelepeo;//课程已选人数 int Melepeo;//课

  • C语言实现的学生选课系统代码分享

    好久没玩过C语言了,上一次还是在大二的时候...废话不多说,这里有一个C语言实现的学生选课系统代码,分享给大家,具体如下: #include<stdio.h> #include<stdlib.h> int N1,N2,kk1,kk2,kk3; struct couse * head1; struct student * head2; struct couse//课程信息结构体 { int num1; char name1[20]; int score; int nelepeo; /

  • java实现学生选课系统

    本文为大家分享了java实现学生选课系统的具体代码,供大家参考,具体内容如下 案例要求: 学生(学号,姓名,专业,所选课程{<3}) 老师(工号,姓名,所教课程{<3}) 课程(课程号,课程名,学分,教师,已选课学生{<30}) 选课系统代码如下: //teacher public class Teacher { private int id; private String teacherName; private Course[] courses; //构造函数 public Teac

  • MFC实现学生选课系统

    本文实例为大家分享了MFC实现学生选课系统的具体代码,供大家参考,具体内容如下 先上效果图: 主要功能: 输入学号,从数据库中查找学号,若找到相匹配的学号,则显示数据库中姓名.学历.导师,同时将所有可选课程显示出来.输入课程类型和课程名称查询课程进行选课,选课之后相应的选课门数.学分.学费.已选门数都会进行刷新.换个学号输入,选课总人数就会刷新,还有一些小功能就在代码里解释了. 我就只把按键的代码贴出来,完整工程下面有链接. "确认输入"按键: void Cversion02Dlg::

  • Python实战之实现简易的学生选课系统

    一.实验目的 实现学生选课系统 二.实验环境 Python3.6 pymysql(Python连接MySQL) xlrd(操作Excel) 三.程序结构 1.首先运行First_run.py: 功能:创建数据库.表等信息 2.运行seconnd_run.py: 功能: 实现学生选课 3.账号密码.xlsx: 存放学生信息(可以存班级花名册) 如: `` 四.数据库结构 表之间的联系 五.各表功能 student_login:存放学生账号信息(直接导入班级花名册,具体看代码) 字段: s_no:学

  • C语言实现学生考勤系统

    本文实例为大家分享了C语言实现学生考勤系统的具体代码,供大家参考,具体内容如下 项目要求: 学生考勤系统 功能:学生考勤系统应包含各班学生的全部信息.每个学生是一条记录,包括姓名.性别.学号.出勤情况等.本系统可模拟考勤过程,记录考勤结果,并能够在课程结束后按照设定的考勤评分标准自动给出每个学生的考勤分数. 分步实施: (1)初步完成总体设计,搭好框架,确定人机对话界面,确定函数个数:(2)最低要求:建立一个文件,包括同一个班的10个学生的必要信息,能对文件进 行补充.修订.删除. 采用结构体数

  • 基于C语言实现学生管理系统

    本文实例为大家分享了C语言实现学生管理系统的具体代码,供大家参考,具体内容如下 1.目标要求: 1.学生成绩管理系统2.可增.删.改.查.浏览3.数据保存在文件中 2.C语言代码: 文件1:源文件 #include"mylist.h" //菜单设计  void menu(){     //所有文件都同步到文件      printf("-------------[学生管理信息]-------------------\n");     printf("\t\

随机推荐