我是靠谱客的博主 健忘摩托,最近开发中收集的这篇文章主要介绍[PTA]练习7-10 查找指定字符,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

练习7-10 查找指定字符(分数 15)

作者 颜晖

单位 浙江大学

本题要求编写程序,从给定字符串中查找某指定的字符。

输入格式:

输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。

输出格式:

如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。

输入样例1:

m
programming

输出样例1:

index = 7

输入样例2:

a
1234

输出样例2:

Not Found

 

思路:按顺序输入字符,字符串,利用if语句循环检查指定字符,并输出下标

要点/坑点:

1、本题要求输出指定字符的下标最大值,这里需要有比较大小,考虑到可能不止两个数比较大小,我们需要运用迭代的方式(我是这么叫的)比较大小

2、题目要求分行输入字符和字符串,所以我这里使用了scanf()输入回车 

代码如下:

#include <stdio.h>
int main()
{
	int i,k;
	int tip=0,max=0;
	char a,d;
	char b[80];
	
	a=getchar();
	
    scanf("%c",&d);           //这是一个坑点,要输入回车
	
    i=0;
	while((b[i]=getchar())!='n'){
		i++;
	}
	b[i]='';
	
    k=0;
	for(k=0;b[k]!='';k++){
		if((a==b[k])&&(k>=max)){
			max=k;
			tip=1;
	    }
    }
    
    if(tip==1){
		printf("index = %d",max);	
	}else{
		printf("Not Found");
	}
	
    return 0;
}

反思:

1、字符数组的输入不熟悉,还写成了while循环...

2、对于if语句背后的逻辑掌握不到位,以至于把一条语句分开写

3、在代码实现上,整体逻辑有问题(把输出index放在了for循环里),对每块代码的编写也不熟悉

最后

以上就是健忘摩托为你收集整理的[PTA]练习7-10 查找指定字符的全部内容,希望文章能够帮你解决[PTA]练习7-10 查找指定字符所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部