亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

關于C語言解線性方程的方法

2020-02-24 14:24:45
字體:
來源:轉載
供稿:網友

關于C語言解線性方程的方法是不是有很多小伙伴們不了解呢?那么我們今天就帶著疑問一起跟小編去學習C語言解線性方程的四種方法,希望本文對你有一定的幫助。

發(fā)了好幾天編了個解線性方程組的小程序,可第一次實戰(zhàn)就大敗而歸。經過半天的調試,仍找不出糾正的方法。因為并不是算法的問題,而是因為自己對編譯器處理 浮點函數(shù)的方法不是很理解。明明D=0的方陣解出來不等于0了,跟蹤調試發(fā)現(xiàn),計算過程程序對數(shù)據(jù)進行了舍去處理,導致最終結果不對。不過如果沒有浮點型 的話,這個程序應該算不錯了 。
?

?

#include<stdio.h>
#include<math.h>
#include<mem.h>
#define NUM 100
void print(void)???? /* 使用說明 */
????? { clrscr();
??????? printf("/n/n/n/n/n/t/t/t/t Introduction /n");
??????? printf("/t*--------------------------------------------------------------*/n");
??????? printf("/t*??? This program was design for compute linear equations.?????? */n");
??????? printf("/t*??? The way of use it is very simple.?????????????????????????? */n");
??????? printf("/t*??? First : Input the number of the equation;(Input 0 to exit) */n");
??????? printf("/t*??? Second: Input the coefficient of every eqution;???????????? */n");
??????? printf("/t*??? Third : Input the constant of every eqution;??????????????? */n");
??????? printf("/t*??? Last : Chose the way you want use to solve the equtions; */n");
??????? printf("/t*??? That's all, input any key to run it . . .?????????????????? */n");
??????? printf("/t*-------------------------By__TJX------------------------------*/n");
??????? getch(); }

void chose(void)??? /*選擇計算方法*/
??? { clrscr();
?????? fflush(stdin);
??????? printf("/n/n/n/n/n/t/t**********Introduction********** /n");
????????????????? printf("/t/t* Chose the way,please.??????? * /n");
????????????????? printf("/t/t* a : Gauss eliminant.???????? * /n");
????????????????? printf("/t/t* b : Gauss_yd eliminant.????? * /n");
????????? printf("/t/t* c : Iterative way.?????????? * /n");
????????????????? printf("/t/t* d : Cramer way.????????????? * /n");
????????????????? printf("/t/t* e : exit.??????????????????? * /n");??????????????
????????????????? printf("/t/t*************By__TJX************ /n");
????????????????? printf("/t/tPlease choose number :/n");}

void input(double **a1,double b1[],int num)??? /*數(shù)據(jù)輸入*/
???? { int i,j,t;
?????? double *p;
?????? char de1,de2;
do{
???? printf("Please input array a[%d][%d]: /n",num,num);
???? printf("Warn: The first number of the array mustn't contain zero! /n");
??? for(i=1;i<=num;i++)
????? {printf("Please input array a[%d][]: /n",i);
?????? for(j=1;j<=num;j++)
?????? {t=0;
???????? if(i==1&&j==1)
????????? { do{
?????????? if(t==0) { scanf("%lf",&a1[i][j]); t++;}
??????????? else {printf("The input is invalid,please input again:/n"); scanf("%f",&a1[i][j]);}
?????????? }while(a1[i][j]==0);}
???????? else scanf("%lf",&a1[i][j]);}}
????? printf(" /nPlease check the value of array a[%d][%d],press Y to input again./n",num,num);
????? do{
???????? de1=getch();
???????? }while(de1!='y'&&de1!='Y'&&de1!='n'&&de1!='N');
??? }while(de1=='y'||de1=='Y');
??? do{
?????? printf("Please input array b[%d]: /n",num);
?????? p=b1+1;
?????? for(i=1;i<=num;i++)
??????? scanf("%lf",p++);
?????? printf(" /nPlease check the value of array b[%d],press Y to input again./n",num);
??????? do{
???????? de2=getch();
???????? }while(de2!='y'&&de2!='Y'&&de2!='n'&&de2!='N');
??? }while(de2=='y'||de2=='Y');}

?
int max(double *t1, double x1[],int n)??? /*迭代子函數(shù)*/
???? { int i,temp=0;
?????????? for(i=1;i<=n;i++)
????????? if(fabs(x1[i]-t1[i])>1e-2) {temp=1;break;}
???? /* printf("??? %d??? ",temp); */
????????? return temp;
???? }

int ddcompute(double **a1,double b1[],double x1[],int n) /*迭代法計算*/
????? {double *t;
?????? int i,j,k=0;
?????? double sum1=0.0,sum2=0.0;
?????? t=(double*)malloc(n*sizeof(double));
?????? printf("/nPlease Input The Initial Value of x:/n");
???????? for(i=1;i<=n;i++)
???????? scanf("%lf",&x1[i]);
??????? do{ k++;
???????? for(i=1;i<=n;i++)
???????????? t[i]=x1[i];
?????????? for(i=1;i<=n;i++)
??????????? { sum1=0.0;sum2=0.0;
??????????? for(j=1;j<=i-1;j++) sum1=sum1+a1[i][j]*x1[j]; /*printf(" sum1= %0.4f ",sum1);*/

?????????????? for(j=i+1;j<=n;j++) sum2=sum2+a1[i][j]*t[j]; /* printf(" sum2= %0.4f ",sum2);}*/
?????????? if(a1[i][i]==0||fabs(sum1)>1e+12||fabs(sum2)>1e+12)
????????? {printf(" /nWarning: These equtions can't be solve by this way!/n Press any Key to continue...");
????????? getch();
?????????????????? free(t);
????????? return 0;}
??????????? x1[i]=(b1[i]-sum1-sum2)/a1[i][i];}
???? }while(max(t,x1,n));
???? /* for(i=1;i<=n;i++)
??????????????? {if(i%3==0) printf("/n");
????????? printf("??? %.4f??? ",x1[i]);}*/
???? free(t);
?????????? return 1; }

int gscompute(double **a1,double b1[],double x1[],int n) /*高斯消元法計算*/
???? {int i,j,k;
????? double m,sum;
????? for(k=1;k<=n-1;k++)
????? for(i=k+1;i<=n;i++)
???? { if(a1[k][k]==0) {printf(" /nThese equtions can't be solve is this way./n Press any Key to continue...");
????????? getch();
?????????????????? return 0; }
???????? if((m=0-a1[i][k]/a1[k][k])==0) {i++; continue;}
???? else {for(j=k+1;j<=n;j++)
??????????? a1[i][j]=a1[i][j]+a1[k][j]*m;
???? b1[i]=b1[i]+b1[k]*m;}}
/* yi xia ji suan x zhi */
??? x1[n]=b1[n]/a1[n][n];
??? for(i=n-1;i>=1;i--)
???? {sum=0.0;
???? for(j=n;j>=i+1;j--)
???? sum=sum+a1[i][j]*x1[j];
????? x1[i]=(b1[i]-sum)/a1[i][i];}
????? return 1;??? }

int gs_ydcompute(double **a1,double b1[],double x1[],int n) /*高斯_約當法計算*/
???? {int i,j,k;
????? double m,sum;
????? for(k=1;k<=n;k++)
???????? {i=1;
?????????? while(i<=n)
??????????? { if(a1[k][k]==0) {printf(" /nThese equtions can't be solve is this way./n Press any Key to continue...");
????????? getch();??????????????????? return 0;}
??????????????? if(i!=k)
????????????????? { if((m=0-a1[i][k]/a1[k][k])==0) {i++; continue;}
???????????????? else {for(j=k+1;j<=n;j++)
??????????????????????? a1[i][j]=a1[i][j]+a1[k][j]*m;
??????????????????????? b1[i]=b1[i]+b1[k]*m;}
??????????????????? i++;}
???????????????? else i++;??? }}
/* yi xia ji suan x zhi */???
??? for(i=n;i>=1;i--)
???? x1[i]=b1[i]/a1[i][i];
???? return 1;}

?
double computed(double **a,int h,int l, int *c1,int n) /*計算系數(shù)行列式D值*/
?????? { int i, j,p=1;
??? double sum=0.0;
??????? if(h==n)
?????????????? sum=1.0;
??????? else {
?????????????? i=++h;
?????????????? c1[l]=0;
?????????????? for(j=1;j<=n;j++)
????????????????? if(c1[j])
??????????????????? if(a[i][j]==0) p++;
??????????????????? else {sum=sum+a[i][j]*computed(a,i,j,c1,n)*pow(-1,1+p); p++; }???????????????? c1[l]=1; }
?????? return sum; }
void ncompute(double **a,double b[],double x[],int n,int *c,double h)????? /*克萊姆法計算*/
????? {int i,j;
?????? double t[NUM];
??????? for(j=1;j<=n;j++)
???????? { for(i=1;i<=n;i++)
???????????? {t[i]=a[i][j];a[i][j]=b[i];}
???? x[j]=computed(a,0,0,c,n)/h;
?????????? for(i=1;i<=n;i++)
????????????? a[i][j]=t[i]; }
???????? }

main()
{double x[NUM];
double b[NUM];
int i,j=2,n=0;
int *c;
double he;
char m,decision;
double **a;
a=(double**)malloc(NUM*sizeof(double*));
for (i=0; i<NUM; i++)
a[i]=(double*)malloc(NUM*sizeof(double));
??? print();
do{
??? clrscr();
??? do{
?????? if(n>=NUM) printf("n is too large,please input again:/n");
?????? else
????????? printf("Please input the total number of the equations n(n<NUM): /n");
????????? scanf(" %d",&n);
?????? }while(n>NUM);
??? if(n==0) {for(i=1; i<NUM; i++) free(a[i]);
????????????????? free(a); exit(1);}
??? input(a,b,n);
??? c=(int *)malloc((n+1)*sizeof(int));
??? memset(c,1,(n+1)*sizeof(int));
??? he=computed(a,0,0,c,n);
?????? if(fabs(he)>1e-4)???
???????? {
????????? Other:??? chose();
????????? do{
???????????? m=getche();
??????????? }while(m!='a'&&m!='b'&&m!='A'&&m!='B'&&m!='c'&&m!='C'&&m!='d'&&m!='D'&&m!='e'&&m!='E');
????????? switch(m)
?????????? { case 'a': ;
?????????? case 'A': j=gscompute(a,b,x,n);???? break;
?????????? case 'b': ;
?????????? case 'B': j=gs_ydcompute(a,b,x,n); break;
?????????? case 'c': ;
?????????? case 'C': j=ddcompute(a,b,x,n);???? break;
?????????? case 'd': ;
?????????? case 'D': j=1; ncompute(a,b,x,n,c,he); break;
?????????? case 'e': ;
?????????? case 'E': j=2; break;
????????????? default: j=2; break;
?????????? }
????????? if(j==1)
??????????? {??? clrscr();
??????????????? printf("/n/n/n/n");
??????????????? printf("???? D=%.4f /n",he);
??????????????? for(i=1;i<=n;i++)
????????????????? {if(i%5==0) printf("/n");
??????????????????? printf("??? %.4f??? ",x[i]);}
??????????? }
????????? else if(j==0)???
??????????? {printf(" /nThese equtions can't be solve is this way./nPlease chose the other way."); goto Other;}
????????? else {for(i=1; i<NUM; i++) free(a[i]);
????????? free(a);
????????? free(c);
????????? exit(1);}
???????? }
?????? else printf(" /n/n/tD=%.4f/n This linear equations hasn't accurate answer!",he);
?????? printf(" /n Do you want to continue?(Y/N) /n");
?????? do{
?????????? decision=getchar();}while(decision!='y'&&decision!='Y'&&decision!='n'&&decision!='N');
???????? }while(decision=='y'||decision=='Y');
for(i=1; i<NUM; i++) free(a[i]);
free(a);
free(c);}

以上就是關于C語言解線性方程的方法,文章中小編主要介紹了C語言解線性方程的四種方法,大家參考使用,學習線性代數(shù)的同學一定能用到。?

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

精品国产免费一区二区三区香蕉| 亚洲一区免费在线观看| 成人av电影在线| 黄色片子免费看| 日韩高清成人在线| 99欧美精品| 日韩在线视频免费观看高清中文| 亚洲精品在线观看网站| 婷婷亚洲婷婷综合色香五月| 久久九九免费| 国产精品三级久久久久久电影| 黄瓜视频18免费观看| 在线观看av资源网| 五月天av在线播放| 91蜜桃网址入口| 播五月开心婷婷综合| 亚洲蜜桃在线| 在线免费观看av网站| 欧美18—20岁hd第一次| 午夜视频在线观看一区二区| 国产毛片在线视频| 91日韩视频| 日韩精品久久久久久久电影99爱| 极品美女销魂一区二区三区| 韩国精品一区二区| 国产精品久久久久天堂| 在线国产情侣| а√天堂资源国产精品| 99精品人妻少妇一区二区| julia中文字幕久久亚洲蜜臀| 欧美喷潮久久久xxxxx| 国产视频每日更新| 中文欧美在线视频| 亚洲私拍视频| 欧美日韩激情| 91福利入口| 精品久久久久久中文字幕人妻最新| 国产中文av在线| 人妖粗暴刺激videos呻吟| 日本深夜福利视频| 人妻互换一区二区激情偷拍| 一级片免费视频| 91麻豆桃色免费看| 亚洲av无码一区二区乱子伦| 日韩av激情| 无码精品人妻一区二区| 韩国成人在线| 久久久这里只有精品视频| 天天操夜夜草| 欧美在线资源| 中文字幕精品一区二区三区在线| 久草精品视频在线观看| 午夜视频一区在线观看| 亚洲美女av网站| 91亚洲精华国产精华精华液| 黄色激情网址| 亚洲精品国产精品国自产网站| 在线观看av影片| 国产绿帽刺激高潮对白| 在线看黄色的网站| 国产精品久久久久国产精品日日| 喷水一区二区三区| 日韩电影在线看| 91麻豆精品在线观看| 中文字幕日韩有码| 特一级黄色录像| 尤物在线免费视频| 成人欧美一区二区三区小说| 欧美国产日产韩国视频| 美女福利一区| 免费的av在线| 97在线免费视频| 神马精品久久| 91视频免费版污| 国产日韩欧美制服另类| 国产精品av网站| 亚洲精品网址在线观看| 91精品国产美女浴室洗澡无遮挡| 亚洲a∨无码无在线观看| fc2ppv完全颜出在线播放| 日韩欧美美女在线观看| 性刺激的欧美三级视频| 久久综合九九| 91精品xxx在线观看| 欧美aaa免费| 五月婷婷丁香色| 精品无码一区二区三区的天堂| 天天操天天干天天爱| aaa国产视频| 久久久久毛片| 日韩午夜在线观看视频| 九九久久久久99精品| 色婷婷综合久久久中文字幕| 日韩av不卡在线播放| 蜜桃传媒视频麻豆第一区免费观看| 嫩草www视频在线观看高清| 在线国产99| 国产在线一区二区三区播放| 色综合视频一区二区三区44| 国产精品伊人久久| 先锋av资源站| 中文字幕被公侵犯的漂亮人妻| 永久免费精品视频网站| 在线一区二区不卡| av在线播放观看| 激情无码人妻又粗又大| 人妻精品久久久久中文字幕| 欧美在线观看黄| 欧美xxxx吸乳| 综合网五月天| 亚洲国产欧洲综合997久久| 亚洲成人在线免费| 精品一区二区在线观看视频| 久久成人综合| 亚洲黄色免费在线观看| 91亚洲精华国产精华精华液| 不卡欧美aaaaa| 午夜精品久久久久久久99水蜜桃| 亚洲视频资源| 老汉色老汉首页av亚洲| 久久久精品人体av艺术| 美女被艹视频网站| 中文字幕免费一区二区| 最新黄色片网站| 国产精品国产自产拍高清av水多| 亚洲欧美日韩精品在线| 久久久精品福利| 成人三级网址| 亚洲精品成人无码熟妇在线| 色综合久久中文字幕综合网小说| 亚洲男人都懂第一日本| 99爱免费视频| 久久久久久久久久综合| 午夜视频在线观看精品中文| 亚洲天堂久久av| 国产精品劲爆视频| 亚洲欧美日韩国产精品| 天天操天天舔天天干| 久久久久麻豆v国产精华液好用吗| 日本高清视频在线播放| 亚洲欧美一级| 中文字幕一区二区三区四区免费看| 久久久久国产精品免费| 2022国产麻豆剧果冻传媒剧情| 成人欧美一区二区三区黑人免费| 中文精品在线观看| 亚洲精品成a人在线观看| 91网站在线免费观看| 狠狠躁少妇一区二区三区| 亚洲成va人在线观看| 亚洲天堂av一区二区| 亚洲综合色丁香婷婷六月图片| 91亚洲精品在看在线观看高清| 51国产偷自视频区视频| 亚洲欧洲精品一区二区精品久久久| 成人高清视频免费观看| 国产精品入口芒果| 国产精品186在线观看在线播放| 手机在线免费看毛片| 在线看黄网站| 91国产视频在线观看| 高清国产福利在线观看| 中文字幕综合在线| 一区二区三区亚洲视频| 久久av喷吹av高潮av| av网站大全免费| aiai久久| 伊人成综合网伊人222| 亚洲综合久久网| 伊人久久成人网| 日韩人妻无码一区二区三区| 搡老女人一区二区三区视频tv| 妞干网视频在线观看| 国产日韩欧美一区二区三区| 手机亚洲手机国产手机日韩| 国产精品免费久久| 日韩一区二区三区观看| 粉嫩av免费一区二区三区| 日本欧洲国产一区二区| 最新欧美色图| 国产精品啪啪啪视频| 激情小说网站亚洲综合网| 久久一留热品黄| 91欧美日韩一区| 亚洲尤物在线视频| www.国产黄色| 日本亚洲欧美| 色综合综合色| 国产亚洲欧美在线| 18以下岁禁止1000部免费| 亚洲一二区视频| 91免费视频国产| 国产剧情av在线播放| 免费看片91| 欧美精品日韩三级| 欧美日韩乱国产| 色网站在线免费观看| 国内免费久久久久久久久久久| 91精品啪在线观看国产60岁| 国产一区二区精品丝袜| 99久久精品免费观看国产| 特级丰满少妇一级| 精品国产人成亚洲区| 精品视频在线一区二区| av片免费播放| 三上悠亚免费在线观看| 5g成人永久免费影院| 另类欧美日韩国产在线| 久久久久久久久国产精品| av福利精品导航| 青青在线视频观看| 亚洲色图21p| 日产中文字幕在线精品一区| **性色生活片久久毛片| 韩国黄色一级大片| 黄色欧美成人| 又色又爽又黄视频| 日韩成人午夜电影| 欧美一级在线播放| 国产高清在线a视频大全| 天天视频一区二区三区| 国产精品毛片a∨一区二区三区|国| 少妇光屁股影院| a级片在线免费| 91国拍精品国产粉嫩亚洲一区| 黄色a级在线观看| 欧美精品一区二区三区四区| www久久精品| av一区观看| eeuss免费天堂影院| 国产va免费精品高清在线| 欧美v国产在线一区二区三区| 欧美日韩精品高清| 国产永久免费高清在线观看| 中文字幕在线导航| 一区二区三区午夜探花| 黄色片免费看| 日本不卡一二区| h片在线观看网站| 91久久精品国产91久久性色tv| 日韩伦理一区二区三区| 我的公把我弄高潮了视频| 日本中文字幕视频在线| 国产女无套免费视频| 国产一在线精品一区在线观看| 国产高清一级毛片在线不卡| 亚洲欧美日韩国产一区二区三区| 中文一区在线观看| 欧美有码在线视频| 亚洲天堂av在线| 毛葺葺老太做受视频| 秋霞国产午夜精品免费视频| 亚洲一区二区久久| 国产毛片欧美毛片久久久| 久久精品卡一| 日韩片之四级片| 一本色道久久综合亚洲精品图片| 看片一区二区| 久久久久久国产精品视频| 欧美日韩精品区| 国产日产欧美精品一区二区三区| 欧美伊人久久大香线蕉综合69| 国产一二三四五区| 日韩黄色影视| 色哟哟亚洲精品一区二区| 视频一区二区综合| 精品国产一区二区三区四区在线观看| 日韩高清在线| 国产毛片毛片毛片| 亚洲视频在线观看免费视频| 亚洲国产高清在线观看| 欧美jizzhd欧美精品巨大| 亚洲精品v欧美精品v日韩精品| 97dyy97影院理论片在线| 欧美变态凌虐bdsm| 30一40一50老女人毛片| 狠狠操一区二区三区| 欧美高清一级片在线观看| 亚洲五码中文字幕| 日日夜夜一区二区| 久久无码精品丰满人妻| 久久国产精彩视频| 亚洲性生活大片| 亚洲人久久久| 水蜜桃亚洲一二三四在线| 国外成人在线视频| 久久露脸国语精品国产91| 日韩av在线播放观看| 国产精品免费91| 国产一区二区日韩精品欧美精品| 97人人模人人爽人人喊38tv| 国产亚洲精品美女久久久久久久久久| 日韩一级二级三级精品视频| 视频免费裸体网站| 国产一区玩具在线观看| 久久免费电影网| 亚洲视频在线观看免费| 玖玖精品视频| 九九热在线视频免费观看| av免费不卡| 国 产 黄 色 大 片| 玩弄中年熟妇正在播放| xxxxx中文字幕| 欧美三级乱码| 成人性生交大片免费观看嘿嘿视频| 亚洲色图美国十次| 久久精品国产免费看久久精品| 欧美成人久久久| 国产99久久久久| 日韩视频久久| 日韩在线电影| 顶级网黄在线播放| 青青青爽在线视频免费观看| 亚洲电影av在线| 午夜福利一区二区三区| 999精品视频在线观看| 国精产品一品二品国精品69xx| 国产精品午夜影院| 在线一级成人| 国产又猛又黄又爽| 可以在线看的av| 精品午夜一区二区三区在线观看| 国产毛片在线| 99久久精品费精品国产风间由美| www.欧美精品| 91老师国产黑色丝袜在线| 又污又黄的网站| 国产日韩网站|