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

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

相关推荐
inquisiter14 分钟前
损失函数在标量和矩阵上的求导对比
线性代数·算法·矩阵
离凌寒36 分钟前
一、关于st上制作外部烧录算法时软件识别不到算法文件的问题总结
算法
v_for_van1 小时前
C语言__attribute__
服务器·c语言·开发语言·mcu·嵌入式·嵌入式实时数据库
不灭的黄金瞳1231 小时前
C语言实现单链表
c语言·数据结构
萌动的小火苗1 小时前
Linux进程线程面试题【无答案】
linux·运维·服务器·c语言·开发语言
️学习的小王2 小时前
AI Agent Skills实战教程:从原理到上手编写SKILL.md
人工智能·深度学习·学习·机器学习
青 春 记 忆2 小时前
LeetCode 283. 移动零|Python 解法详解
python·算法·leetcode
春风解人意2 小时前
从零开始学习嵌入式P29----线程间的通信
c语言·嵌入式硬件·学习
kmomo..2 小时前
Linux 进程学习笔记
linux·笔记·学习