标签:
我要被下标搞晕了。越来越觉得写这些没意思了。
#include<stdio.h> #include<math.h> #include<windows.h> #define M 50 void input(double a[M][M + 1], int n); void output(double x[M], int n); void main(void) { double a[M][M + 1], x[M], s; int i, j, k, n; printf("请输入原方程组的阶数:\n"); scanf_s("%ld", &n); input(a, n); for (k = 0; k < n - 1; k++) { for (i = k + 1; i < n; i++) { a[i][k] /= -a[k][k]; for (j = k + 1; j < n + 1; j++) a[i][j] += a[i][k] * a[k][j]; } } for (k = n-1; k >= 0; k--) { s = 0; for (j = k + 1; j < n; j++) s += a[k][j] * x[j]; x[k] = (a[k][n] - s) / a[k][k]; } output(x, n); system("pause"); } void input(double a[M][M+1],int n) { int i, j; printf("请输入方程组的增广矩阵:\n"); for (i = 0; i < n; i++) { for (j = 0; j < n+1; j++) scanf_s("%lf", &a[i][j]); } } void output(double x[M],int n) { int k; printf("方程组的解为:\n"); for (k = 0; k < n; k++) printf("%lf", x[k]); }
嗯,没有写完运行出来的快感了。
标签:
原文地址:http://www.cnblogs.com/scian102/p/4757141.html