c语言15个数存放在一维数组中,输入一个数,要求找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“No existence”。
时间: 2024-02-13 09:04:48 浏览: 33
可以通过遍历数组的方式查找该数是否在数组中出现,若出现则返回该数的下标,否则返回“No existence”。下面是相应的 C 代码实现:
```c
#include <stdio.h>
int main() {
int arr[15] = {2, 5, 6, 7, 8, 9, 12, 15, 18, 20, 25, 30, 35, 40, 45};
int num, i;
printf("请输入一个数:");
scanf("%d", &num);
for (i = 0; i < 15; i++) {
if (arr[i] == num) {
printf("%d 是数组中第 %d 个元素\n", num, i+1);
return 0;
}
}
printf("No existence\n");
return 0;
}
```
在这个程序中,我们假设数组已经有序,如果数组无序,则需要先进行排序再进行查找,时间复杂度为 O(nlogn)。
相关问题
C语言从键盘上任意输入一个一维数组,找出这个一维数组中最大的数
你好!非常感谢您使用ChitGPT进行对话!对于您的问题,您可以使用以下C语言代码来找到输入数组中的最大值:
```c
#include <stdio.h>
#define MAX_SIZE 100 //假设输入的数组元素个数不超过100
int main() {
int arr[MAX_SIZE];
int n, i, max;
printf("请输入数组元素个数: ");
scanf("%d", &n);
printf("请输入数组元素: ");
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
max = arr[0];
for (i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
printf("最大的数是: %d", max);
return 0;
}
```
此代码中,先输入数组元素个数 n 和数组元素,然后通过遍历数组找到最大值,并将其保存在变量`max`中,最后输出`max`即可。
希望您能够顺利解决问题!如果您还有其他问题,可以随时向我提问。
C语言一维数组,从键盘上输入一个数,判定该数是否在数组中
好的,我明白了。对于你的问题,我可以给你一个基本的C语言代码框架,帮助你进行判断:
```
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5}; // 定义一个一维数组
int num, found = 0; // 定义要查找的数和是否找到该数的标志
printf("请输入要查找的数:");
scanf("%d", &num); // 从键盘上输入要查找的数
// 遍历整个数组,查找是否有该数
for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
if (arr[i] == num) {
found = 1; // 找到该数,将标志设置为1
break;
}
}
// 根据标志判断是否找到该数
if (found) {
printf("该数在数组中\n");
} else {
printf("该数不在数组中\n");
}
return 0;
}
```
以上是一个简单的C语言代码,可以通过从键盘上输入一个数并在数组中查找该数,判断该数是否在数组中。希望能够对你有所帮助。