這裏是我用c語言編寫的代碼。但我不知道如何在bash腳本中編寫這段代碼。請,任何人都可以幫助我嗎?如何在bash shell腳本中編寫這種for循環?
int d,k[2][2];
printf("enter the numbers:");
for(i=0;i<2;i++){for(j=0;j<2;j++){
scanf("%d",&k[i][j]);} //catch user input into 2D array
}
這裏是我用c語言編寫的代碼。但我不知道如何在bash腳本中編寫這段代碼。請,任何人都可以幫助我嗎?如何在bash shell腳本中編寫這種for循環?
int d,k[2][2];
printf("enter the numbers:");
for(i=0;i<2;i++){for(j=0;j<2;j++){
scanf("%d",&k[i][j]);} //catch user input into 2D array
}
你可以使用這個;
#!/bin/bash
declare -A array
n_rows=$1
n_columns=$2
for ((i=1;i<=n_rows;i++)) do
for ((j=1;j<=n_columns;j++)) do
read -p "Enter number [$i, $j] = : " number
array[$i,$j]=$number
done
done
for ((j=1;j<=n_columns;j++)) do
for ((i=1;i<=n_rows;i++)) do
printf "%s " ${array[$i,$j]}
done
echo
done
例:
[email protected]:/tmp$ ./test.sh 2 2
Enter nuber [1, 1] : 1
Enter nuber [1, 2] : 2
Enter nuber [2, 1] : 3
Enter nuber [2, 2] : 4
1 3
2 4
它的工作原理。非常感謝muzido先生。 –
@MohamedNuzhy你能接受答案嗎?如果有效,請撥打 –
Muzido先生..你能幫我解決這個問題嗎?我有像P [],K [] [],T []數組的數量,我想在bash中的以下c代碼。我怎麼寫,請。 p [0] =(k [0] [0] * t [0])+(k [0] [1] * t [1]); –
你也應該接受給出的解決方案,如果它的工作原理... –