c语言for循环中i,C语言for循环语句中a[i][j]和a[j][i]有什么区别
匿名用户
1级
2014-04-27 回答
可以将i 理解成行,j 理解成列,a[i][j]和a[j][i]取值不同
比如,假设一个3维数组(你的是5x5),数值分别为:
1 2 3
4 5 6
7 8 9
循环中,当i=0时,a[i][j]取值为1 2 3,a[j][i]取值为1 4 7,根据这个来理解结果的不同吧
追问:
意思是i与j在括号中的位置变了,但表示的意义还是不变,依旧代表行和列,对吗?
追答:
你这里是2重循环
for ()
for()
这里你可以将外循环理解成行,内循环理解成列
追问:
恩,我知道,我的意思是a[i][j]和a[j][i]中i和j的位置调换了,可二重循环并没有变,但却输出了行和列的和,这就意味着二维数组的维度是由i,j所表示的意义决定的,对吧?!系统是怎么识别i表示行,j表示列的呢
追答:
行和列是我们用来还理解的,比如一个数组a[3][4],
计算机内存储数组数据的时候,是连续存放的,依次是:
a[0][0],a[0][1],a[0][2],a[0][3],a[1][0],……
也就是说对a[i][j]来说,每个i的值(比如i=0时),都有j个数,也就是可以理解为每一行,都有j个数据,按循环顺利排队取值而已
for (i。。。)
for(j。。。)
中a[i][j],和
for (j。。。)
for(i。。。)
中a[j][i],是一样的
系统是按照数组的取值来判断的,其实计算机内就是一个连续的数据存储,行和列是为了我们方便理解而拿来说的,并不存在行和列
追问:
可是按你写出来的循环,结果是一样的。。。他两次for循环是一样的应该,只是求和时i,j的位置不一样。。。
追答:
for (i。。。)
for(j。。。)
中a[i][j],和
for (j。。。)
for(i。。。)
中a[j][i],是一样的
你如果用同一个循环
for (i。。。)
for(j。。。)
每次循环求和a[i][j]和a[j][i]就不同了,
追问:
【原来你一直不懂我的问题】额,是呀,问题就是同一个循环只变换了ij的位置结果怎么就不同了?。。。。。。
追答:
你上面的截图程序,两段根本就是一样的程序
n求和的时候,你的循环换成了
for (j=0;j<5;j++)
for (i=0;i<5;i++)
按照你的说法,这里应该是:
for (i=0;i<5;i++)
for (j=0;j<5;j++)
追问:
是的。 重看了你的回答,原来刚看回答的时候会错意了,抱歉。问题依旧没解决。。。我依旧不懂他怎么循环的。。。
追答:
假设一个3维数组(你的是5x5),数值分别为:
1 2 3
4 5 6
7 8 9
循环中,
当i=0时,a[i][j]取值为1 2 3,a[j][i]取值为1 4 7
当i=1时,a[i][j]取值为4 5 6,a[j][i]取值为2 5 8
当i=2时,a[i][j]取值为7 8 9,a[j][i]取值为3 6 9
如果你的程序不输出过程值,只是输出最后结果的话,全部数据加和,结果肯定是一样的
c语言for循环中i,C语言for循环语句中a[i][j]和a[j][i]有什么区别相关推荐
- c语言 循环语句中的终止命令,Shell break和continue命令
在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,像大多数编程语言一样,Shell也使用 break 和 continue 来跳出循环. break命令 break命令允许跳出所有循环(终止 ...
- R语言 for循环中sprintf函数无法输出的问题
job <- c('admin.','blue-collar','entrepreneur','housemaid','management','retired','self-employed' ...
- 在c51语言的循环语句中 用作循环结束,在C51语言的循环语句中,用作循环结束条件判断的表达式为()...
的任营领域都个战企业为结何一合的略经是以,语言用作战略经营须综合考领域虑这两个分析方面时必,. 循的表达式的一参与资产战略个以共同个独企业企业建立就是或两两个立的联盟上的. 环语对方的盟就盟各一家业( ...
- C语言及程序设计初步例程-33 三种循环语句
贺老师教学链接 C语言及程序设计初步 本课讲解 问题:求1+2+3+-+100 用while语句实现的程序 #include <stdio.h> int main() {int i=1, ...
- 关于python语言、下列说法不正确的是-下列语句中,___________是不正确的Python语句...
问题:下列语句中,___________是不正确的Python语句 更多相关问题 2,11,14,27,()A.34B.32C.30D.28 二氧化硫是造成酸雨的重要原因.某地区饱受酸雨困扰,为改善这 ...
- 《C语言及程序设计》实践项目——三种循环语句
返回:贺老师课程教学链接 [项目1:利用循环求和] 求1000以内所有偶数的和 要求:请编出3个程序来,分别用三种循环语句完成,注意体会各种循环语句的执行过程及语法特点. [参考解答] [项目2:求阶 ...
- c语言case标号是连续的吗,在switch语句中,case后的标号只能是什么?_后端开发...
在switch语句中,case后的标号只能是常量表达式.在一个特定的switch语句中,每一个case常量都必须具有举世无双的值,不能够反复.然则switch语句能够包括多个case标签. switc ...
- continue语句可以用在switch语句和3种循环语句中_必须知道的C语言知识细节:break、continue语句区别...
break语句.continue语句都是C语言标准规定的跳转类语句,能够实现程序无条件转向另一处执行. break和continue中在循环体中经常出现,因此必须掌握其区别,避免出错. 先复习下两种语 ...
- 和海草一起学C语言---一看就懂的选择、循环语句函数和数组
目录 ⭐️前言⭐️ 一.选择语句
最新文章
- 登陆失败bdstoken_解决PanDownload登录提示账号登录失败,获取bdstoken失败问题
- autocomplete=off inpu属性
- docker 打包镜像_Spring Boot2 系列教程(四十一)部署 Spring Boot 到远程 Docker 容器
- laravel ajax ip,怎么在Laravel中利用AJAX动态刷新部分页面
- springmvc jsp java_java-jsp springmvc-controller 传值到页面的方法
- Python实现求矩阵的伴随矩阵
- Mac vmvare vmdk文件使用
- UE4 Take Recorder的使用
- Android Mms短信的发送流程,短信发送源码解析
- 2021春招面经系列--计算机网络和操作系统
- ## 错误:ora-01922 解决方案
- android实现可暂停/继续的计时器
- 获取Device Name方法
- m,mm,mmm区别
- Oracle Flashback 知行合一
- 【花雕动手做】有趣好玩的音乐可视化系列项目(24)--无限LED镜子灯
- 手机电池为什么会爆炸?
- 北理工珠海学院计算机二级,李兴森教授在北理工珠海学院计算机学院主讲可拓学...
- KMSmicro 4.0 激活方法的误区解读
- js中的流程图和循环语句