易語言數(shù)組累加計算 javascript日常編程中如何正確使用循環(huán)語句?
javascript日常編程中如何正確使用循環(huán)語句?javascript的循環(huán)方法有很多,但是每種循環(huán)方法都有自己的使用場景,所以要適當(dāng)使用。循環(huán)for循環(huán)一般用于遍歷一個簡單的數(shù)組,然后使用數(shù)組的值
javascript日常編程中如何正確使用循環(huán)語句?
javascript的循環(huán)方法有很多,但是每種循環(huán)方法都有自己的使用場景,所以要適當(dāng)使用。
循環(huán)
for循環(huán)一般用于遍歷一個簡單的數(shù)組,然后使用數(shù)組的值執(zhí)行一系列操作。for循環(huán)可以通過
中斷以終止此循環(huán)。
在…里...循環(huán)
循環(huán)主要用于遍歷對象(當(dāng)然數(shù)組也可以)。如果操縱loop的值,會改變原來的數(shù)組,需要注意。
forEach循環(huán)主要用于遍歷數(shù)組對象,在不改變原數(shù)組值的情況下對每一項進(jìn)行操作,但ForEach循環(huán)不能通過break終止循環(huán)。它也沒有辦法停止循環(huán)。方法通常不返回值,只用于操作數(shù)據(jù)。
map方法依次對數(shù)組的所有成員調(diào)用一個函數(shù),根據(jù)函數(shù)的結(jié)果返回一個新的數(shù)組。如果需要返回值,通常使用方法。
方法的參數(shù)是一個函數(shù),所有數(shù)組成員依次執(zhí)行函數(shù),返回結(jié)果的成員組成一個新的數(shù)組返回。此方法不會更改原始數(shù)組。
(),每隔()
它們接受一個函數(shù)作為參數(shù),所有數(shù)組成員依次執(zhí)行該函數(shù),返回一個布爾值。有的方法,只要一個數(shù)組成員返回真,最后返回真,每個方法都要求每個數(shù)組成員的返回值都是真的,這個方法的返回值也是真的。
(),reduc
三階矩陣乘三階矩陣的例題?
:的例子
輸入矩陣的行和列,分別輸入兩個矩陣,輸出矩陣相乘的結(jié)果。
#includebits/stdc。h
使用命名空間std
int main(){
int a,b,c;
Cout,請輸入兩個矩陣的行和列,:e ndl;
cinabc//分別輸入第一個矩陣的行,第二個矩陣的列,第二個矩陣的列。
int X[a][b],Y[b][c],Z[a][c];//打開三個二維數(shù)組存儲矩陣,注意乘法結(jié)果的行列值。
Cout請輸入第一個矩陣:e ndl;
for(int i0;ia;I)矩陣{//的行
for(int j0;JB;J ){ //矩陣的列
cinX[I][j];
}
}
Cout請輸入第二矩陣:e ndl;
for(int i0;IB;I)矩陣{//的行
for(int j0;JC;J ){ //矩矩陣的列
cinY[I][j];
}
}
memset(Z,0,sizeof(Z));//將二維數(shù)組z初始化為0。
//int temp 0;
cout矩陣相乘的結(jié)果是:endl;
for(int i0;ia;i ){
for(int j0;JC;j ){
for(int k0;kb;k ){
Z[I][j]Z[I][j]X[I][k]* Y[k][j];//行和列的乘積和就是對應(yīng)的結(jié)果值。
//temptemp X[I][k]* Y[k][j];
}
coutZ[I][j];//計算一后輸出。
//cout temp;
//temp 0;
}
coutendl//計算完一列后輸出換行符。
}
返回0;
}
//這個程序也可以直接將結(jié)果累加到temp中輸出,而不需要開發(fā)二維數(shù)組矩陣來存儲結(jié)果。
//輸出后將temp中的值重置為0。
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
四十二個
43
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
四十二個
43
請注意memset函數(shù):
Memset函數(shù)用于初始化指定的內(nèi)存空間。
memset(Z,0,sizeof(Z));//將二維數(shù)組z初始化為0。
int float long string sizeof函數(shù)返回數(shù)組元素空間中4的倍數(shù)(一個元素占用4個字節(jié))。
char sizeof函數(shù)返回數(shù)組元素的空間大小(一個元素占1個字節(jié))。
double sizeof函數(shù)返回數(shù)組元素空間中8的倍數(shù)(一個元素占8個字節(jié))。
拿出矩陣乘法的方法體
#includebits/stdc。h
使用命名空間std
Intjzcheng (int * q,int * w,int h,int l,int k)//定義兩個指針,指向二維數(shù)組變成一維數(shù)組后的第一個地址。
{
int Z[h][k];//h*k
//內(nèi)存集(Z,0,sizeof(Z));//將二維數(shù)組z初始化為0。
//int temp 0;
//cout矩陣相乘//的結(jié)果是:endl;
//cout
;
for(int I 0;I h;我)
{
for(int j 0;j k;j)
{
z[I][j]0;
for(int n 0;n l;n)
{
Z[I][j]Z[I][j]q[I * l n]* w[n * k j];//行和列的乘積和就是對應(yīng)的結(jié)果值。仔細(xì)想想為什么會這樣,把它當(dāng)成一維數(shù)組。
//temptemp X[I][k]* Y[k][j];
}
cout Z[I][j];//計算一后輸出。
//cout temp;
//temp 0;
}
標(biāo)準(zhǔn)輸出
;
}
}
int main()
{
int a,b,c;
Cout,請進(jìn)入兩個矩陣的行列,: ENDL;
公元前200年的CIN;//分別輸入第一個矩陣的行,第二個矩陣的列,第二個矩陣的列。
int X[a][b],Y[b][c];//打開三個二維數(shù)組存儲矩陣,注意乘法結(jié)果的行列值。
Cout,請輸入第一個矩陣: ENDL;
for(int I 0;我a;I) //矩陣的行
{
for(int j 0;j b;J) //矩陣的列
{
CIN X[I][j];
}
}
Cout,請輸入第二矩陣: ENDL;
for(int I 0;I b;I) //矩陣的行
{
for(int j 0;j c;J) //矩陣的列
{
CIN Y[I][j];
}
}
jzcheng(*X,*Y,a,b,c);
//也可以寫成jzcheng(X[0],Y[0],a,b,c);兩者都表示一維數(shù)組,元素以[0][0]開頭;可以用作指針
返回0;
}
//這個程序也可以直接將結(jié)果累加到temp中輸出,而不需要開發(fā)二維數(shù)組矩陣來存儲結(jié)果。
//輸出后將temp中的值重置為0。
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
3233
34
35
36
37
38
39
40
41
四十二個
43
四十四
45
46
47
48
四十九個
50
51
五十二個
53
54
55
五十六歲
57
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
四十二個
43
四十四
45
46
47
48
四十九個
50
51
五十二個
53
54
55
五十六歲
57
用向量定義二維數(shù)組,避免指針情況。
#includebits/stdc。h
使用命名空間std
int jzcheng(矢量向量X,矢量向量Y,int h,int l,int k)
{
int Z[h][k];//h*k
memset(Z,0,sizeof(Z));//將二維數(shù)組z初始化為0。
//int temp 0;
cout矩陣相乘的結(jié)果是:endl;
//cout
;
for(int I 0;I h;我)
{
for(int j 0;j k;j)
{
//Z[I][j]0;
for(int n 0;n l;n)
{
Z[I][j]Z[I][j]X[I][n]* Y[n][j];//行和列的乘積和就是對應(yīng)的結(jié)果值。
//temptemp X[I][k]* Y[k][j];
}
cout Z[I][j];//計算一后輸出。
//cout temp;
//temp 0;
}
標(biāo)準(zhǔn)輸出
;
}
}
int main()
{
int a,b,c;
Cout,請進(jìn)入兩個矩陣的行列,: ENDL;
公元前200年的CIN;//分別輸入第一個矩陣的行,第二個矩陣的列,第二個矩陣的列。
向量向量X;
向量向量Y;
(一);
for(int i0;();i ){
X[i]。調(diào)整大小(b);
}
(b)和:
for(int i0;();i ){
Y[i]。調(diào)整大小(c);
}//打開三個二維數(shù)組存儲矩陣,注意乘法結(jié)果的行列值。
標(biāo)準(zhǔn)輸出請輸入第一個矩陣: ENDL;
for(int I 0;我a;I) //矩陣的行
{
for(int j 0;j b;J) //矩陣的列
{
CIN X[I][j];
}
}
Cout,請輸入第二矩陣: ENDL;
for(int I 0;I b;I) //矩陣的行
{
for(int j 0;j c;J) //矩陣的列
{
CIN Y[I][j];
}
}
jzcheng(X,Y,a,b,c);
返回0;
}