| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1598 人关注过本帖
标题:Code::Blocks编译学生管理系统,为什么运行不了,求解
取消只看楼主 加入收藏
wulizicodean
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2017-12-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
Code::Blocks编译学生管理系统,为什么运行不了,求解
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#include <string.h>
#define LEN 15
#define MAX 100
struct student
{
    int no;
    char name[50];
    int score_yu;
    int score_sx;
}   stu[MAX];
int count=0;
void show_menu()
{
    printf("\t\t*************学生管理系统************\n");
    printf("\n\n\t\t\t        1 添加记录\n");
    printf("\t\t\t        2 显示记录\n");
    printf("\t\t\t        3 修改记录\n");
    printf("\t\t\t        4 删除记录\n");
    printf("\t\t\t        5 查找记录\n");
    printf("\t\t\t        6 排序记录\n");
    printf("\t\t\t        7 退出系统\n");
    printf("\n\n\t\t************************************\n");
    printf("please choice 1-7: ");
}



void sort()

{
    int i,j,*p,*q,s;
    char temp[10];
    for(i=0; i<50-1; i++)
    {
        for(j=50-1; j>i; j--)
            if(strcmp(stu[j-1].no,stu[j].no)>0)
            {
                strcpy(temp,stu[j-1].no);
                strcpy(stu[j-1].no,stu[j].no);
                strcpy(stu[j].no,temp);
                strcpy(temp,stu[j-1].name);
                strcpy(stu[j-1].name,stu[j].name);
                strcpy(stu[j].name,temp);


            }
    }
}
void del()
{
    int i,j,flag=0;
    char s1[LEN+1];
    printf("请输入要删除学生的学号:\n");
    scanf("%s",s1);
    for(i=0; i<50; i++)
        if(strcmp(stu[i].no,s1)==0)
        {
            flag=1;
            for(j=i; j<50-1; j++)
                stu[j]=stu[j+1];
        }
    if(flag==0)
        printf("该学号不存在!\n");
    if(flag==1)
    {
        printf("删除成功,显示结果请选择菜单6\n");
        i--;
    }
}
int find_insert_point()
{
    int i;
    for(i=0; i<MAX; i++)
    {
        if(stu[i].no==0) break;
    }
    return i;
}
void add()
{
    while(1)
    {
        if(count>=MAX)
        {
            printf("已超出系统容量,不能再添加");
            return;
        }
        int i=find_insert_point();
        printf("学号: ");
        scanf("%d",&stu[i].no);
        getchar();
        printf("姓名: ");
        scanf("%s",stu[i].name);
        getchar();
        printf("语文:");
        scanf("%d",&stu[i].score_yu);
        getchar();
        printf("数学:");
        scanf("%d",&stu[i].score_sx);
        getchar();
        count++;
        memset(&stu[0],0,sizeof(stu));
        printf("是否继续添加(Y/N)");
        char c=getchar();
        count++;

        if(c=='N'||c=='n') break;
    }
}
void show()
{
    printf("学号\t姓名\t语文\t数学\t总分\n");
    int i;
    for(i=0; i<MAX; i++)
    {
        if(stu[i].no!=0)
        {
            printf("%d\t%s%d%d",stu[i].no,stu[i].name,stu[i].score_yu,stu[i].score_sx,stu[i].score_yu+stu[i].score_sx);
        }
    }
}
void find()
{
    printf("查找学生的记录\n");
    printf("请输入学生的姓名:");
    int i;
    char name[50];
    scanf("%s",name);
    for(i=0; i<MAX; i++)
    {
        if(strcmp(stu[i].name,name)==0)
        {
            printf("%d\t%s%d%d",stu[i].no,stu[i].name,stu[i].score_yu,stu[i].score_sx,stu[i].score_yu+stu[i].score_sx);
        }
    }
}
void modify_score()
{
    printf("修改学生记录\n");
    printf("请输入学生姓名: ");
    char name[50];
    int i;
    scanf("%s",name);
    int flag=0;
    for(i=0; i<MAX; i++)
    {
        if(strcmp(stu[i].name,name)==0)
        {
            printf("%d\t%s\t%d\t%d\t\n",stu[i].no,stu[i].name,stu[i].score_yu,stu[i].score_sx,stu[i].score_yu+stu[i].score_sx);
            flag=1;
            break;
        }
    }
    if(!flag)
    {
        printf("查找不到学生记录\n");
        return;
    }
    printf("姓名: ");
    scanf("%s",stu[i].name);
    getchar();
    printf("语文:");
    scanf("%d",&stu[i].score_yu);
    getchar();
    printf("数学:");
    scanf("%d",&stu[i].score_sx);
    printf("修改成功\n");

}
int main()
{
    memset(&stu[0],0,sizeof(stu));
    while(1)
    {
        show_menu();
        int chioce;
        scanf("%d",chioce);
        {
            printf("Game over\n");
            break;
        }
        switch(chioce)
        {
        case 1:
        {
            add();
            break;
        }
        case 2:
        {
            show();
            break;
        }
        case 3:
        {
            modify_score();
            break;
        }
        case 4:
        {
            del();
            break;
        }
        case 5:
        {
            find();
            break;
        }
        case 6:
        {
            sort();
            break;
        }
        case 7:
        {
            break;
        }
        default:
            printf("输出有误!\n");
        }
        return 0;
    }

}

搜索更多相关主题的帖子: stu int name printf scanf 
2017-12-16 16:48
wulizicodean
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2017-12-16
收藏
得分:0 
回复 2楼 吹水佬
可运行但选择菜单时停止工作出现这个错误Process terminated with status -1073741510 (0 minute(s), 23 second(s))
 
2017-12-16 16:56
wulizicodean
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2017-12-16
收藏
得分:0 
哪里有错请求大神指点,急
2017-12-16 17:21
wulizicodean
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2017-12-16
收藏
得分:0 
谢谢
2017-12-17 22:06
快速回复:Code::Blocks编译学生管理系统,为什么运行不了,求解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025180 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved