中易网

C语言for(p=a[0];p<a[0]+12;p++) {if((p-a[0])%4==0)printf("\n");这两个能帮我解释一下是怎么算的

答案:1  悬赏:50  
解决时间 2021-02-17 02:54
C语言for(p=a[0];p<a[0]+12;p++) {if((p-a[0])%4==0)printf("\n");这两个能帮我解释一下是怎么算的
最佳答案
二维数组其实就是一维数组,元素一个一个顺序往后排,p指向a[0],然后每次往后移动
一个位置,当(p-a[0])%4,也就是说输出了四个元素时,就输出换行符,四个元素也就是a[3][4],,第二维的值。其实和下面这2层循环是一样的:
for(int i=0;i<3;++i)
for(int j=0;j<4;++j)

printf("%4d",a[i][j]);

print("\n");追答
追问:(p-a[0])%4这个语句不是如果p-a【0】除于4后等于0的话就输出换行符是吗
追答:p是指针,p-a[0]是指p相对于a第一个元素的位置,这个不是除,是取余操作
10%4,意思是10除以4的余数,也就是2
(p-a[0])%4,当(p-a[0])是4的整数倍时,结果为0
追问:那p不是被赋值a【0】了吗?p-a【0】的话不就是等于0了吗?0除以4不是等于0吗,然后0等于0就输出换位符,接下去p是a【1】的地址执行减去a【0】再除以4不等于0就不输出换行符
追答:是的
追问:哦!我想出来了,是a【0】到a【12】里面的数字除以4,没有余数就换行,是不是
追答:不是,每4个数字换行一次,和a的内容没有关系,因为P是地址,而不是取地址中的内容
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
铁法煤业机械制造公司西厂区这个地址在什么地
Z61Y-40 C DN20什么阀门?
离心式清水泵加什么油润滑维护
海尔专卖店柏里店地址在哪,我要去那里办事
二拍子地址在什么地方,想过去办事
若代数式(2x平方+ax-y+6)-2bx平方-3x-5y-1的
SCHOOL DAYS刹那线怎么打出
祥誉通讯怎么去啊,有知道地址的么
名品折扣店在什么地方啊,我要过去处理事情
美文摘抄200字,我急,越多越好,别超过240字
卡通农场看不到广告视频短片,麻烦谁能帮忙解
安丘恒顺消防器材销售中心在什么地方啊,我要
控制器电流放大值得什么意思?
手机自动打字怎么办
enlgar是什么表
推荐资讯
亲人有酒后神经病,打伤人鼻梁骨索要十万人
西夏对待汉人是怎么样的
天津市段记糕点我想知道这个在什么地方
温柔了杯中,三分明月落是什么意思
龙起三丈高…那个高人能帮我解释一下什么意思
25.24度等于()度()分秒
这首歌献给那些失去所爱的人们的英文怎么念
有那位大神知道,有什么软件可以查询居住地址
女王大人情侣男的应该叫什么
CMYK对应的潘通色卡号 CMYK:5-92-56-19 , C
明阳微娃私房菜地址有知道的么?有点事想过去
今年脸圆长流行什么发型
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?