NOIP学习小站
西安交通大学附属中学航天学校

字符串

char数组存储字符串

tangyj626阅读(628)赞(16)

我们的第一个“Hello World”程序使用cout输出了"Hello World"这一句话其实就是字符串。字符串就是连续的字符“串”起来的一段文本,可以看成是若干有序的字符的集合。通过前面的学习,可知char数组就是若干有序的字符的集合...

C++中的string类型字符串

tangyj626阅读(677)赞(14)

使用字符数组来存储字符串,其实是C的做法,C++除了沿用这样的做法外,还引入了专门的数据类型string来处理字符串。string本质是类,所以有很多字符串处理方法。 因为string是C++中的类,而类是C++的高级用法,所以本节的内容有...

字符串的输入输出

tangyj626阅读(583)赞(14)

通过前面的学习可知,可以使用字符数组来存储字符串,也可以直接使用C++的string类型来存储字符串。但是如果要按行输入带有空格的字符串,只是简单地使用cin和scanf是不能实现的。 本小节重点研究字符串的输入,重点处理按行输入有空格的字...

字符串例题——判断字符串相等

tangyj626阅读(214)赞(11)

问题:判断两个字符串是否相等。 分析:使用char数组存储字符串,可以直接使用strcmp函数来比较两个字符串;如果使用string存储字符串,那么可以直接使用==来判断是否相等: 其实不使用strcmp函数,直接用for循环依次比较字符串...

字符串例题——求逆序数

tangyj626阅读(186)赞(13)

问题:输入一个正整数(),计算并输出的逆序数。正整数的逆序数就是倒着念的整数(高位不能有多余的0),例如123的逆序数是321,5700的逆序数是75。 分析:使用循环拆分出存储在long long类型变量每位上的数字,一边拆分一边组装逆序...

字符串例题——判断回文字符串

tangyj626阅读(199)赞(13)

问题:判断不包含空格且长度不超过1000的字符串是否是回文字符串。所谓回文字符串就是顺着念、倒着念完全相同的字符串。 分析:对于字符串,设其长度为,那么是回文字符串必须要满足:str[0] == str[n-1]、str[1] == str...

字符串例题——统计单词数量

tangyj626阅读(177)赞(14)

问题:统计长度不超过1000的字符串中的单词数量。字符串中的单词用一个或者多个空格隔开。 分析:输入的字符串包含空格,不能简单地使用cin或者scanf输入。可以直接遍历字符串中的字符,遍历过程中统计单词首字符的数量,单词首字符的特点是:当...

字符串例题——统计字符串中某单词出现次数

tangyj626阅读(206)赞(14)

问题:统计字符串中单词出现的次数。已知字符串中的单词用一个空格或者多个空格隔开。 输入格式:有2行,第1行是字符串,第2行是不带空格的单词。 分析:使用string来存储字符串和单词。可以通过string的find方法查找子串的方式统计单词...

字符串例题——删除单词后缀

tangyj626阅读(161)赞(14)

问题:给定一个单词,如果单词以er、ly或者ing后缀作为结尾,则删除该后缀,否则不做任何处理。输出单词删除er、ly、ing后缀的结果(输入保证保证删除后缀后的单词长度不为0)。 分析:将单词存储在字符数组中,判断字符数组尾部的2个字符或...

字符串例题——P1957 口算练习题

tangyj626阅读(205)赞(16)

通过本例题介绍sscanf和sprintf函数的使用方法。字符串的处理是应用程序的重要操作,也是竞赛的考点,在编程时需要灵活处理。 这是一道常规问题,但是由于每行中输入的数据个数不一致,数据的处理是一个难点。进一步分析问题可知,每行有3个数...

字符串例题——字符串数组

tangyj626阅读(171)赞(16)

问题:输入()位小组成员姓名(姓名中只有英文字符,每个姓名不超过10个字符),逆序输出所有姓名。 分析:使用string数组存储所有成员姓名,然后逆序输出数组中的string即可。 此外,如果用字符数组存储所有姓名,需要使用二维数组。此时二...