| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 493 人关注过本帖
标题:没法了!!请大家看一下什么毛病??
取消只看楼主 加入收藏
三岩
Rank: 1
等 级:新手上路
帖 子:20
专家分:6
注 册:2010-7-19
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
没法了!!请大家看一下什么毛病??
运行后,输出结果前面几个数据正确,后面就错了!!!

#include<stdio.h>
#include<string.h>
void main()
{   void enter(char a[10][5],int b[10]);
    void sort(char a[10][5],int b[10]);        
     
    char str[10][5];
    int num[10];
   
    enter(str,num);
    sort(str,num);
}   
/***************************************************/   
void enter(char a[10][5],int b[10])
{
    int i;
    printf("请输入职工号及职工姓名:\n");
    for(i=0;i<10;i++)
    {
        scanf("%d",&b[i]);
        scanf("%s",a[i]);
    }
}
        
/**************************************************/   
   
void sort(char a[10][5],int b[10])                   /*按职工号进行由小到大排序,并且职工姓名随之调整*/  
{
    char str[5];
    int min,i,j,k,temp;
for(i=0;i<9;i++)
{
    min=b[i];
    for(j=i+1;j<10;j++)
        if(min>b[j])
        {min=b[j];
         k=j;
        }
        temp=b[i];b[i]=b[k];b[k]=temp;
        strcpy(str,a[i]);strcpy(a[i],a[k]);strcpy(a[k],str);
}
for(i=0;i<10;i++)
{
    printf("%-2d  ",b[i]);
    puts(a[i]);
    printf("\n");
}
}
搜索更多相关主题的帖子: 毛病 
2010-08-05 16:23
三岩
Rank: 1
等 级:新手上路
帖 子:20
专家分:6
注 册:2010-7-19
收藏
得分:0 
scanf("%s",a[i]);这样做是绝对可以的!!a[i]也是地址啊!!!第i行的地址!!!
麻烦再看看其他错误!
2010-08-05 19:36
三岩
Rank: 1
等 级:新手上路
帖 子:20
专家分:6
注 册:2010-7-19
收藏
得分:0 
哦,确实是这一个原因。不过我当初输入的数据,第一个数据并非最小值,不过后面依然会出问题!!
很谢谢你!!!!
2010-08-05 20:04
快速回复:没法了!!请大家看一下什么毛病??
数据加载中...
 
   



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

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