标题:新人求助:我编了一个程序但不知哪里出错了请来指明谢谢
只看楼主
南瓜王子
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-4-1
 问题点数:0 回复次数:16 
新人求助:我编了一个程序但不知哪里出错了请来指明谢谢
各位大人你们好,我是一个学C的新手,编了一个程序,但却不知哪里出错了,请各位指明,在这里先说谢谢了

题目:一维数组a[20]进行从大到少排序,然后5行5列输出。

main()
{int a[20] , i , j , t ;
for(i=0 ; i<20 ; i++ )
scanf("%d",&a[ i ]);
for(j=0 ; j<20 ; j++)
{
if(i%5==0)printf("\n");
printf("%12d",a[ i ]);
}
}
搜索更多相关主题的帖子: 指明 新人 
2006-04-01 13:51
ADALE
Rank: 2
等 级:新手上路
威 望:4
帖 子:483
专家分:0
注 册:2005-11-18
得分:0 
以下是引用南瓜王子在2006-4-1 13:51:00的发言:
各位大人你们好,我是一个学C的新手,编了一个程序,但却不知哪里出错了,请各位指明,在这里先说谢谢了

题目:一维数组a[20]进行从大到少排序,然后5行5列输出。

main()
{int a[20] , i , j , t ;
for(i=0 ; i<20 ; i++ )
scanf("%d",&a[ i ]);
for(j=0 ; j<20 ; j++)
{
if(i%5==0)printf("\n");
printf("%12d",a[ i ]); 懂了吗??
}
}


喜欢宁静的平凡生活
2006-04-01 13:58
microbe
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2006-3-29
得分:0 
main()
{int a[20] , i , j ;
for(i=0 ; i<20 ; i++ )
scanf("%d",&a[ i ]);
for(j=0 ; j<20 ; j++)
{
if(j%5==0)printf("\n");
printf("%12d",a[ j ]);
}
}

这样就可以了。从大到小的排序你用“冒泡法”就可以了。

其实女人不会做饭不会干家务都不要紧, 因为可以请人,可是女人不能不会花钱, 因为不能请人帮你花!
2006-04-01 16:18
luo113927
Rank: 1
等 级:新手上路
帖 子:173
专家分:0
注 册:2006-3-15
得分:0 
还没进行排序啦
2006-04-01 16:57
指幕天
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-3-7
得分:0 
main()
{ int a[20],i,j,t;
for(i=0;i<20;i++)
scanf("%d",&a[i]);
for(j=0;j<19;j++)
{ for(i=0;i<20;i++)
{if(a[i]<a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
}
}
for(i=0;i<=19;i++)
{if(i%5==0)printf("\n");
printf("%12d",a[i]);
}
getch();
}
应当这样....

念双燕,难凭音信;指幕天,空识归航!
2006-04-01 17:51
偶成
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2006-3-4
得分:0 
以下是引用指幕天在2006-4-1 17:51:00的发言:
main()
{ int a[20],i,j,t;
for(i=0;i<20;i++)
scanf("%d",&a[i]);
for(j=0;j<19;j++)
{ for(i=0;i<20;i++) 这里错了,应该是for(i=0;i<20-j;i++)
{if(a[i]<a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
}
}
for(i=0;i<=19;i++)
{if(i%5==0)printf("\n");
printf("%12d",a[i]);
}
getch();
}
应当这样....


几年前,丢失了求知欲,游荡在游戏世界中. 而今寻找回了求知欲,希望通过自学充实自己.努力中...
2006-04-01 18:33
iori
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-4-1
得分:0 

我怎么没有找到你从大到小排列的一段语句啊??只是输出数组而已吧


2006-04-01 23:28
南瓜王子
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-4-1
得分:0 
哇~~果然是卧虎藏龙哟,我明白了,也试过了,果然成功了,谢谢你们的帮忙了~~
2006-04-02 18:32
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
得分:0 
呵呵

俺也是个受益者啊

昨天看到"南瓜王子"兄的帖子就开始研究,可是至今看到这些高手的帖才大悟!!!!
谢谢以上的各位朋友啊!!!

我总是冒泡法的运用不对!
老是忘了第二级循环!
这次忘不了了!!

2006-04-02 19:58
angelfight
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-4-2
得分:0 

用了四个for循环,可以减少点吧?这样可以吗?我还没演示

#include"stdio.h"
main()
{
int a[20];
int t;
printf("请输入20个整数:");
for(int i=0;i<=19;i++)
scanf("%d",&a[i]);
printf("\n");
for(int i=0;i<19;i++)
{
if(a[i]<a[i+1])
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
for(int i=0;i<=19;i++)
{
if(i%5==0)printf("\n");
printf("%8d",&a[i]);}
}

2006-04-02 21:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-54368-1-1.html




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

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