问题描述:在数组中查找一个给定的数 输入5个整数,将它们存入数组a中,再输对10个整数从小到大排序。 步骤: 1 使用循环和 scanf 语句读入这10个数,把这些数保存到数组中 2 对这10个数进行排序入1个数x,然后在数组中查找x,如果找到,输出相应的下标,否则,输出“Not Found”。 例:输入5个数:2 9 8 4 6 输入查找的数:7 输出:Not Found
时间: 2024-02-07 21:04:01 浏览: 58
好的,我的回答如下:
可以使用以下代码实现:
```c
#include <stdio.h>
int main() {
int a[10], i, j, temp, x;
// 输入10个整数,保存到数组中
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
// 对10个数从小到大排序
for (i = 0; i < 9; i++) {
for (j = i + 1; j < 10; j++) {
if (a[i] > a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
// 输入要查找的数
printf("请输入要查找的数:");
scanf("%d", &x);
// 在数组中查找x
for (i = 0; i < 10; i++) {
if (a[i] == x) {
printf("找到了,下标为:%d\n", i);
break;
}
}
if (i == 10) {
printf("Not Found\n");
}
return 0;
}
```
这个程序的大致思路是:首先使用循环和 scanf 语句读入这 10 个数,然后把这些数保存到数组中。接着,对这 10 个数进行排序,使用循环和 if 语句实现:比较相邻的两个数,如果前面的数大于后面的数,就交换它们的位置,直到排序完成。最后,输入要查找的数,使用循环遍历数组,查找是否存在这个数,如果找到了,输出相应的下标;否则,输出“Not Found”。
阅读全文