| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 567 人关注过本帖
标题:[求助]按照数组内整数的各项合排序~
取消只看楼主 加入收藏
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
收藏
 问题点数:0 回复次数:3 
[求助]按照数组内整数的各项合排序~

对给出的整数组,按照数组中整数的各位和的大小来排序.

#include<iostream.h>
#include<iomanip.h>

int qsort(int *array[],int len);

void main()
{
int a[]={12,32,42,51,8,16,51,21,19,9};
int b[10],s[10],*a1[10]; //*a1[]是存放a[]中每项整数的合的数组
int i,j;

for(i=0;i<10;i++)
*a1[i]=a[i]; //a1[]为地址数组,内容为a[]的整数

for(i=0;i<10;i++)
{
while(a[i]!=0)
{
b[j]=a[i]%10;
a[i]=a[i]/10;
j++;
}
for(;j>=0;--j)
s[i]+=b[j]; //s[]求出每项a[]整数的合的值
*a1[i]=s[i];
}
qsort(*a1[],10);

for(i=0;i<10;i++)
cout<<setw(5)<<a1[i];
cout<<endl;

}

int qsort(int *array[],int len)
{
int temp,*temp1;
for(int i=0;i<len-1;i++)
if(*array[i]>*array[i+1])
{
temp=*array[i];*array[i]=*array[i+1];*array[i+1]=temp; //交换值
temp1=array[i];array[i]=array[i+1];array[i+1]=temp1; //交换地址
}
return 0;
}

我的想法是:数组a[]里的每项整数作为数组s[]的地址,s[]就是数组a每项整数的各位数之合的数组.即*a1[]中,a1[]里内容与a[]一样,*a1[]内容与s[]一样,写出上面程序,调试红色处出错,搞不定了,帮忙~

另外,有朋友有其他想法的也说下,不必写代码.

搜索更多相关主题的帖子: 整数 
2007-10-16 17:32
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
收藏
得分:0 

thank you your answer.i can carefully study it.


★孤独的人是可耻的★
2007-10-16 21:54
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
收藏
得分:0 
有没有朋友能给个用指针知识解答的算法??

BZ给的方法有些地方搞不懂,初学者

★孤独的人是可耻的★
2007-10-16 22:39
六道
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2007-9-28
收藏
得分:0 

楼下的朋友给个简单点的算法啊~


★孤独的人是可耻的★
2007-10-21 15:08
快速回复:[求助]按照数组内整数的各项合排序~
数据加载中...
 
   



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

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