A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 永远不会贬值 中级黑马   /  2014-5-27 00:17  /  1133 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include <stdio.h>

struct student
{
    int num;
    char *name;
};

void order(struct student a[],int n);

int main ()
{
    struct student stu[10];
   
    for(int i=0;i<10;i++)
    {
        printf("请输入学号和学生姓名,用“,”号进行隔开:\n");
        scanf("%d,%s",&stu[i].num,&stu[i].name);
    }
   
    order(stu,10);
   
    printf("排序之后的结果为:\n");
   
    for(int i=0;i<10;i++)
    {
        printf("%d\t%s\n",stu[i].num,stu[i].name);
    }
   
    int number;
    printf("请输入想要查找的学号:");
    scanf("%d",&number);
   
    for(int i=0;i<10;i++)
    {
        if(stu[i].num==number)
        {
            printf("学生的姓名:%s",stu[i].name);
        }
    }
   
    return 0;
}


void order(struct student a[],int n)
{
   
    struct student temp;
   
    for(int i=0;i<n-1;i++)
    {
        for(int j=i+1;j<n;j++)
        {
            if(a[i].num>a[j].num)
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
    }
}

5 个回复

正序浏览
永远不会贬值 发表于 2014-5-27 11:21
总是到输入完后,就报错了, 不知道哪里不太对。

额,把报的错写出来才好看啊!
回复 使用道具 举报
是不是你写程序时候输入法有用的地方是中文,能把报的错也发过来吗?
回复 使用道具 举报
总是到输入完后,就报错了, 不知道哪里不太对。
回复 使用道具 举报
楼主童鞋,请把要改的要求说下哈。
回复 使用道具 举报
请问一下你的目的是干什么?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马