7-1 查找整数 (10 分)
本题要求从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。
输入格式:
输入在第一行中给出两个正整数N(≤20)和X,第二行给出N个整数。数字均不超过长整型,其间以空格分隔。
输出格式:
在一行中输出X的位置,或者“Not Found”。
输入样例1:
5 7
3 5 7 1 9
输出样例1:
2
输入样例2:
5 7
3 5 8 1 9
输出样例2:
Not Found
编译总结
(1)实验代码
#include <stdio.h>
int main(void)
{
int n, X;
scanf("%d %d",&n,&X);
int a[20];
for (int i = 0;i < n; i++)
{
scanf("%d",&a[i]);
if (a[i] == X)
{
printf("%d",i);
return 0;
}
}
printf("Not Found");
return 0;
}
(2)设计思路
第一步:定义整型n(num),X
第二步:输入n,X
第三步:定义1个数组a,它有20个整型元素
第四步:调用if循环语句,如果在数组a中找到了X,则输出相应下标
第五步:输出数组元素的值
(3)本题调试过程碰到问题及解决办法
问题一:为什么不能一次引用整个数组?
解决方法:在书上有详细讲解,之前上课时没有记下来导致出现问题。书上表明C语言规定定义数组后,只能引用单个的
数组元素,且数组元素的引用要指定下标。
问题二:为什么不能使用if else语句,而是单独使用if?
解决方法:上网查阅及询问朋友。有的时候,我们需要在满足某种条件时进行一些操作,而不满足条件时就不进行任何操
作,这个时候我们可以只使用 if 语句,也就是说if else 不必同时出现。
(4)运行结果截图
(5)程序流程图