程序26:给一个不多于5位的正整数。要求:一、求它是几位数,二、逆序打印出各位数字。 var test=456; var arr=[]; arr[0]=test%10; arr[1]=parseInt(test%100/10); arr[2]=parseInt(test%1000/100); arr[3]=parseInt(test%10000/1000); arr[4]=parseInt(test/10000); for(var i=4;i>=0;i–){ if(arr[i]==0){ arr.splice(i,1); } } console.log(‘给定数字是‘+arr.length+‘位数‘); console.log(‘给定数字逆序输出为‘+arr); 结果 给定数字是3位数 给定数字逆序输出为6,5,4 程序27:一个五位数,判断它是不是回文数。即个位与万位相同,十位与千位相同。 var test=13431; if(parseInt(test/10000)==test%10 && parseInt(test%10000/1000)==parseInt(test%100/10)){ console.log(test+‘是回文数‘); }else{ console.log(test+‘不是回文数‘); } 结果 13431是回文数 程序28:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母 var str=‘Friday‘; var arr=[‘Sunday‘,‘Monday‘,‘Tuesday‘,‘Wednesday‘,‘Thursday‘,‘Friday‘,‘Saturday‘]; for(var i=0;i<7;i++){ if(arr[i]==str){ console.log(arr[i]); } } 结果 Friday 程序29:对十个数进行排序 var test=[123,43,52,543,64,547,7,532,252,256]; for(var i=0;i<test.length-1;i++){ for(var j=0;j<test.length-i-1;j++){ if(Number(test[j])<Number(test[j+1])){//用Number()是因为按字符串比较有问题 var tmp=test[j]; test[j]=test[j+1]; test[j+1]=tmp; } } } console.log(‘由大到小排序为‘+test); 结果 由大到小排序为547,543,532,256,252,123,64,52,43,7 程序30:求一个3*3矩阵对角线元素之和 var test=[123,43,52,543,64,547,532,252,256]; var arr=[]; var n=3; for(var i=1;i<=n;i++){ for(var j=1;j<=n;j++){ if(i==j||i+j==n+1){ arr.push(test[(i-1)*n+j-1]); } } } for(var k=0,sum=0;k<arr.length;k++){ sum+=arr[k]; } console.log(‘这个‘+n+‘*‘+n+‘矩阵对角线元素之和是‘+sum); 结果 这个3*3矩阵对角线元素之和是1027