| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 389 人关注过本帖
标题:求助一个关于C语言的问题
只看楼主 加入收藏
熊宝宝
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-3-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
求助一个关于C语言的问题
问题描述

请设计一个简单的学生成绩管理系统,要求系统实现以下功能:
学生信息包括学号、姓名、性别、语文、数学、英语。
插入学生信息:
         Insert id name sex x y z 其中的参数分别为学号、姓名、性别、三门课的成绩,成绩为浮点数。
退出程序:
        Quit或者Exit

输入

输入有多行,每行一条指令,指令格式如下:
Insert id name sex x y z
  插入学生信息,分别为学号、姓名、性别和三门课(语文、数学、英语)的成绩。
Quit或者Exit
  输出"Good bye!"后结束程序。

输出

输出有多行,对应命令的输出如下:
Insert id name sex x y z
   插入后在单独的一行中输出"Insert:",然后在第二行中显示学生信息,数据之间用一个空格分开,成绩保留1位小数。
Quit或者Exit
  在单独一行中输出"Good bye!"后结束程序。

输入样例

Insert 0911001 zhangsan  F 87 78 65
Insert 0911003 Lisi  F 77 72 55
Insert 0911002 zhaoliu  F 97 90 55
Insert 0911004 Wangwu  F 68 56 95
Quit

输出样例

Insert:
0911001 zhangsan F 87.0 78.0 65.0
Insert:
0911003 Lisi F 77.0 72.0 55.0
Insert:
0911002 zhaoliu F 97.0 90.0 55.0
Insert:
0911004 Wangwu F 68.0 56.0 95.0
Good bye!


这个该怎么编啊,要用C语言,不要C++,跪求高手
搜索更多相关主题的帖子: C语言 
2010-03-16 21:26
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:20 
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct _StuInfo{
    char id[20];
    char name[20];
    char sex;
    float x;
    float y;
    float z;
    struct _StuInfo *next;
}StuInfo;

#define  MAX 100
int main(void)
{
    char buf[MAX];
    char c;
    StuInfo *head = NULL, *tmp, *cur;
    while (1)
    {
        scanf("%s", buf);
        if (!strcmp(buf, "Quit"))
        {
            break;
        }else if (!strcmp(buf, "Insert"))
        {
            tmp = (StuInfo *)malloc(sizeof(StuInfo));
            tmp->next = NULL;
            scanf("%s", tmp->id);
            scanf("%s", tmp->name);
            while(!((c = getchar()) == 'F' || (c == 'M')));
            tmp->sex = c;
            scanf("%f", &tmp->x);
            scanf("%f", &tmp->y);
            scanf("%f", &tmp->z);
            if (NULL == head)
            {
                head = tmp;
                cur = tmp;
            }else
            {
                cur->next = tmp;
                cur = tmp;
            }
        }
    }
    cur = head;
    while(cur)
    {
        printf("Insert:\n");
        printf("%s ", cur->id);
        printf("%s ", cur->name);
        printf("%c ", cur->sex);
        printf("%.1f ", cur->x);
        printf("%.1f ", cur->y);
        printf("%.1f ", cur->z);
        printf("\n");
        tmp = cur->next;
        free(cur);
        cur = tmp;
    }
    printf("Good bye!\n");
}

2010-03-16 23:18
快速回复:求助一个关于C语言的问题
数据加载中...
 
   



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

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