| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2838 人关注过本帖
标题:结构体怎么输出对应的值
取消只看楼主 加入收藏
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:2 
结构体怎么输出对应的值
程序代码:
#include<stdio.h>
#include <string.h>

struct student
{
char num[20];
char name[20];

};
void main()
{
    struct student stu[20]={
    {"201060001","Zhao"},
    {"201060002","Qian"},
    {"201060009","Jiang"},
    {"201060003","Sun"},
    {"201060005","Wang"},
    {"201060006","Zhou"},
    {"201060004","Li"},
    {"201060008","Zhen"},
    {"201060007","Wu"},
    {"201060010","Shen"}};
    char a[20][300],temp[300];
    int i,j;
    for(i=0;i<10;i++)
        for(j=i+1;j<10;j++)
        {
            if(strcmp(stu[i].num,stu[j].num)>0)
            {
                strcpy(temp,stu[i].num);
                strcpy(stu[i].num,stu[j].num);
                strcpy(stu[j].num,temp);
            }
         }
     printf("*******************************\n");
     printf("Results:\n\n");
    for(i=0;i<10;i++)
    {
        puts(stu[i].num);
        printf("\n");
    }
}
请问怎么将对应的姓名输出来啊?
搜索更多相关主题的帖子: 结构体 
2011-05-30 12:54
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
收藏
得分:0 
回复 2楼 Pirelo
直接加puts输出的不是对应的名字。
2011-05-30 18:06
宇智波曌
Rank: 2
等 级:论坛游民
帖 子:98
专家分:15
注 册:2011-4-17
收藏
得分:0 
回复 7楼 pangping
这个问题我已解决,不过新的问题又出来了,下面这个程序怎么改成调用函数。我调用的时候没有值输出,好纠结啊!
程序代码:
[color=#0000FF]#include<stdio.h>
#include <string.h>

struct staff
{
char num[20];
char name[20];

};
void fac(struct staff *p)
{

 int i;

 char x[20];

 for(i=0;i<10;i++)
    {
   
     if(strcmp(x,p->num)==0)
     puts(p->name);
    }
}
void main()
{
    struct staff sta[10]={
    {"201060010","Shen"},
    {"201060002","Qian"},
    {"201060009","Jiang"},
    {"201060003","Sun"},
    {"201060005","Wang"},
    {"201060006","Zhou"},
    {"201060004","Li"},
    {"201060008","Zhen"},
    {"201060007","Wu"},
    {"201060001","Zhao"}
    };
    struct staff temp[20];
    struct staff *p;
     char x[20];
    int i;
    for(i=0;i<10;i++)
    {   
        printf("%s      %s\n",sta[i].num,sta[i].name);
    }
    printf("====================================================\n");
    printf("查找ID:\n");
    gets(x);
    p=&sta[i];
    fac(sta);
    puts(sta[i].name);
  printf("====================================================\n");
   
}

[/color]

[ 本帖最后由 宇智波曌 于 2011-5-31 08:52 编辑 ]
2011-05-31 08:27
快速回复:结构体怎么输出对应的值
数据加载中...
 
   



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

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