我正在通过C编程编写代码并使用visual studio编译程序。
这里我试图从手动输入数组元素中找到数字,但它无法正常工作。
#include<stdio.h>
#define SIZE 3
main()
{
int i=0;
int search_no=0;
int myArray[SIZE];
for(i=0;i<SIZE; i++)
{
printf("Enter value : ");
scanf("%d", &myArray[i]);
}
printf("Enter value to search : ");
scanf("%d", &search_no);
for(i=0;i<SIZE;i++)
{
if(search_no==myArray[i])
{
printf("Number found\n");
break;
}
if(search_no!=myArray[i])
{
printf("Unable to find. Kindly re-check the number\n");
break;
}
}
getch();
}
它得到编译,但它没有正确搜索元素,如果我删除Last IF语句然后它完美地工作。如果找到值,我想以两种方式打印消息。
感谢。
答案 0 :(得分:2)
实际上,如果数组中的第一个值不是您要查找的值,那么您就会离开循环。
在循环之后放置未找到的代码。
int found = 0;
for(i=0;i<SIZE;i++)
{
if(search_no==myArray[i])
{
printf("Number found\n");
found = 1;
break;
}
}
if(found == 0)
{
printf("Unable to find. Kindly re-check the number\n");
}