使用prompt输入一句英文句子和排序方式(升/降),将所有单词按排序方式排序后在网页上输出

 
 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  2. <html xmlns="http://www.w3.org/1999/xhtml"> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  5. <script language="JavaScript" type="text/javascript"> 
  6.  
  7.         function addnew() 
  8.         { 
  9.               c   =   prompt("请输入内容!","");//列   
  10.               way   =   prompt("请输入排序方式(升 1/降 0)!","");//列  
  11.               if   (c   ==   null)    
  12.               {    
  13.                   return false;  
  14.               }    
  15.               else   if   (c.replace(/^\s+|\s+$/g,"")   ==   "")    
  16.               { 
  17.                 alert("输入内容为空!");    
  18.                  return false; 
  19.               } 
  20.             //  alert(c); 
  21.              // alert(way); 
  22.         } 
  23.         addnew(); 
  24.         var arr1 = c.toString().split(" "); 
  25.         if(way==1) 
  26.         { 
  27.             arr1.sort(); 
  28.             for(var i=0;i<arr1.length;i++) 
  29.                 document.write(arr1[i]+"   "); 
  30.         } 
  31.         //(降序) 
  32.         else 
  33.         { 
  34.             arr1.sort(function (a,b){return a>b?-1:1}); 
  35.             for(var i=0;i<arr1.length;i++) 
  36.                 document.write(arr1[i]+"   "); 
  37.         } 
  38.  
  39. </script> 
  40. </body> 
  41.  
  42.  
  43. <title>无标题文档</title> 
  44. </head> 
  45.  
  46. <body> 
  47. </body> 
  48. </html> 

 

本文出自 “阿凡达” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/812996

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来为你展示一下如何使用 8086 汇编语言来实现这个程序。下面的代码使用的是 DOSBox 环境下的汇编器 TASM。 ```assembly .model small .stack 100h .data prompt db "请输入一个字符串:$" digits db 10 dup(0) ; 最多存储 10 个数字字符 newline db 0Dh, 0Ah, "$" output db "排序后的数字字符为:$" len_output equ $-output .data? buffer db 256 dup(0) ; 存储用户输入的字符串 .code mov ax, @data mov ds, ax ; 输出提示信息 mov ah, 9 lea dx, prompt int 21h ; 读取用户输入的字符串 mov ah, 0Ah lea dx, buffer int 21h ; 找数字字符并存储到 digits 数组 lea si, buffer+1 lea di, digits xor cx, cx ; cx 用于记录 digits 数字字符的个数 find_digits: mov al, [si] cmp al, '$' ; 如果当前字符为 '$',则退循环 je sort_digits cmp al, '0' jl not_digit cmp al, '9' jg not_digit mov [di], al inc di inc cx not_digit: inc si jmp find_digits ; 对 digits 数组进行排序 sort_digits: mov bx, cx ; bx 用于记录 digits 数字字符的个数 dec di ; di 此时指向 digits 数组最后一个元素 sort_loop: mov cx, bx dec cx lea si, digits inner_loop: mov al, [si] cmp al, [si+1] ja swap inc si loop inner_loop dec bx jnz sort_loop jmp print_digits ; 交换两个元素的值 swap: xchg [si], [si+1] inc si ret ; 输出排序后的数字字符 print_digits: mov ah, 9 lea dx, output int 21h lea si, digits mov cx, bx ; cx 用于循环计数,初始值为 digits 数字字符的个数 print_loop: mov al, [si] cmp al, '$' ; 如果当前字符为 '$',则退循环 je end_program mov dl, al mov ah, 2 int 21h inc si loop print_loop ; 输出换行符并退程序 end_program: lea dx, newline mov ah, 9 int 21h mov ah, 4Ch int 21h ``` 这个程序首先会输出一个提示信息,然后调用 DOS 系统调用 `ah=0Ah` 读取用户输入的字符串。接着,程序会遍历用户输入的字符串,找的数字字符,并存储到一个名为 `digits` 的数组。这里我们假设最多只会有 10 个数字字符,因此 `digits` 数组的大小为 10 字节。 接下来,程序会对 `digits` 数组进行排序。这里我们使用冒泡排序算法。排序结束后,程序会输出一个提示信息,然后遍历 `digits` 数组,依次输出的数字字符。最后,程序会输出一个换行符并退。 需要注意的是,这个程序使用了 DOS 系统调用。如果你的操作系统不是 DOS,那么你需要使用相应的系统调用来实现相同的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值