【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. 小结

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

相关推荐
一条大祥脚25 分钟前
KMP原理+例题
算法
大闲在人9 小时前
C、C++区别还是蛮大的
c语言·开发语言·c++
追随者永远是胜利者10 小时前
(LeetCode-Hot100)20. 有效的括号
java·算法·leetcode·职场和发展·go
瓦特what?11 小时前
快 速 排 序
数据结构·算法·排序算法
前路不黑暗@11 小时前
Java项目:Java脚手架项目的文件服务(八)
java·开发语言·spring boot·学习·spring cloud·docker·maven
niuniudengdeng11 小时前
基于时序上下文编码的端到端无文本依赖语音分词模型
人工智能·数学·算法·概率论
hetao173383711 小时前
2026-02-13~16 hetao1733837 的刷题记录
c++·算法
崎岖Qiu11 小时前
【计算机网络 | 第十一篇】图解交换机的自学习功能
网络·学习·计算机网络
科技林总11 小时前
【系统分析师】8.0 项目管理
学习