【发布时间】:2017-05-19 21:41:55
【问题描述】:
几周前我刚开始学习 C,通过阅读一本关于 C 的书。每章末尾都有一些练习,有一个练习我不知道为什么我的代码不起作用。任务是从用户那里获取一些字符串,这些字符串将进入一个二维数组。然后,向后打印每个字符串。
例如,
用户将输入单词:sleep、hello、great、
输出将是:peels、olleh、taerg。
它必须是一个二维数组(这就是本章的内容)。
这是我的代码:
#include <stdio.h>
int main()
{
char string[5][6];
int i, j;
for(i=0; i<5; i++)
{
printf("please enter a string:\n");
scanf("%s", &string[i]);
}
printf("\n");
for(i=0; i<5; i++)
{
for(j=6; j<=0; j--)
{
printf("%c", string[i][j]);
}
printf("\n");
j=6;
}
return 0;
}
提前谢谢你!
【问题讨论】:
-
你的代码怎么不工作 - 你得到什么输出?
-
1.应该是
scanf("%s", string[i]);2.应该是for(j = 5; j >= 0; j--)3.不用再写j = 6了! -
@kiner_shah
"5s"错字为"%5s"(和j=5-->j=last_char_index) -
@BLUEPIXY,更正了错字,是的,应该是
j = last_char_index! -
@kiner_shah 你为什么扔掉5?
标签: c arrays multidimensional-array c-strings