• 大小: 6KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-02
  • 语言: C/C++
  • 标签: ef  

资源简介

包括学生姓名,地址,年龄,籍贯等保存到文件,从文件读取。可以自己扩充功能,

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 

#define title “学生成绩管理系统“  /*标题文字*/
#define MAX 10 /* */

#define MENU_MAIN_COUNT 9 /* 主菜单的选项个数*/
#define MENU_SEARCH_COUNT 4 /*查询子菜单的选项个数 */
#define MENU_CALC_COUNT 3 /*统计子菜单的选项个数 */

typedef struct student{
char name[MAX]; /*姓名*/
char  sex[MAX];//性别 
char num[MAX];  /*学号*/
char ad[MAX];  /*籍贯*/
char age[MAX];//年龄 
char dager[MAX];//成绩 

struct student *next;  /*指向下一个学生的指针*/
}stu;

stu *head = NULL; /*定义结构体链表的头指针*/ 

char menu_main[] = 
“|\n“
“| 1 输入学生记录 \n“
“| 2 查看所有学生信息 \n“
//“| 3 \n“
“| 3  编辑学生记录 \n“
“| 4 删除学生记录\n“
//“| 6 \n“
“| 5 保存文件\n“
“| 6 读取文件\n“
“| 7 退出\n“
“|\n“; 

void print_menu_tile(char *title){
printf(“=======================================\n“);
printf(“| %s\n“ title);
printf(“---------------------------------------\n“);
}


void input_record(){
printf(“正在执行input_record函数...\n“);
getch();
}


void create_stu_by_input(stu *pNewStu){
printf(“>请输入学生信息(注:最大长度是10个字符):\n“);
printf(“学号:“); scanf(“%s“pNewStu->num);
printf(“性别:“); scanf(“%s“pNewStu->sex);
printf(“姓名:“); scanf(“%s“pNewStu->name);
printf(“籍贯:“); scanf(“%s“pNewStu->ad);
printf(“年龄:“); scanf(“%s“pNewStu->age);
printf(“成绩:“); scanf(“%s“pNewStu->dager);


}

stu* get_last_student(stu *p){
if(p->next == NULL){
return p;
}
else{
get_last_student(p->next);
}
}

void input_record1(){
void print_menu_main();
char continue_input = ‘N‘;
stu *pLastStu = NULL;
stu *pNewStu = (stu *)malloc(sizeof(stu));
pNewStu->next = NULL;
create_stu_by_input(pNewStu);
if(head == NULL){
head = pNewStu;
}  
else{
pLastStu = get_last_student(head);
pLastStu->next = pNewStu;
}

printf(“继续输入学生信息?(Y 继续, N 返回菜单)“);
getchar();
continue_input = getchar();
if (continue_input == ‘n‘ || continue_input == ‘N‘){
print_menu_main();
}
else{
input_record1();
}
}


/*void show_record(){
printf(“正在执行show_record函数...\n“);
getch();
}*/

 
void print_table_head(){
printf(“+----------+----------+----------+----------+----------+----------+\n“);
printf(“|   学号   |   性别   |  姓名   |  籍贯  |   年龄   |  成绩    |\n“);
printf(“+----------+----------+----------+----------+----------+----------+\n“);
}

void print_table_buttom(){
printf(“+----------+----------+----------+----------+----------+----------+\n“);
}  

void print_table_row(stu *p){
printf(“|%10s|%10s|%10s|%10s|%10s|%10s|\n“p->nump->sexp->namep->adp->agep->dager);
}

void show_record1(){
void print_menu_main();
stu *p = head;
print_table_head();
while(p != NULL) {
print_table_row(p);
p = p->next;
}
print_table_buttom();
printf(“按任意键返回菜单...\n“);
getch();
getchar();
getchar();
p

评论

共有 条评论