2016-08-19 8 views
-1

ここは私がC言語で書いたコードです。しかし、私はbashスクリプトでこのコードを書く方法を知らない。してください、誰も私にこれを助けることができますか?どのようにしてこの種のforループをbashシェルスクリプトで書くことができますか?

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 
    } 
+0

あなたはまた、それが動作するかどうか指定した解決策を受け入れる必要があります... –

答えて

1

これは使用できます。

#!/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 
+0

それが動作します。 muzidoさん、ありがとうございました。 –

+0

@モハメッドヌジョーあなたはansを受け入れることができます。それがうまくいくならば、pls –

+0

ムジドさん。これで私を助けてくれますか?私はP []、k [] []、t []のような配列の数を持っています。どのように私は書くことができます、pls。 0] = t [0])+(k [0] [1] * t [1]); p [0] =(k [0] [0] * t [0]);; –

関連する問題