
C语言怎么用二维数组输入行数不确定的字符串
1个回答
展开全部
首先】是多行字符串的输入和保存。可以:
开设一个字符串数组如下,其中N定义最多可记录多少行,M定义每行可保存多少个字符,改变#define定义可以调整这两个数据
#define
N
1024
//最多1024行
#define
M
256
//每行最多存储255个字符
char
input[N][M];
实际输入一行可以用gets函数实现,判断gets函数的返回值可知道是否结束输入(比如输入Ctrl+Z的组合键结束),每输入一行,记录的行数加1,最后可得到实际输入的行数和按行号顺序保存在input数组中的所有字符串。
【然后】是倒序输出字符串,每个字符串倒序输出。可以:
按照倒序给出input的第1维下标,每行输出一个字符串,在输出每个字符串时,找到字符串末尾(都是以字符'\'结束的),然后输出一个字符再往回倒退一个字符,直至输出完整个字符串。如:
for
(
i=n-1;i>=0;i--
)
{
nn=0;
while
(
input[i][nn]
)
nn++;
for
(
j=nn-1;j>=0;j--
)
printf("%c",input[i][j]);
printf("\n");
}
开设一个字符串数组如下,其中N定义最多可记录多少行,M定义每行可保存多少个字符,改变#define定义可以调整这两个数据
#define
N
1024
//最多1024行
#define
M
256
//每行最多存储255个字符
char
input[N][M];
实际输入一行可以用gets函数实现,判断gets函数的返回值可知道是否结束输入(比如输入Ctrl+Z的组合键结束),每输入一行,记录的行数加1,最后可得到实际输入的行数和按行号顺序保存在input数组中的所有字符串。
【然后】是倒序输出字符串,每个字符串倒序输出。可以:
按照倒序给出input的第1维下标,每行输出一个字符串,在输出每个字符串时,找到字符串末尾(都是以字符'\'结束的),然后输出一个字符再往回倒退一个字符,直至输出完整个字符串。如:
for
(
i=n-1;i>=0;i--
)
{
nn=0;
while
(
input[i][nn]
)
nn++;
for
(
j=nn-1;j>=0;j--
)
printf("%c",input[i][j]);
printf("\n");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |