有关Javascript 定义一个函数,接收三个参数,并实现三个变量的排序输出的问题

第一种方法

  1. 使用程序框提示输入三个数字
<script> 
		var a =prompt("请输入第一个数字");
		var b =prompt("请输入第二个数字");
		var c =prompt("请输入第三个数字");	

	function order(a,b,c){ 
		var sum; 
		var str; 
		if(a > b){ 
			sum = a ; a = b ; b = sum ;
		} 
		if(b > c){ 
			sum = b ; b = c ; c = sum;
		} 
		if(a > b) { 
			sum = a ; a = b ; b = sum ; 
		} 
		str = a + "<" + b + "<" + c;
		document.write(a,b,c);
		} 
		order(a , b , c);
</script>
  1. 在这种情况下,我们采用的是 if 来进行判断
  2. 首先将 a 和 b 进行一次判断从而得出结果赋值给 sum
  3. 再将结果 sum 与 b 和 c 进行判断得出结果赋值给再 sum
  4. 最后将 a 和 b 第二次所判断的值进行交换从而得出结论

第二种方法

<script>
	function sortNum(a, b, c) {
		a > b && (a ^= b, b ^= a, a ^= b);
		b > c && (b ^= c, c ^= b, b ^= c);
		a > b && (a ^= b, b ^= a, a ^= b);
		console.log(a, b, c);
	}
</script>

1.如果将最小的数字赋值给a,将最大的数字赋值给c

  1. 比较a与b的大小关系,如果a>b的话,则交换两个数字,则a中存放的就是 a和b 的最小值。
  2. 比较b与c的大小关系,如果b>c的话,则交换两个数字,则b中存放的就是 b和c 的最小值;则c中存放的是3个数字中的最大值。
  3. 最后在比较a与b中的(两个最小值的大小)大小关系,如果a>b的话,则交换两个数字,则a中存放的就是 a和b 的最小值。

第三种方法


	<script>
		function getMax(n1,n2,n3){
				//1、声明变量 max ,表示的是三个数中的最大值,并将n1,先赋值给max
			var max = n1;
				//2、将 n2 与 max 进行比较,如果n2 比 max大,则将 n2 赋值给 max
				//n2>max && max=n2;
			max = (n2>max?n2:max);
				//3、将 n3 与 max 进行比较,如果n3 比 max大,则将 n3 赋值给 max
			n3>max && (max = n3);
				
			return max;
		}
		function testGetMax(){
			var max = getMax(45,65,78); //任意三个数字
			console.log(max);
			alert("最大值为:"+max);
		}
	</script>
————————————————
版权声明:本文为CSDN博主「水苝天萳」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xyyc0909/article/details/78046506
发布了15 篇原创文章 · 获赞 0 · 访问量 99

猜你喜欢

转载自blog.csdn.net/weixin_45806273/article/details/103378231