#include <stdio.h> int main(void) { int i, flag, x; int a[5]; for(i = 0; i < 5; i++) scanf("%d", &a[i]); scanf("%d", &x); flag = 0; /*************found**************/ for(i = 1; i < 5; i++) if(a[i] == x) { printf("Index is %d\n", i); flag = 1; break; } /*************found**************/ if(flag=1) printf("Not Found\n"); return 0; }
时间: 2023-07-18 09:42:30 浏览: 72
C语言经典程序(适用C初学者)
程序中有两处错误,修改后的程序如下:
```c
#include <stdio.h>
int main(void) {
int i, flag, x;
int a[5];
for (i = 0; i < 5; i++)
scanf("%d", &a[i]);
scanf("%d", &x);
flag = 0;
for (i = 0; i < 5; i++) // 找到了错误所在
if (a[i] == x) {
printf("Index is %d\n", i);
flag = 1;
break;
}
if (flag == 0) // 找到了错误所在
printf("Not Found\n");
return 0;
}
```
程序思路:
1. 声明整型变量 i、flag 和 x,以及整型数组 a,长度为 5。
2. 通过 for 循环输入 5 个整数,存储到数组 a 中。
3. 通过 scanf 函数输入一个整数 x。
4. 使用 for 循环遍历数组 a 中的每一个元素,查找是否有与 x 相等的元素。
5. 如果找到了相等的元素,输出该元素的下标 i,将 flag 置为 1,退出循环。
6. 如果没有找到相等的元素,输出 "Not Found"。
7. 返回程序执行结果。
注意:在比较 flag 的值时,应该使用双等号 "==",而不是赋值符号 "=".
阅读全文