有定义语句:int b;char c[10];,则正确的输入语句是?

来源:百度知道 编辑:UC知道 时间:2024/06/08 04:36:45
给出答案的同时麻烦解释一下c[10]是啥意思?谢谢
还有我想知道 scanf("%d%s",&b,c);和scanf("%d%s",b,c);有什么区别?

字符数组的定义,意思就是定义一个长度为10的字符数组,但要注意,数组下标是从0开始的,所以第10个元素表示为c[9],千万不能越界。

scanf("%d%s",&b,c);而后者是错误的,因为c本身就代表数组的首地址,scanf函数接受的就是内存地址,如果再加上&c就有逻辑错误了

int C【10】是定义1个10个int组成得数组
如果单纯C[10]就是以前你定义C[N]得第11个数

int b;
char c[10];
语句没有问题。c[10]就是定义一个含有十个字符元素的数组,分别是从c[0]到c[9]。

scanf("%d", &b);
scanf("%s", c);