| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 427 人关注过本帖
标题:请帮我看看错误在哪?
只看楼主 加入收藏
TRUTH_2015
Rank: 2
等 级:论坛游民
帖 子:37
专家分:20
注 册:2015-5-13
结帖率:71.43%
收藏
 问题点数:0 回复次数:2 
请帮我看看错误在哪?
图片附件: 游客没有浏览图片的权限,请 登录注册

#include<stdio.h>
#include<malloc.h>
#include<string.h>
typedef struct room //结构体定义
{
 char a[100];//存储姓名
 int ID;     //存储学号
 int num;    //存储房号
 int length;
}room;

void creat(room *p) //对宿舍人员的信息输入
{
     int i,n;
  printf("请输入人数:\n");
  scanf("%d",&n);
  for(i=1;i<=n;i++)
  {
   printf("请输入第%d个人的信息,请按姓名、学号、房号输入:\n",i);
   scanf("%s",p[i].a);
   scanf("%d",&p[i].ID);
   scanf("%d",&p[i].num);
  }
  p[0].length=n;
}

void xm_order(room *p)//对姓名排序
{
  int i,j;
  room temp;
  for(i=1;i<p[0].length;i++)
  {
    for(j=i+1;j<=p[0].length;j++)
    {
      if(strcmp(p[i].a,p[j].a)>0)
      {
        temp=p[i];
        p[i]=p[j];
        p[j]=temp;
      }
    }
  }
}

void xm_search(room *p)//按姓名进行查找
{
  char xm[100];
  int low,high,mid;
  printf("请输入查询人的姓名:\n");
  scanf("%s",xm);
  for(low=1,high=p[0].length;high>=low;)
  {
    mid=(low+high)/2;
    if(strcmp(p[mid].a,xm)>0)
      high=mid-1;
    else if(strcmp(p[mid].a,xm)<0)
        low=mid+1;
    else if(strcmp(p[mid].a,xm)==0)
    {
        printf("%s %d %d\n",p[mid].a,p[mid].ID,p[mid].num);break;
    }
  }
  if(high<low)
      printf("无此人员并检查输入\n");
}


void xh_order(room *p)//对学号排序
{
   int i,j;
   room temp;
  for(i=1;i<p[0].length;i++)
  {
    for(j=i+1;j<=p[0].length;j++)
    {
      if(p[i].ID>p[j].ID)
      {
        temp=p[i];
        p[i]=p[j];
        p[j]=temp;
      }
    }
  }
}

void xh_search(room *p)//按学号进行查找
{
  int xh;
  int low,high,mid;
  printf("请输入查询人的学号:\n");
  scanf("%d",&xh);
  for(low=1,high=p[0].length;high>=low;)
  {
    mid=(low+high)/2;
    if(p[mid].ID>xh)
      high=mid-1;
    else if(p[mid].ID<xh)
        low=mid+1;
    else if(p[mid].ID==xh)
    {
        printf("%s %d %d\n",p[mid].a,p[mid].ID,p[mid].num);break;
    }
}
int main()
{
 room *s;
 s=(room*)malloc(100*sizeof(room));
 creat(s);
 xm_order(s);
 xm_search(s);
 xh_order(s);
 xh_search(s);
 return 0;
}
搜索更多相关主题的帖子: include 结构体 信息 姓名 
2015-06-25 21:45
TRUTH_2015
Rank: 2
等 级:论坛游民
帖 子:37
专家分:20
注 册:2015-5-13
收藏
得分:0 
有人吗?
2015-06-25 21:55
TRUTH_2015
Rank: 2
等 级:论坛游民
帖 子:37
专家分:20
注 册:2015-5-13
收藏
得分:0 
谢谢大家为我思考了,我已经知道了错误了。
2015-06-25 22:42
快速回复:请帮我看看错误在哪?
数据加载中...
 
   



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

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