数组如何在函数中调用

主函数

#include <stdio.h>
int search(int key, int a[], int length);
int main(void) {
    int a[] = { 2,4,6,7,1,3,5,9,11,13,23,14,32 };
    int x;
    int loc;
    printf("请输入一个数字:");
    scanf_s("%d", &x);
    loc = search(x, a, sizeof(a) / sizeof(a[0]));//sizeof计算数组单元个数
    if (loc != -1) {
        printf("%d在第%d个位置上\n",x,loc);
    }
    else {
        printf("%d不存在\n",x);
    }
    return 0;
}
//主函数做个循环对数组a进行遍历 每次拿出一个单元来判断是否相等
//如果相等则ret=i返回ret 并退出循环
//如果找了整个数组没找到则返回ret原来的值-1
int search(int key, int a[], int length) {
    int ret = 1;
    int i;
    for (i = 0; i < length; i++) {
        if (a[i] == key) {
            ret = i;
            break;
        }
    }
    return ret;
}
//数组作为函数参数时,往往必须用另一个参数来传入数组大小


#include <stdio.h>
int search(int key, int a[], int length);
int main(void) {
    int a[] = { 2,4,6,7,1,3,5,9,11,13,23,14,32 };
    int x;
    int loc;
    printf("请输入一个数字:");
    scanf_s("%d", &x);
    loc = search(x, a, sizeof(a) / sizeof(a[0]));//sizeof计算数组单元个数
    if (loc != -1) {
        printf("%d在第%d个位置上\n",x,loc);
    }
    else {
        printf("%d不存在\n",x);
    }
    return 0;
}
//主函数做个循环对数组a进行遍历 每次拿出一个单元来判断是否相等
//如果相等则ret=i返回ret 并退出循环
//如果找了整个数组没找到则返回ret原来的值-1
int search(int key, int a[], int length) {
    int ret = 1;
    int i;
    for (i = 0; i < length; i++) {
        if (a[i] == key) {
            ret = i;
            break;
        }
    }
    return ret;
}
//数组作为函数参数时,往往必须用另一个参数来传入数组大小

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值