>>127 問1
逆行列がぴったり整数になる事は少ないので勝手に実数で計算したよ
#include <stdio.h>
int main(void)
{
int i, j, k, a[2][2];
double p, q, b[2][2];
for (i = 0; i < 2; i++)
for (j = 0; j < 2; j++) {
printf("a[%d][%d]=", i, j);
scanf("%d", &a[i][j]);
b[i][j] = a[i][j];
}
for (k = 0; k < 2; k++) {
p = b[k][k];
b[k][k] = 1.0;
for (j = 0; j < 2; j++)
b[k][j] /= p;
for (i = 0; i < 2; i++)
if (i != k) {
q = b[i][k];
b[i][k] = 0.0;
for (j = 0; j < 2; j++)
b[i][j] -= q * b[k][j];
}
}
for (i = 0; i < 2; i++)
for (j = 0; j < 2; j++)
printf("b[%d][%d]=%f\n", i, j, b[i][j]);
return 0;
}