关于一道c++的题

来源:百度知道 编辑:UC知道 时间:2024/05/27 21:21:43
程序主要就是要实现把使用者随意输入的字符后延5个输出。如输入a,则输出f,其它一切都没问题,就是在定义数组的时候不知道如何设定数组的数量。前面的i已经计算出所输入字符的个数,数组的数量就应该等于i,但是就是不知道如何实现。问题我已经在程序中标出来了,小弟是菜鸟,见笑了,望哪位大侠能把改好的程序发上来,感激不尽,小弟在线等。
#include <iostream.h>
#include <string.h>
void main()
{
int i,j;
char *x = new char[100];
cin>>x;
i=strlen(x);
char a[i],b[i]; //问题就出现在这一行,[]里面到底填什么,i是肯定不行的了,那应该怎么填呢?
for(j=0;j<i;++j)
{b[j]=int(a[j])+5;}
for(j=0;j<i;++j)
{cout<<b[j]<<endl;}
}

无所谓啊
可以和上面的x一样填100啊
顶多就是浪费点资源
反正下面的两个for循环有限制。

至于你想的动态决定大小,我觉得只有用动态链表实现了