我需要建立一个程序,从用户请求插入句子 喜欢的“Hello World”或任何输入一维数组二维数组按升序(C)
,比拿这句话和输入它一维数组里面
,并从那里到二维数组输入它会提出他的句子顺序:
Hello!! :)
)Hello!! :
:)Hello!!
:)Hello!!
! :)Hello!
!! :)Hello
o!! :)Hell
lo!! :)Hel
llo!! :)He
ello!! :)H
我做了大部分工作的完成,但我不能让它完全一样我是说 我TS送给我一句话减少,而不是增加
我的代码:
#include <stdio.h>
#define P 10
int main(int argc, const char * argv[])
{
char array1[P][P];
char array2[P];
int i, j;
for (i = 0; i<P; i++) //fill the array with the chars.
{
scanf("%c", &array2[i]);
}
for (i=0 ; i<P ; i++)
{
for (j=0 ; j<P ; j++)
{
array1[i][j] = array2[j+i];
}
}
for (i=0 ; i<P ; i++)
{
for (j=0 ; j<P ; j++)
{
printf("%c", array1[i][j]);
}
putchar('\n');
}
}
哪里是我的错?以及我如何解决它? 谢谢。
您是否需要使用2d数组?通过使用单个长度为2P的数组,您可以实现与O(P)空间复杂度相同的效果。 –