请教vector容器问题...

Lion_Hardt Lion_Hardt 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
输入一组字符串,要求先去掉其中各种标点符号;小写字母变大写,大写字母不变;最后逆序显示输出。

PS:不允许使用Vector<string>,要求用Vector<char>来做,不能用标准库函数来去标点和改大小写。(实在没什么思路,求各位大哥帮帮小弟)

#include <iostream>
#include <vector>

using std::cout;
using std::cin;
using std::endl;
using std::vector;

int main()
{
vector<char> ch;
char c;
char *p;

while(cin>>c)
{
ch.push_back(c);
}
if (ch.size()==0)
{
cout<<"请重新输入!"<<endl;
}
for (vector<char>::iterator itr = ch.begin();itr != ch.end();itr++)
{
*p = &ch[itr];
if (*p >= 'a' && *p <= 'z' || *p >= 'A' && *p <= 'Z')
{
if (*p >= 'a' && *p <= 'z')
{
*p = *p - 32;
}
}
}
}

逆序用数组或string会求--------------------

int len=str.length();
char temp;
for (int i=0;i<len/2;i++)
{
  temp=str[i];
  str[i]=str[len-1-i];
   str[len-1-i]=temp;
}

但是如果是在vector容器里,如何实现......望给思路...
...全文

相关推荐

C++ vector容器 编写 约瑟夫环实习报告(密码问题)

问题描述 编号为1,2……,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。 测试数据 8 3 1 2 3 4 5 6 结果 3 6 5 4 2 8 7 1 利用vector容器,并利用iterator迭代器进行操作

轩辕泪1020

vector(容器)、 c &c++编程规范doc、495个c问题.pdf、c常见问题.pdf

vector(容器)、 c &c++编程规范doc、495个c问题.pdf、c常见问题.pdf

hello_uplooking

详解C++编程中的vector类容器用法

vector是一个标准库中的容器,使用时需要包含#include 头文件,也可以说vector是一个类模板而不是一种数据类型,对它的定义,需要指定类型,需要的朋友可以参考下

weixin_38682086

手搓STL风格vector容器[代码]

本文详细介绍了如何从零实现一个STL风格的vector容器,重点剖析了三指针架构设计、深拷贝控制、动态扩容策略以及迭代器失效等核心问题。作者通过完整代码演示了vector的基础架构设计,包括成员变量与迭代器实现、构造与析构函数、容量管理(reserve/resize)、元素操作(push_back/pop_back)以及运算符重载等内容。特别针对工程实践中的关键难点——迭代器失效问题,给出了内部和外部迭代器失效的解决方案,并通过图解方式深入分析了失效原因。最后通过现代C++特性优化了代码结构,提供了完整的vector容器实现方案,为理解STL容器设计思想提供了实践参考。

ss78901

vector容器详解[源码]

本文详细介绍了C++中的vector容器,包括其基本概念、使用方法及常见问题。vector是一种可变大小的数组序列容器,采用连续存储空间存储元素,支持高效的下标访问和动态大小调整。文章深入探讨了vector的增删查改操作、迭代器失效问题及解决方法,并提供了模拟实现的代码示例。此外,还介绍了vector在动态二维数组中的应用,如杨辉三角的实现,并列举了相关的OJ题目供练习。通过本文,读者可以全面掌握vector的使用技巧和底层实现原理。

u9v0w
评论 4
收藏 已收藏
分享
返回顶部
Lion_Hardt
C++ 语言 65,214 成员 250,514 内容