【C语言训练题库】第一次出现的字符

🔥 博客主页**🔥** :【 坊钰_CSDN博客

欢迎各位点赞**👍** 评论**✍收藏⭐**

1. 题目

给出一串字符串,找出第一次只出现一次的字符,并返回它的位置,如果不存在,则返回-1

例:

输入:"google" 输出:4

输入:"aa" 输出:-1

2. 分析

  • 不难看出,只要遍历字符串中各个字符,在与其他字符相比就行
  • 使用双层 for 循环,依次判断每一个字符是否与其他字符相等

3. 代码

cpp 复制代码
#include <stdio.h>

int main()
{
	char arr[1000];
	gets(arr);                //创建数组
	int sz = strlen(arr);

	for (int i = 0; arr[i]!='\0'; i++)
	{
		int j = 0;
		for (; arr[j] != '\0'; j++)
		{
			if ((arr[i] == arr[j])&& i != j)    //因为自己不能和自己比较,所以限制 i != j
			{
				break;
			}
		}
		if (arr[j] == '\0')      //当arr [j] 走到最后时,下标 i 就是该字符的位置
		{
			printf("%d\n",i);
			return 1;
		}
	}
	return 0;
}

4. 小结

以上就是关于查找字符串的内容了,具体还需宝子们去实践,如果觉得该博客对你有用的话,希望一键三连,点个关注不迷路,谢谢支持!

相关推荐
不正经学生4 小时前
C语言动态内存管理(上):堆上的自由与责任
c语言·开发语言·c++·算法·面试
伟大的车尔尼4 小时前
贪心的概念
数据结构·算法·贪心
方方洛4 小时前
vllm教程-00-前言与导读
人工智能·算法·vllm
IT毕设实战小研4 小时前
电影数据可视化推荐系统
大数据·后端·爬虫·python·算法·信息可视化·课程设计
且随疾风前行.4 小时前
从驱动来分析服务的添加过程
算法
CoderYanger5 小时前
A.每日一题:输入单词需要的最少按键次数 Ⅰ+Ⅱ
java·数据结构·算法·leetcode·面试
凯尔萨厮5 小时前
Java学习笔记十(注解)
java·笔记·学习
JoannaJuanCV5 小时前
VLM学习-SFT(监督微调)
深度学习·学习·机器学习·大模型·视觉大模型·vlm·视觉编码器
xiaokcehui6 小时前
地球物理大地测量学计算系列之十七局部重力场SRBF逼近及其性能指标测评
人工智能·算法·机器学习
布莱克6056 小时前
队列详解:定义、分类、应用场景及与栈的区别(C/C++ 代码讲解)
c语言·开发语言·c++·队列