数组作为参数

来源:互联网 发布:java wait await 区别 编辑:程序博客网 时间:2024/06/05 07:27

函数参数的传递说到底是地址的传递,而数组的数组名就是可以作为这个数组的地址,所以当函数需要用到数组做参数时,只需用数组名即可,例如putin(a);而在调用的函数中,则要加上括号例如int out(int v[ ]);

下面这个程序涉及到这个:

# include<stdio.h>
# include<stdlib.h>
typedef struct num
{
    int data;
    struct num *next;
}*number;
number del(int a,int v[])
{
    number head,p,q;
    int i,j,k;
    head = (number)malloc(sizeof(struct num));
    p = head;
    for (i = 0;i<10;i++)
    {
        q = (number)malloc(sizeof(struct num));
        p->data = v[i];
        p->next = q;
        p = q;
    }
    q = head;
    for (j = 0;j < a-1;j++)
    {
        q = q->next;
    }
    q -> next = q ->next->next;
    q = head;
    for (i = 0;i < 9;i++)
    {
        printf ("%d\n",q->data);
        q = q->next;
    }
    return head;


}
int judge(int x,int v[])
{
    int i,j,k;
    for (i = 0;i < 10;i++)
    {
        if (v[i] == x)
            break;
    }
    if (i == 10)
        return 0;
    else
    {
        del(i,v);
        return 1;
    }
}
int main()
{
    int a[10];
    int i,j,k;
    for (i = 0;i < 10;i++)
    {
        scanf ("%d",&a[i]);
    }
    printf ("请输入你要查找的数字\n");
    scanf ("%d",&j);
    judge(j,a);




}

原创粉丝点击