C语言练习——在数组中查找指定元素

举报
Code_流苏 发表于 2022/05/10 21:36:32 2022/05/10
【摘要】 C语言练习——在数组中查找指定元素

C语言练习——在数组中查找指定元素

名人说:古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。——苏轼

🐼本篇内容简介一、问题呈现-->二、源码实现(+详细注释)-->三、输出结果展示

一、问题呈现

1.问题描述

Problem Description

本题要求:编程实现在数组中查找指定元素。

2.输入输出

Input

输入一个整数n的值,另起一行输入对应n值的数组元素值(n<=10),之后再输入要查找的元素

Output

查找成功则输出对应元素的下标(以第一次出现为准),否则输出"查找失败..."

3.测试样例

1️⃣样例1

Sample Input

5
1 2 2 5 4
5

Sample Output

3

2️⃣样例2

Sample Input

4
1 3 2 4
0

Sample Output

查找失败...

二、源码实现(+详细注释)

1.注释版

//编码及注释:Code_流苏
//定义头文件
#include<stdio.h>
#include<stdlib.h>
//查找函数
int search( int a[], int n, int x )
{
  int i;
  //定义变量flag 用于标记及记录
  int flag=-1;
  for(i=0;i<n;i++)
  {
    if(a[i]==x)
	{
		flag=1;
		break;
	}
		
  }
  if(flag==1) 
  	return i;
  else 
  	return flag;
}
//主函数
int main()
{
	//定义i 用于循环 
	//定义index 用于存储下标值
    //定义n 用于存储及输入数组元素的个数 
    //定义m 用于存储及输入要查找的值
	int i, index, n, m;
    int a[10];
    
    printf("请输入n的值:");
    scanf("%d", &n);
    
	printf("输入n个数组元素的值:");

    for(i = 0; i < n ; i++ )
        scanf("%d", &a[i]);
    
	printf("请输入你要查找的值:");
    scanf("%d", &m);
    
	index = search( a, n, m );
    
	if( index != -1 )
        printf("下标值为:%d\n", index);
    else
        printf("查找失败...\n");
	//如果正常返回0 说明程序执行成功 非0 则有出错或异常
    return 0;
}

2.简洁版

#include<stdio.h>
#include<stdlib.h>

int search( int a[], int n, int x )
{
  int i;
  int flag=-1;
  for(i=0;i<n;i++)
  {
    if(a[i]==x)
	{
		flag=1;
		break;
	}
		
  }
  if(flag==1) 
  	return i;
  else 
  	return flag;
}

int main()
{

	int i, index, n, m;
    int a[10];
    
    printf("请输入n的值:");
    scanf("%d", &n);
    
	printf("输入n个数组元素的值:");

    for(i = 0; i < n ; i++ )
        scanf("%d", &a[i]);
    
	printf("请输入你要查找的值:");
    scanf("%d", &m);
    
	index = search( a, n, m );
    
	if( index != -1 )
        printf("下标值为:%d\n", index);
    else
        printf("查找失败...\n");

    return 0;
}

三、输出结果展示

为了使整体内容简洁,此处只展示一组测试数据结果。

1.输出结果

请输入n的值:5
输入n个数组元素的值:1 2 2 5 4
请输入你要查找的值:5
下标值为:3

--------------------------------
Process exited after 13.5 seconds with return value 0
请按任意键继续. . .

2.输出结果(图示版)

在这里插入图片描述


作者:Code_流苏(一个喜欢古诗词和编程的Coder😊)

★喜欢的话,还请多多点赞与关注! 感谢支持!
C语言100题练习专栏计划持续进行,欢迎评论交流学习!
多思,多练,多总结,坚持下去会有收获的!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。