下面有错误的选项吗?我咋感觉都是正确的
求详细指点,哪个选项错的为什么
楼上说的太泛了。
访问数组的元素应该是下标访问stu[i]
或指针访问stu+i
,不加+i
只用stu
表示访问数组首元素。stu[i]
访问数组用点运算符.
访问,stu+i
访问数组用->
运算符。既然是指针访问,(stu+i)->grade
实际等价于(*(stu+i))->grade
。反而B选项,每次都是访问数组的第一个元素,访问重复10次,没有遍历数组。这种写法放到其他不支持指针的语言中往往会出现编译错误。
如果我的回答对你有帮助,还望采纳。
B是错的,一看就不对,没有体现出i的作用,怎么知道是在取第几个人的成绩
不知道你这个问题是否已经解决, 如果还没有解决的话:打印一个菱形其实有很多办法,不过最具有代表性的就是下面说的这两种
printf()
暴力打印这种可能是c语言初学者最常用的办法,几乎可以针对任何打印图形的问题,但是这种方式效率不高,而且做起来也很累,我们通常在无法找出规律,或者规律很复杂的时候才使用他,几乎只要会使用
printf()
就会进行操作了,这里就不再多讲了
这种我们需要找到规律,通过控制循环的条件来进行打印。