C语言函数问题

C语言函数问题,第1张

void fun(int arr[],int t)

{

    int i,j;

    for(i=0;i<t;i++)

        for(j=0;j<t-i-1;j++)

            if(arr[j]>arr[j+1])

            {

                int t=arr[j];

                arr[j]=arr[j+1];

                arr[j+1]=t;

            }

}

Dim Arr(k)这个语句你显然是想定义一个动态数组,但Dim这个命令是不支持动态数组的,要定义动态数组要用ReDim命令,即重定义,不过既然是重定义就要在定义之前有一个空数组可以用于重定义,这个空数组是可以用Dim命令来定义的,现给出代码如下Dim arr()

k% = 10

ReDim arr(k)这样写就可以了,数组的元素下标范围为从0到9

sort的参数,为一个函数,那么这个函数接受2个参数,a, b

这个函数在:

a == b 是为0

a > b 时为 1

a < b时 为-1

那么sort在排序的时候,根据冒泡排序,传递2个数进来

对于

arr[0] = "10"

arr[1] = "5"

那么 a=10 b=5,

显然a > b,那么sort根据这个函数返回的结构,就开始排了,

5, 10

那么第一次结束时: 5 10 40 25 1000 1

接下来:然后5 跟 40 25 1000 1排,

完了只有是: 1 10 40 25 1000 5

然后从10 开始,10 - 40 10 <->25 10 <-> 1000 10 <->5

结束后:1 5 40 25 1000 10

再40 : 1 5 10 25 1000 40

再 25 :

再 1000 : 1 5 10 25 40 1000

到此,最后一位就剩一个了,没有啥比较的了,排序完成

sizeof命令中,

一、如果参数是指针变量(无论什么类型的指针)其结果都是4

二、如果参数是是数组,会返回数组所占空间的大小,即:int a[n] ; sizeof(a)=nsizeof(int) ;

三、如果参数是个变量类型,则会返回这个类型所占空间的大小。sizeof(char)=1 sizeof(int)=4 sizeof(double)=8 具体一个变量类型所占的空间大小与机器类型有关系,如32位机long占4字节,而64位机long占8字节。

function f(i,  indexes){

        var j = arrindexOf('d', i);

        if(j == -1) return  indexes;

        indexespush(j);

        return f(++j, indexes);

}

var arr = ["a","b","d","d","c","d","d"];

var  indexes = f(0, []);

consolelog("'d' 出现了:" + indexeslength + "次, 下标为:" + indexes);

Excel有排列组合公式,PERMUT为排列函数,COMBIN为组合函数。

1、电脑打开Excel表格,输入组合函数=COMBIN(50,3)。

2、回车就会得到19600。

3、输入排列公式=PERMUT(50,3)/PERMUT(3,3)。

4、回车就可以了。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12177245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存