由c语言改编的jS代码,报错:main is not defind。来位大神帮我根据提示,修改一下我的代码,给出正确代码及运行结果截图,(刚接触js语言,很多格式不懂。)
var a;
var a=new Array(10);
var x;
var y;
// 生成一个随机数组
function random_array(n) {
srand(time(NULL));
for (var i = 0; i < n; i++) {
a[i] = rand() % 100;
}
}
// 打印数组
function print_array(a)
{
console.log(a);
}
// 返回数组最大值
// TODO: 修改并实现所需功能
function max_element(a)
{ var max=a[0];
for (var i = 0; i < a.length; i++)
if(a[i]>max)
max=a[i];
return 0;
}
// 对数组按照递增顺序排序
// TODO: 修改并实现所需功能
function sort_ascending(a)
{
var i, j, t ;
for(i=0 ; i<a.length ; i++)
for(j=0 ; j<a.length-i ;j++)
if(a[ i ]>a[ j ]) {t=a[ i ];a[ i ]=a[ j ];a[ j ]=t;}
}
// 根据用户传入的比较函数comp对数组进行排序,
// 如果comp(a, b) > 0,则a排在后面
// TODO: 修改并实现所需功能
function sort(a, comp)
{ var i, j, t ;
for(i=0 ; i<a.length; i++)
for(j=0 ; j<a.length-i ;j++)
if(comp(a[i],a[j])>0 ) {t=a[ i ];a[ i ]=a[ j ];a[ j ]=t;}
}
// 比较函数
function greater_than(x,y)
{
return x - y;
}
function less_than(x, y)
{
return y - x;
}
main()
{
var a=new Array(10);
random_array(a);
print_array(a);
console.log(max_element(a));
sort_ascending(a);
console.log(a);
sort(a, greater_than);
print_array(a);
sort(a,less_than);
print_array(a);
return 0;
}
在main前面加function,function main
<!DOCTYPE html>
<body>
<script>
// 生成一个随机数组
function random_array(n,min=0,max=100) {
for (var i = 0; i < n.length; i++) {
n[i] = Math.floor(Math.random() * (max - min + 1)) + min;
}
}
// 打印数组
function print_array(a) {
console.log(a);
}
// 返回数组最大值
// TODO: 修改并实现所需功能
function max_element(a) {
var max = a[0];
for (var i = 0; i < a.length; i++)
if (a[i] > max)
max = a[i];
return 0;
}
// 对数组按照递增顺序排序
// TODO: 修改并实现所需功能
function sort_ascending(a) {
var i, j, t;
for (i = 0; i < a.length; i++)
for (j = 0; j < a.length - i; j++)
if (a[i] > a[j]) { t = a[i]; a[i] = a[j]; a[j] = t; }
}
// 根据用户传入的比较函数comp对数组进行排序,
// 如果comp(a, b) > 0,则a排在后面
// TODO: 修改并实现所需功能
function sort(a, comp) {
var i, j, t;
for (i = 0; i < a.length; i++)
for (j = 0; j < a.length - i; j++)
if (comp(a[i], a[j]) > 0) { t = a[i]; a[i] = a[j]; a[j] = t; }
}
// 比较函数
function greater_than(x, y) {
return x - y;
}
function less_than(x, y) {
return y - x;
}
function main() {
var a = new Array(10);
random_array(a);
print_array(a);
console.log(max_element(a));
sort_ascending(a);
console.log(a);
sort(a, greater_than);
print_array(a);
sort(a, less_than);
print_array(a);
return 0;
}
main();
</script>
</body>
</html>
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!