char a[10][10]什么意思啊,字符串怎么还可以用数组

03.intmain()04.{05.charstr[10][20],str2[]={'s','t','o','p','\0'};06.inti,num=0;08.for... 03.int main()
04.{
05. char str[10][20],str2[]={'s','t','o','p','\0'};
06. int i,num=0;
08. for(i=0;;i++)
10. {
11. scanf("%s",str[i]);
12. if(strcmp(str[i],str2)==0)
13. break;
14. num++;
15. }
16. printf("%d\n",num);
17. return 0;
18.}
求解释,05行的str[10][20]是表示10行20列的字符吗?11行的输入为什么不是嵌套循环?12行的str[i]指的是什么?
展开
 我来答
你的侧脸狠美
2014-05-04 · 超过22用户采纳过TA的回答
知道答主
回答量:59
采纳率:0%
帮助的人:24万
展开全部
就是二维数组啊,每个里面都存的是字符而已,不过不是字符串,字符串有结束符'\0',这个是没有的。
更多追问追答
追问
那为什么输入用
for(i=0;;i++)
{
scanf("%s",str[i]);



难道不应该是嵌套循环吗
追答
不需要啊,你可以看成很多个一维的数组,每个数组存进一个字符串,就只用一个循环就可以了。
而且每个一维你可以视情况而定,普通的话你就看成存了很多个字符,是二维排列的。
他这样写,是每一个str[i]代表了一个一维数组的开头,然后存进字符串,其实也是一串连续的字符,都是一样的,只是存的方式不一样,就好比我给一个班发试卷,我一个一个发,和给第一组第一个人发他们人数的试卷,他们按顺序传下去。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式