怎样输入十个字符串存放在指针数组中?

char *name[10];
int n=5,i;
for(i=0;i<n;i++)
scanf("%s\n",name[i]);
我想任意输入十个字符串存放到指针数组name[]中,但上面的方法不行,要怎么样才可以实现?请高手指教,谢谢!

楼主的意思我大概明白了
scanf("%s\n",name[i]);改成scanf("%s",name[i]);你再试试
我猜你 输入 10个字符串 的时候 是用 回车 结束 本字符串 的输入吧!
scanf为格式输入 如果按你那样写 字符串与字符串之间 你还要多打个回车
改完了,你可以依次输入10个字符串,用回车结束 本字符 串的输入。

你是不是觉得 输入一个字符串后 打了个 回车 所以 要在scanf中 加个\n呀
其实你输入的回车是作为 结束 本字符串 输入用的

还有问题 QQ:270495267
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-01-19
char name[5][10];
int n=5,i;
for(i=0;i<n;i++)
scanf("%s",name[i]);

这样就可以了
想用指针数组的话
char *name[5];
int n=5,i;
for(i=0;i<n;i++)
name[i] = malloc(sizeof(char) * 10);

for(i=0;i<n;i++)
scanf("%s\n",name[i]);
用完以后
for(i=0;i<n;i++)
free(name[i]);本回答被提问者采纳
第2个回答  2010-01-19
应该用(*name)[10]来保存,因为你要存放的是字符串

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网