中易网

c语言求n元一次方程组的根的代码

答案:1  悬赏:50  
解决时间 2021-01-14 14:36
  • 提问者网友:兔牙战士
  • 2021-01-13 14:52
c语言求n元一次方程组的根的代码
最佳答案
  • 二级知识专家网友:持酒劝斜阳
  • 2021-01-13 15:23
功能:已知有一三元一次方程组如下
,
方程系数由键盘输入,求其
3
个根。

*/
# include

int main(void)
{

int i, j, m, n, r, k=0, t; //i,j,m,k,t
作为循环计数变量;
n
表示有
n
个未知数,即
n
元;
r
表示有
r
个方程组成方程组。

//
n = r = 3;

printf("
请输入未知数个数
n
和方程的个数
:\n");

scanf("%d %d", &n, &r);//n
表示有
n
个未知数,即
n
元;
r
表示有
r
个方程
组成方程组。

float a[11][20];//
用二维数组存储方程组参数。
11

100
课改动。这里
的程序限
10

20
个方程的方程组。

float b[200];//
原来存放之间变量。

printf("
请输入方程组参数
\n");

for(j=0; j
for(i=0; i
scanf("%f", &a[j][i]);



if(r
printf("
方程有无穷解
\n");

if(r==n)

{

printf("
方程有唯一解
\n");

for(t=0; t循环次数:当
t=0
时,仅将
a[1][0],a[2][0],a[2][1]
的值转换为
0

t=1
时,才将其转换成最简型阶梯矩阵。

{

for(m=0; m表示第
m


for(j=0; j表示第
j


if(j!=m)

{

b[k] = a[j][m]/a[m][m];

for(i=0; i因为一行的每个
元素均要进行运算等式两边才会相等。

a[j][i] -= a[m][i]*b[k];

b[k]=0;//
此处是必不可少的。因为内
存中会有垃圾值,必须要处理。

k++;

}

}

for(j=0; j为了将其转换成单位矩阵,见《线性代数》第
98
页。

{

a[j][n] /= a[j][j];

a[j][j] /=a[j][j];
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息