2024.10.29

1.reverse函数:翻转
对于数组 a,a+n;
对于字符串或者向量 a.begin(),a.end();
具体在https://blog.csdn.net/YMWM_/article/details/115468297

2.字符串的一种赋值方式

点击查看代码
for(int i=0;i<n;i++) s[i]=string(7*n/2,' ')
其中s[]=string(数量,' ') 是说将s[]这一行赋值为一个长度是 数量 内容全是空格的字符串;

3.对于星号画图题

看完学长给的例子后了解到
直接找规律一行一行写for然后cout空格和星号太长也太麻烦

应该用string 先初始一块画布 也就是上面的2.
然后再找规律写for直接赋值对应的点为星号

如果存在对称就先写对称的某一部分
然后
如果左右对称就用reverse函数将每一行翻转过来再接回去;

例如

点击查看代码
void copy(int i){
	string temp=s[i];
	reverse(temp.begin(),temp.end());
	s[i]+=temp;
}

这个函数因为只是复制一行 你想复制每一行就要把它写进for循环里

如果上下对称呢

那就for从i小到大先输出s[i];
然后再把for倒过来写 也就是i从大到小输出s[i];
可能涉及到先从0->i然后i-1->0的情况 这个具体考虑;

posted @ 2024-10-29 19:18  kktwistz  阅读(5)  评论(0编辑  收藏  举报
一飞冲天按钮^^