4位数的数字排序

99028 2005-08-17 03:37:08
一个全由数字组成的四位数,如“0521”、“4222”......
通过什么最简单的方法来进行数字排序,如“0521”排列成“0125”,“4222”排列成“2224”,请教,过来脑子吃紧,想不出来了.....
...全文
260 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangq 2005-08-17
  • 打赏
  • 举报
回复
<script language="vbscript">
dim a(5)
str=2365
for i=1 to len(str)
a(i)=mid(str,i,1)
next
for i=1 to 4
for j=i to 4
if a(i)>a(j) then
dd=a(j)
a(j)=a(i)
a(i)=dd
end if
next
next

str=a(1)+a(2)+a(3)+a(4)
msgbox str
</script>
99028 2005-08-17
  • 打赏
  • 举报
回复
4位是个例子了,要是10位呢,怎办才好
eduxh 2005-08-17
  • 打赏
  • 举报
回复
只有四位也用不着太在意效率了,想怎么排就怎么排咯
ljg2597758 2005-08-17
  • 打赏
  • 举报
回复
冒泡!
计算机程序设计java语言数字排序问题 计算机程序设计java语言数字排序问题全文共46页,当前为第1页。计算机程序设计java语言数字排序问题全文共46页,当前为第1页。 计算机程序设计java语言数字排序问题全文共46页,当前为第1页。 计算机程序设计java语言数字排序问题全文共46页,当前为第1页。 计算机程序设计java语言数字排序问题 题目:已知数据文件IN10.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsValue(),其功能是:求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b中的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把数组b中的数输出到OUT10.DAT文件。 1 jsValue() { int i,thou,hun,ten,data,j; for(i=0;i<300;i++) { thou=a[i]/1000; /*取得四位数的千位数字*/ hun=a[i]%1000/100; /*取得四位数的百位数字*/ ten=a[i]%100/10; /*取得四位数的十位数字*/ data=a[i]%10; /*取得四位数的个位数字*/ if (thou-hun-ten-data>0) { b[cnt]=a[i]; cnt++; } } for(i=0;i位数按从小到大计算机程序设计java语言数字排序问题全文共46页,当前为第2页。计算机程序设计java语言数字排序问题全文共46页,当前为第2页。的顺序进行排序*/ 计算机程序设计java语言数字排序问题全文共46页,当前为第2页。 计算机程序设计java语言数字排序问题全文共46页,当前为第2页。 for(j=i+1;jb[j]) { data=b[i]; b[i]=b[j]; b[j]=data; } } 2 if (thou+data==hun+ten) { b[cnt]=a[i]; cnt++; } } for(j=i+1;jb[j]) { data=b[i]; b[i]=b[j]; b[j]=data; } 3 在文件IN45.DAT中有200个正整数,且每个数均在1 000至9 999之间。函数readDat()的功能是读取这200个数存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按每个数的后三位的大小进行降序排列,将排序后的前10个数存入数组b中,如果数组b中出现后三位相等的数,则对这些数按原始4位数据进行升序排列。最后,调用函数writeDat()把结果bb输出到文件OUT45.DAT中。 void jsSort() { int i,j,data; for(i=0;i<199;i++) /*对数组中的四位数按后三位进行从大到小排序*/ for(j=i+1;j<200;j++) { 计算机程序设计java语言数字排序问题全文共46页,当前为第3页。计算机程序设计java语言数字排序问题全文共46页,当前为第3页。 if (aa[i]%1000数字排序问题全文共46页,当前为第3页。 计算机程序设计java语言数字排序问题全文共46页,当前为第3页。 { data=aa[i]; aa[i]=aa[j]; aa[j]=data; } else if(aa[i]%1000==aa[j]%1000)/*若后三位数相等*/ if (aa[i]>aa[j]) /*则要按原四位数的值进行从小到大排序*/ { data=aa[i]; aa[i]=aa[j]; aa[j]=data; } } for(i=0;i<10;i++) bb[i]=aa[i]; /*将排序后的前10个数存入数组b中*/ } 已知数据文件IN13.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足条件的四位数依次存入数组b中,然后对数组b中的四位数按从大到小的顺序进行排序,最后调用写函数writeDat()把数组b中的数输出到OUT13.DAT文件。 { int i,thou,hun,ten,data,j; for(i=0;i<300;i++) { thou=a[i]/1000; /*取得四位数的千位数字*/ hun=a[i]%1000/100; /*取得四位数

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧