c语言本关任务:在一长度为 n(n<=10) 的组数据中,查找任意输入的一个数据 x ,并输出它的位置,若找不到,则输出“查无此数”。
时间: 2024-11-29 07:36:57 浏览: 5
C语言实现存放任意数据类型的线性表和链表
在C语言中,你可以通过遍历数组的方式来解决这个任务。以下是一个简单的函数示例,它实现了这样的功能:
```c
#include <stdio.h>
int find_position(int arr[], int n, int x) {
// 遍历数组,从第一个元素开始
for (int i = 0; i < n; i++) {
// 如果当前元素等于x,返回其索引
if (arr[i] == x)
return i;
}
// 如果遍历完整个数组都没有找到x,返回-1表示"查无此数"
return -1;
}
int main() {
int data[] = {1, 2, 5, 7, 9}; // 假设这是一个长度为5的数组
int n = sizeof(data) / sizeof(data[0]);
int input;
printf("请输入要查找的数字: ");
scanf("%d", &input);
int position = find_position(data, n, input);
if (position != -1)
printf("数字 %d 的位置是 %d\n", input, position + 1); // 注意数组索引从0开始计数
else
printf("查无此数.\n");
return 0;
}
```
在这个程序中,用户首先输入他们想要查找的数字`input`,然后`find_position`函数会检查`data`数组中是否存在这个数字,并返回对应的索引。如果找不到,函数返回-1,主函数中则输出"查无此数"。
阅读全文