#include<stdio.h>
#include<stdlib.h>
int main(){
int n=3,i,j,k;
float a[n][n+1],A,Q[n+1];
//input a[i][j] b[i]
for (i=0;i<n;i++) {
for (j=0;j<n;j++){
printf("a[%d][%d]= ",i+1,j+1);
scanf("%f",&a[i][j]);
}
}
for(k=0;k<n;k++)
{
printf("b[%d]=",k);
scanf("%f",&a[k][n]);
}
//輸出
for (i=0;i<n;i++) {
for (j=0;j<n+1;j++){
printf("%5.2f",a[i][j]);}
printf("\n");}
//高斯消去法
for (i=0;i<n;i++){
if(a[i][i]==0){
j=i+1;
while(a[j][i]==0){
j++;
}
if(n<=j){printf("bye");return;}
printf("%d",j);
for(k=0;k<n+1;k++){Q[k]=a[i][k];a[i][k]=a[j][k];a[j][k]=Q[k];}}
//高斯消去法
for(j=0;j<n;j++){
if (i!=j){
//row vector +/-
A=a[j][i]/a[i][i];
for (k=0;k<n+1;k++){
a[j][k]=((-1)*(A))*a[i][k]+a[j][k];}}}}
printf("--------------------------------------------\n");
for (i=0;i<n;i++) {
for (j=0;j<n+1;j++){
printf("%10.2f",a[i][j]);}
printf("\n");}
return 0;
}
可以問一下為什麼要用#include嗎?
回覆刪除因為我幾乎沒有看到筆者使用內的指令阿
因為...-_-我其實是亂加上去的 哈哈哈哈
刪除我很不專業阿XD
抱歉 少打了 stdlib.h
刪除因為之前很習慣就把一串include弄上去,
刪除那時候還沒思考會不會用到,很抱歉拉 造成你的困擾
喔喔 了解 感謝筆者分享~~~
刪除