• 大小: 0.11M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-14
  • 语言: C/C++
  • 标签: 其他  

资源简介

C语言课程设计学生成绩管理系统(源码文档).rar

资源截图

代码片段和文件信息

#include “stdio.h“   /*标准输入输出函数库*/
#include “stdlib.h“  /*标准函数库*/
#include “string.h“  /*字符串函数库*/
#define HEADER1 “      ----------------------------STUDENT----------------------------------  \n“
#define HEADER2 “       number         name           Comp   Math   Eng    sum     ave    \n“
#define HEADER3 “      ---------------------------------------------------------------------“
#define FORMAT  “            %-10s    %-15s%4d  %5d  %5d  %5d    %.2f \n“
#define DATA  p->data.nump->data.namep->data.cgradep->data.mgradep->data.egradep->data.totalp->data.ave
#define END     “      --------------------------------------------------------------------- \n“

int saveflag=0;  /*是否需要存盘的标志变量*/
/*定义与学生有关的数据结构*/
struct student      /*标记为student*/
{
char num[10];   /*学号*/
char name[15];  /*姓名*/
int cgrade;     /*C语言成绩*/
int mgrade;     /*数学成绩*/
int egrade;     /*英语成绩*/
int total;      /*总分*/
float ave;      /*平均分*/
};

/*定义每条记录或结点的数据结构,标记为:node*/
typedef struct node
{
struct student data;  /*数据域*/
struct node *next;    /*指针域*/
}Node*link;   /*Node为struct node类型的别名,link为struct node类型的指针变量的别名*/


void menu()  /*主菜单*/
{
system(“cls“);   /*清屏*/


printf(“                 The Students‘ Grade Management System \n“);

printf(“     *************************Menu********************************\n“);

printf(“     *  1 input   record             2 delete  record            *\n“);

printf(“     *  3 search  record             4 display record            *\n“);

printf(“     *  5 save    record             6 quit    system            *\n“);

printf(“     *************************************************************\n“);

}



void printheader() /*格式化输出表头*/
{
  printf(HEADER1);
  printf(HEADER2);
  printf(HEADER3);
}
void printdata(Node *pp) /*格式化输出表中数据*/
{
 Node* p;
 p=pp;
 printf(FORMATDATA);

}

void Wrong()  /*输出按键错误信息*/
{
printf(“            input the num is wrong please you input again!\n“);
getchar();
}

void Nofind()  /*输出未查找此学生的信息*/
{
printf(“            Nofind this studen\n“);
getchar();
}


void Disp(link head)  /*显示单链表head中存储的学生记录,内容为student结构中定义的内容*/
{
Node *p;
p=head->next; /*head存储的是单链表中头结点的指针,该头结点没有存储学生信息,指针域指向的后继结点才有学生信息*/

if(!p)  /*p==NULLNUll在stdlib中定义为0*/
{
  printf(“\n=====>Not student record!\n“);
  getchar();
  return;
}

printf(“\n\n“);
printheader(); /*输出表格头部*/

while(p)    /*逐条输出链表中存储的学生信息*/
{
  printdata(p);
  p=p->next;  /*移动到下一个结点*/
  printf(HEADER3);
}
getchar(“\n“);
getchar();

}

/****************************************************************************
作用:用于定位链表中符合要求的节点,在单链表head中查找;并返回指向该节点的指针
参数:findmess[]保存要查找的具体内容; nameornum[]保存按什么查找;    
*****************************************************************************/
Node* Locate(link headchar findmess[]char nameornum[])
{
Node *r;
if(strcmp(nameornum“num“)==0) /*按学号查询*/
{
  r=head->next;
  while(r)
  {
   if(strcmp(r->data.numfindmess)==0) /*若找到findme

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      11488  2009-07-03 01:31  C语言课程设计学生成绩管理系统(源码+文档)\B08050210C语言程序设计.cpp

     文件     208384  2010-12-18 20:05  C语言课程设计学生成绩管理系统(源码+文档)\B08050210C语言课程设计报告书.doc

     目录          0  2010-12-18 20:06  C语言课程设计学生成绩管理系统(源码+文档)

----------- ---------  ---------- -----  ----

               219872                    3


评论

共有 条评论