c语言问题,11和12是什么意思?

 我来答
匿名用户
2013-12-24
展开全部
11题:a[10]越界,a[3,5]是二维数组,a(5)应该用[],只有a[10-10]是表示a[0]是正确的。
12题:D的字符串最多5个字符,而abcdef已经是6个字符了,所以错了。
yzviolet
2013-12-24 · TA获得超过2578个赞
知道大有可为答主
回答量:1196
采纳率:0%
帮助的人:998万
展开全部
11题:
已声明 int a[10]; 时,
a[10] 因为下标越界,所以错。
a[3,5]。C 语言不支持这种方式使用数组。
a(5),C语言没有这种数组用法。
a[10-10],会理解为 a[0],这是对的。等于引用数组 a 里面的第一个元素。
12题:
char s[5] 只能放5个字符。如果放字符串的话,还要留一个给 '\0',自能再容纳4个字符。
而 char s[5] = "abcdef",等于给 s 赋值了7个字符(表忘了'\0'),所以不正确。
追问
下标越界?
追答
数组的索引叫下标。下标超出数组范围叫下标越界。int a[10] ,下标是0-9,a[10]就是越界。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
与子如初见
2013-12-24 · TA获得超过1638个赞
知道小有建树答主
回答量:1117
采纳率:100%
帮助的人:798万
展开全部
11.对数组的访问必须是数组名后面跟上[i],[]里边的i的值从0开始,到定义数组元素的总数减一。
a 错了,因为数组a[10]含有十个元素,从a[0]开始到a[9]。
b 错了,[]内的数必须是整数。
c错了,()是什么?不知道。
d正确,d的意思就相当于a[0]。
12a,b,c都对,c是对a进行初始化。""自带'\0',d错了,字符串应该以'\0'结束,所以"abcdef"总共为7个字符,而数组a的容量只有5,所以错了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
datangzhiban
2013-12-24 · TA获得超过259个赞
知道小有建树答主
回答量:238
采纳率:0%
帮助的人:106万
展开全部
11:
题目定义了一个int数组a[10],引用数据应该是:数组名[表达式],使用中括号[]来表示引用位置。
所以选项D中:a[10-10]即使a[0],引用了数组的首位。选项C错在使用小括号()来表示引用位置。

12:
选项B是定义一个字符数组,并且给该数组前3位s[0],s[1],s[2]赋值分别为'a','b','c'。
选项D错误在于赋值数组超出了数组大小,可以看到"abcdef"长度为6,而定义的数组长度为5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
香草炸鸡块
2013-12-24
知道答主
回答量:49
采纳率:0%
帮助的人:27.1万
展开全部
11, D实际是a[0],是正确的表达式。
12,D初始化的字符串长度大于数组的长度。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ljjsj2008
2013-12-24 · TA获得超过112个赞
知道答主
回答量:50
采纳率:0%
帮助的人:21.7万
展开全部
11题是考查数组的引用方式,int a[10],a元素的引用应该是a[0]-a[9],而且以[]形式出现,而不是(),所以答案中D正确,相当于a[0];

12题考查字符数组的用法,D明显越界了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式