名人说:学须志也,才须学也,非学无以广才,非志无以成学。——诸葛亮
前言:✍很高兴你打开了这篇博客,希望你看过之后有所收获!
Code_流苏的博客,邀您一起学习
本篇内容简介:一、问题呈现-->二、源码实现(+详细注释)-->三、输出结果展示
磊C语言100题练习专栏计划:目的:巩固练习C语言,增强上机、动手实践能力,交流学习!题量随时间的增加会有所增加。中间也会插入一些算法的问题,文章内容也会不断打磨、精简优化,争取做到好、然后更好!
C语言100题练习计划——查找指定字符
一、问题呈现
1.问题描述2.输入输出3.测试样例 二、源码实现(+详细注释)
1.注释版2.纯源码版 三、输出结果展示
1.输出结果2.输出结果(图示版)
一、问题呈现 1.问题描述Problem Description
编写程序,从给定字符串中查找某指定的字符。2.输入输出
Input
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。
Output
如果找到,在一行内输出该字符在字符串中所对应的最大下标(下标从0开始),否则输出"查找失败"。3.测试样例
Sample Input
a bcade
Sample Output
2
二、源码实现(+详细注释) 1.注释版★注意:
输入的字符串如果含有重复的待查找字符
比如
待查找字符为a
输入了baaa
输出结果为3 以最后一个相同的位置为准
//编码及注释:Code_流苏 //头文件定义 #include2.纯源码版#include #include #include //主函数 int main() { //定义字符类型变量 ch 用于输入需查找的字符 char ch; //定义字符数组 用于输入存储字符串 char str[81]; //提示 printf("请输入你要在字符串中查找的字符:n"); //输入要查找的字符 scanf("%c",&ch); //接收一个字符 此处接收的为回车字符 getchar(); //提示 printf("请输入字符串:n"); //输入字符串 gets(str); //借助string.h字符串函数库strlen函数求字符串长度 //并定义一个整数类型变量 来存储字符串的长度 int len=strlen(str); //定义i 用于循环 int i; //定义flag 用于标志状态 int flag=0; //循环遍历查找 for(i=len-1;i>=0;i--) { //判断字符与字符串中哪个位置对应的字符相等 if(str[i]==ch) { flag=1;break;//如果找到了相等的标志为1 } } if(flag==0)printf("查找失败n");//没找到flag仍为0,输出查找失败 else printf("字符所在位置下标为:n%dn",i);//找到 flag=1,输出位置 //返回0,代表程序执行结束 return 0; }
#include#include #include #include int main() { char ch; char str[81]; printf("请输入你要在字符串中查找的字符:n"); scanf("%c",&ch); getchar(); printf("请输入字符串:n"); gets(str); int len=strlen(str); int i; int flag=0; for(i=len-1;i>=0;i--) { if(str[i]==ch) { flag=1;break; } } if(flag==0)printf("查找失败n"); else printf("字符所在位置下标为:n%dn",i); return 0; }
三、输出结果展示 1.输出结果
请输入你要在字符串中查找的字符: a 请输入字符串: bcade 字符所在位置下标为: 2 -------------------------------- Process exited after 11.23 seconds with return value 0 请按任意键继续. . .2.输出结果(图示版)
历尽千帆 ,不坠青云!
ps:这道题的方法,本文虽然只写出这一种,但是思路方法其实不止这一种,其它的方法可自行尝试一下。
多思,多练,多总结,坚持下去会有收获的!
作者:Code_流苏(一个喜欢古诗词和编程的Coder)
趣味系列进行时:趣味C语言系列 01—绘制余弦曲线
★喜欢的话,还请多多点赞与关注! 感谢支持!
C语言100题练习专栏计划持续进行,欢迎评论交流学习!



