| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 633 人关注过本帖
标题:错误出在那里(函数调用求冒泡排序)
只看楼主 加入收藏
jh8792123
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-7-16
收藏
 问题点数:0 回复次数:3 
错误出在那里(函数调用求冒泡排序)

#include<stdio.h>
void main()
{
int n,i;
float a[100];
printf("请输入N个数\n");
scanf("%d",&n);
printf("请输入%d个数\n",n);

for(i=0;i<n;i++)
scanf("%f",&a[i]);
for(i=0;i<n;i++)
printf("%f ",a[i]);
printf("下面对N个数进行冒泡排序\n");

void float fact(float *array, int n);
fact(a,n);

for(i=0;i<n;i++)
printf("%f ",a[i]);
}


void float fact(float *array, int n)


{
int i,j,k=n;
float *m;
for(i=0;i<k;i++)
{
for(j=0;j<n-1;j++)
{
if(*array>*(array+1))
{
*m=*(array+1);
*(array+1)=*array;
*array=*m;
}
}
n--;

}

}

搜索更多相关主题的帖子: 函数 float 冒泡 void fact 
2007-08-16 09:37
noah_shi
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2007-8-14
收藏
得分:0 

错误点:
1。void float fact(float *array, int n); //返回值到底是void 还是float?只能有一个!
2。float *m; //未初始化指针!
3。算法实现就是错的!改成如下:


void fact(float *array, int n)
{
int i,j;
float a = 0;
float *m = &a;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(*(array+i)>*(array+j))
{
*m=*(array+j);
*(array+j)=*(array+i);
*(array+i)=*m;
}
}
}
}



2007-08-16 11:16
cinki
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2007-8-16
收藏
得分:0 
测试未果...LZ能把调试结果发上来不   void float fact(float *array, int n);感觉重复定义了吧

[此贴子已经被作者于2007-8-16 11:20:18编辑过]



怀才就像怀孕,时间长了才能看出来...
2007-08-16 11:19
jh8792123
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-7-16
收藏
得分:0 
特别感谢 我知道了 !!!!!

2007-08-16 11:54
快速回复:错误出在那里(函数调用求冒泡排序)
数据加载中...
 
   



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

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