|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
前面的行和列我已经算出来了。但是把用户输入的字符赋值的时候有问题。字符指针和整数指针好像不太一样,不能直接循环赋值。所以不知道怎么办,求大佬帮助,万分感谢!!!
#include <stdio.h>
int main()
{
char str1[10];
int x=0,y=0,j=0,k=0,m=0,n=0;
printf("请输入要进行分割的字符串(请以空格结尾!!):");
fgets(str1,1024,stdin);
while(str1[x] != '\n')
{
if((int)str1[x] == 32)
{
y++;
x++;
continue;
}
x++;
}
// y+=1;
//计算行数(即文字分为几段?
x=0;
m=0;
while(str1[x] != '\0')
{
if((int)str1[x] == 32)
{
m=(j>=m?j:m);
j=0;
x++;
k++;
while(k == y)
{
break;
}
continue;
}
j++;
x++;
}
printf("m=%d y=%d",m,y);
//以下代码是疑问出现的地方
n=0;
char *p[y][m];
for(x=0;x<y;x++)
{
for(k=0;k<m;k++)
{
*p[x][k]=str1[n];
while((int)str1 == 32)
{
break;
}
n++;
}
n++;
}
for(x=0;x<y;x++)
{
for(k=0;k<m;k++)
{
printf("%s",*p[x][k]);
}
printf("\n");
}
return 0;
}
|
|