学生管理系统

用结构体数组以及函数完成:
1.录入你要增加的几个学生,之后输出所有的学生信息
2.删除你要删除的第几个学生,并打印所有的学生信息
3.修改你要修改的第几个学生,并打印所有的学生信息
4.查找你要查找的第几个学生,并打印该的学生信息

find.c文件代码

#include "find.h"                                            
                                                             
void StudentInp(struct student stu[], int n, int *len)       
{                                                            
    int j = *len;                                            
    for(int i = j; i < j + n; i++)                           
    {                                                        
        printf("请输入第%d个学生的信息",i + 1);              
        printf("请输入学生的名字:");                      
        scanf("%s", stu[i].name);                            
                                                             
        printf("请输入学生的学号:");                      
        scanf("%d", &stu[i].id);                             
                                                             
        printf("请输入学生的年龄:");                      
        scanf("%d", &stu[i].age);                            
        (*len)++;                                            
    }                                                        
    show_student(len);                                       
}                                                            
                                                             
void StudentDel(struct student stu[], int n, int *len)       
{                                                            
    for(int i = n - 1; i < *len; i++)                        
    {                                                        
        strcpy(stu[i].name, stu[i + 1].name);                
        stu[i].id = stu[i + 1].id;                           
        stu[i].age = stu[i + 1].age;                         
    }                                                        
    (*len)--;                                                
    show_student(len);                                       
}                                                            
                                                             
void StudentFin(struct student stu[], int n)                 
{                                                            
    printf("姓名:%s\t学号:%d\t年龄:%d\n",\                
            stu[n-1].name, stu[n-1].id, stu[n-1].age);       
}                                                            
                                                             
void StudentCha(struct student stu[], int n, int *len)       
{                                                            
    printf("请输入修改后的名字:");                        
    scanf("%s", stu[n-1].name);                              
                                                             
    printf("请输入修改后的学号:");                        
    scanf("%d", &stu[n-1].id);                               
                                                             
    printf("请输入修改后的年龄:");                        
    scanf("%d", &stu[n-1].age);                              
                                                             
    show_student(len);                                       
}                                                            
                                                             
void show_student(int *len)                                  
{                                                            
    for(int i = 0; i < *len; i++)                            
    {                                                        
        printf("姓名:%s\t学号:%d\t年龄:%d\n",\            
        stu[i].name, stu[i].id, stu[i].age);                 
    }                                                        
}                                                            

find.h文件代码

 #ifndef __FIND_H__                                      
 #define __FIND_H__                                      
                                                         
 #include <stdio.h>                                      
 #include <string.h>                                     
 struct student                                          
 {                                                       
     char name[20];                                      
     int id;                                             
     int age;                                            
 };                                                      
 struct student stu[20];                                 
                                                         
 void StudentInp(struct student stu[], int n, int *len); 
 void StudentDel(struct student stu[], int n, int *len); 
 void StudentFin(struct student stu[], int n);           
 void StudentCha(struct student stu[], int n, int *len); 
 void show_student(int *len);                            
                                                         
                                                         
 #endif                                                  

main.c代码

#include "find.h"
int len = 0;
int main(int argc, const char *argv[])
{
    void StudentInp();
    void StudentDel();
    void StudentFin();
    void StudentCha();
    void show_student();
    int n, i;
A:
    printf("***请选择你的操作***\n");
    printf("***1.增加学生信息***\n");
    printf("***2.删除学生信息***\n");
    printf("***3.修改学生信息***\n");
    printf("***4.查找学生信息***\n");
    printf("*****5.退出界面*****\n");
    scanf("%d",&i);
    switch(i)
    {
    case 1: printf("请输入增加学生信息的个数");
            scanf("%d", &n);
            StudentInp(stu, n, &len);
            goto A;
    case 2: printf("请输入删除学生的位数");
            scanf("%d", &n);
            StudentDel(stu, n, &len);
            goto A;
    case 3: printf("请输入修改学生的位数");
            scanf("%d", &n);
            StudentCha(stu, n, &len);               
            goto A;
    case 4: printf("请输入查找学生的位数");
            scanf("%d", &n);
            StudentFin(stu, n);
            goto A;
    default:printf("没有所选功能,请重新选择");
            goto A;
    case 5: break;

    }

    return 0;
}

 实现效果

***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
1
请输入增加学生信息的个数2
请输入第1个学生的信息请输入学生的名字:21
请输入学生的学号:1
请输入学生的年龄:1
请输入第2个学生的信息请输入学生的名字:22
请输入学生的学号:2
请输入学生的年龄:2
姓名:21	学号:1	年龄:1
姓名:22	学号:2	年龄:2
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
2
请输入删除学生的位数1
姓名:22	学号:2	年龄:2
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
1   
请输入增加学生信息的个数2
请输入第2个学生的信息请输入学生的名字:21
请输入学生的学号:1 
请输入学生的年龄:1
请输入第3个学生的信息请输入学生的名字:23
请输入学生的学号:3
请输入学生的年龄:3
姓名:22	学号:2	年龄:2
姓名:21	学号:1	年龄:1
姓名:23	学号:3	年龄:3
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
3   
请输入修改学生的位数2
请输入修改后的名字:22
请输入修改后的学号:2
请输入修改后的年龄:2
姓名:22	学号:2	年龄:2
姓名:22	学号:2	年龄:2
姓名:23	学号:3	年龄:3
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
3   
请输入修改学生的位数1
请输入修改后的名字:21
请输入修改后的学号:1 
请输入修改后的年龄:1
姓名:21	学号:1	年龄:1
姓名:22	学号:2	年龄:2
姓名:23	学号:3	年龄:3
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
2
请输入删除学生的位数2
姓名:21	学号:1	年龄:1
姓名:23	学号:3	年龄:3
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
4
请输入查找学生的位数2
姓名:23	学号:3	年龄:3
***请选择你的操作***
***1.增加学生信息***
***2.删除学生信息***
***3.修改学生信息***
***4.查找学生信息***
*****5.退出界面*****
5
ubuntu@ubuntu:~/vim/student_inf
  • 26
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值