1、程序運(yùn)行輸入數(shù)據(jù)時,第一行為A矩陣的行列數(shù)和B矩陣的行列數(shù),接著分別輸入A、B兩個矩陣的值。
創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、化隆網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價格優(yōu)惠性價比高,為化隆等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
2、首先,定義6個整型變量,保存A、B矩陣的行和列,以及控制循環(huán)的變量,k則用于實(shí)現(xiàn)矩陣的乘法。
3、接著,定義三個整型二維數(shù)組,保存A、B和C矩陣的各元素。
4、輸入三個矩陣的行數(shù)和列數(shù),保存在變量a、b、c中。
5、輸入矩陣A的各元素,保存在數(shù)組X中。
6、輸入矩陣B的各元素,保存在數(shù)組Y中。
7、將二維數(shù)組Z的各元素,初始化為0。
8、用兩層for循環(huán),控制矩陣的乘法,并輸出乘法所得的結(jié)果。
9、計(jì)算A矩陣和B矩陣的乘法,結(jié)果保存在數(shù)組Z中。
10、最后,輸出乘法所得的結(jié)果,即輸出Z數(shù)組中的所有元素。
11、運(yùn)行程序,輸入矩陣A和B的行數(shù)和列數(shù),以及A矩陣和B矩陣的所有元素,電腦就會計(jì)算出乘積C矩陣的所有元素,并輸出C矩陣。
return
會直接另函數(shù)返回,函數(shù)就運(yùn)行結(jié)束了,所有該函數(shù)體內(nèi)的代碼都不再執(zhí)行了,所以該函數(shù)體內(nèi)的循環(huán)也不可能再繼續(xù)運(yùn)行。
如果你需要讓循環(huán)繼續(xù)執(zhí)行,就不能return函數(shù),而應(yīng)該選用break或者continue。
break:跳出所在的當(dāng)前整個循環(huán),到外層代碼繼續(xù)執(zhí)行。
continue:跳出本次循環(huán),從下一個迭代繼續(xù)運(yùn)行循環(huán),內(nèi)層循環(huán)執(zhí)行完畢,外層代碼繼續(xù)運(yùn)行。
return:直接返回函數(shù),所有該函數(shù)體內(nèi)的代碼(包括循環(huán)體)都不會再執(zhí)行。
如下
listone = ['a', 'b', 'c', 'd']
listtwo = [1, 2, 3, 4]
listtwo_iter = iter(listtwo)
l = []
for x in listone:
for y in listtwo_iter:
l.append([x, y])
break
print l
看你的問題,相信你也知道break只能跳出單層循環(huán)。
要跳出多層循環(huán),方法有兩個:
1.每層都使用一次break(注意放置位置,不然很容易拋出異常)
2.使用return返回,這個是函數(shù)里面才有的(雖然這個方法已經(jīng)和break毫無關(guān)系,但是功能也能實(shí)現(xiàn))
兩個方法區(qū)別:使用break,每層都用break,增加代碼量,不適于閱讀。但可以運(yùn)用于整個Python環(huán)境。
使用return,可以跳出多層循環(huán),并且只使用一次就行,放在你希望跳出循環(huán)的位置。但必須和函數(shù)結(jié)合使用