在数组中查找指定元素:输入一个正整数(1sn<10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“NotFound”。要求定义和调用函数search(intlist[Jint nint x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1,参数n代表数组list中元素的数量。试编写相应程序。
时间: 2023-05-28 10:02:31 浏览: 95
```
#include <stdio.h>
int search(int list[], int n, int x) { //定义search函数
int i;
for (i = 0; i < n; i++) {
if (list[i] == x) {
return i; //找到了返回下标
}
}
return -1; //没找到返回-1
}
int main() {
int n, x, i;
int a[10]; //定义数组a,最多存放10个数
printf("请输入n:");
scanf("%d", &n);
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
printf("请输入要查找的数x:");
scanf("%d", &x);
int result = search(a, n, x); //调用search函数
if (result == -1) {
printf("NotFound\n");
} else {
printf("%d\n", result);
}
return 0;
}
```
相关问题
C语言编程【问题描述】在数组中查找指定元素:输入一个正整数n(1<n<=10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,如果找到则输出相应的下标,否则输出“no found". 【样例输入】 3 1 2 -6 2 【样例输出】 1
下面是该问题的C语言代码实现:
```c
#include <stdio.h>
int main() {
int n, x;
printf("请输入数组长度n:");
scanf("%d", &n);
int a[n];
printf("请输入%d个整数存入数组a中:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
printf("请输入要查找的整数x:");
scanf("%d", &x);
int flag = 0;
for (int i = 0; i < n; i++) {
if (a[i] == x) {
printf("%d", i);
flag = 1;
break;
}
}
if (flag == 0) {
printf("no found");
}
return 0;
}
```
运行结果如下:
```
请输入数组长度n:3
请输入3个整数存入数组a中:1 2 -6
请输入要查找的整数x:2
1
```
解释:首先输入数组长度n和n个整数存入数组a中,然后输入要查找的整数x。接着,使用一个变量flag来标记是否找到x,初始值为0。遍历数组a,如果找到x,输出当前下标i,将flag设为1,并跳出循环。如果遍历完整个数组a后,flag仍为0,则说明没有找到x,输出"no found"。
在数组中查找指定元素:输入一个正整数n(1<n<10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示Notfound。要求定义和调用函数search(int list[ ], int n, intx),在数组list中查找元素x,若找到则返回相应下标,否则返回-1,参数n代表数组list中元素的数量。试编写相应用C语言编写
以下是用 C 语言编写的程序:
```
#include <stdio.h>
int search(int list[], int n, int x);
int main() {
int n, a[10], x, idx;
printf("请输入正整数 n:");
scanf("%d", &n);
printf("请输入 %d 个整数:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
printf("请输入要查找的整数 x:");
scanf("%d", &x);
idx = search(a, n, x);
if (idx >= 0) {
printf("%d 在数组中的下标是 %d\n", x, idx);
} else {
printf("Notfound\n");
}
return 0;
}
int search(int list[], int n, int x) {
for (int i = 0; i < n; i++) {
if (list[i] == x) {
return i;
}
}
return -1;
}
```
运行程序后,先输入要输入的整数的个数 n 和 n 个整数,然后输入要查找的整数 x。程序会在数组中查找 x 并返回相应的下标,或者显示 Notfound。