主题:问大家一道题
chentx
[专家分:0] 发布于 2006-10-31 18:43:00
我才学QB,有一道不会做的题但是对各位大虾来说一定非常简单,希望大家能够帮小弟一个忙。
题目:
用户输入<=10个正整数,先比较大小,按照从大到小的顺序排列输出,然后再按照用户输入时的顺序再次输出。
[em18]
回复列表 (共7个回复)
沙发
chentx [专家分:0] 发布于 2006-10-31 18:43:00
自己的沙发~~
哪位大虾告诉我答案啊?万分感谢。
[em9][em9][em9]
板凳
w1212q [专家分:660] 发布于 2006-11-01 12:44:00
讲公式,,不讲源码
假如 数<=10 然后......
.
.
.
.
结束 假如
'排序
.
.下面的公式我忘了,,对不起了
3 楼
staa [专家分:3690] 发布于 2006-11-03 13:30:00
你用A数组和B数组保存原数,然后对B数组排序,顺序输出B数组,再顺序输出A数组
事实上,A数组并没有任何变动.
简单的解法就是这样了.
如果数据非常多,就要考虑使用数据文件,文件的操作一般是放在后面学的,暂时还用不到它.
4 楼
星月神ming [专家分:180] 发布于 2007-01-06 17:10:00
dim a(10),b(10)
for i=1 to 10
input a(i)
b(i)=a(i)
next
for i=1 to 9
for j= i+1 to 10
if a(i)<a(j) then swap (a(i),a(j))
next j
next i
for i=1 to 10
pritn a(i)
next i
for j=1 to 10
pritn b(i)
next
end
我想用两个数组便可以了,我好久没有看过Qb了,那个交换函数我记不清楚,
5 楼
Matodied [专家分:7560] 发布于 2007-04-24 21:13:00
你的头像怎么也是猫啊!跟我太像了.
CLS
DIM a(10),b(10)
FOR i=1 TO 10:INPUT a(i):b(i)=a(i):NEXT i
FOR i=1 TO 9
FOR j=i+1 TO 10
IF a(i)<a(j) THEN SWAP a(i),a(j)
NEXT j,i
FOR i=1 TO 10:PRINT a(i);:NEXT i
FOR i=1 TO 10:PRINT b(i);:NEXT i
END
6 楼
美味的汽水 [专家分:70] 发布于 2007-04-25 22:02:00
这道题很简单,主要是靠如何比较。
7 楼
xgf0 [专家分:60] 发布于 2007-05-02 09:58:00
dim a(10),b(10)
for i = 1 to 10
input a(i)
b(i)=a(i)
next i
for i = 1 to 9
for j = i+1 to 10
if a(i)<a(j) then swap a(i),a(j)
next j ,i
for i = 1 to 10
print a(i);
next i
for i = 1 to 10
print b(i);
next i
end
这样应该可以吧~
我来回复