方法一:#include<stdio.h>nt getIndex(int arr[5], int value){ int i; int index; for (i = 0; i < 5; i++) { if (arr[i] == value) { index = i; break; } else index = -1; } return index;}int main(){int arr[5]{ 22,12,19,38,17 }; int value = 38; int index = getIndex(arr, value); if (index != -1) { printf("%d在数组中存在,下标为:%d\n", value, index); } else { printf("%d在数组中不存在\n", value); } return 0;}方法二:#include<stdio.h>nt getIndex(int arr[5], int value){int i;int index;for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++){if (arr[i] == value){index = i;break;}elseindex = -1;}return index;}int main(){int arr[5]{ 22,12,19,38,17 };int value = 38;int index = getIndex(arr, value);if (index != -1){printf("%d在数组中存在,下标为:%d\n", value, index);}else{printf("%d在数组中不存在\n", value);}return 0;}
1 回答
QLoveyourself
TA贡献3条经验 获得超1个赞
sizeof(arr) / sizeof(arr[0])的问题 不能在自定义函数里面用sizeof求数组的长度 你可以在你自定义函数里面做个 int a =sizeof(arr) / sizeof(arr[0]); 然后printf("%d",a);自检一下看看在自定义函数里面求数组长度是多少
- 1 回答
- 0 关注
- 761 浏览
添加回答
举报
0/150
提交
取消