tft每日頭條

 > 生活

 > c語言一元二次方程的解的編程代碼

c語言一元二次方程的解的編程代碼

生活 更新时间:2024-12-18 17:50:29

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)1

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

數學基礎:一元二次方程

隻含有一個未知數(一元),并且未知數項的最高次數是2(二次)的整式方程叫做一元二次方程。标準形式為:ax² bx c=0(a≠0)

求解公式:求根公式法

用求根公式法解一元二次方程的一般步驟為:

①把方程化成一般形式

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)2

,确定a,b,c的值(注意符号);

②求出判别式

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)3

的值,判斷根的情況;

③在

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)4

(注:此處△讀“德爾塔”)的前提下,把a、b、c的值代入公式

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)5

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

這樣的做法,很簡單,我想學過C語言,稍微用點力 應該就是沒有問題的。

驚奇的是小編想輸入x^2 2x 1=0 的方式去做,意思是直接輸入這樣一個字符串的方式去求解,然後瞬間很多人直接懵逼了吧! 即運行結果需如下:

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)6

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

或者

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)7

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

這,是不是有點意思,有點難度?

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)8

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

驚奇解法

首先求根方式不變: 用函數進行封裝

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)9

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

從上可以看出獲取 a,b,c 才是關鍵,把問題轉換為字符串處理

于是就有這樣一個函數:int finStringA(char *str, int length, char *posStr,int posLength)

char *str: 被查詢的字符串 int length:該字符串長度

char *posStr:目的字符串 int posLength:,目的字符串的長度

作用:查詢x或者x^2 出現的位置,并返回

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)10

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

查找到相應字符串後,還需要返回a ,b, c等字符串于是有這樣一個函數:

本來想用截函數,懶得查找前一個位置,就自己寫了個截取函數

void getCharABC(char *str, int length,int Pos,char *posStr,int& flag)

char *str:原字符串 int length:原字符串長度 int Pos :指定位置

char *posStr: 存儲a,b,c int& flag:正負标記,(後面發現存在這樣一個bug)

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)11

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

經過上面的函數處理後貌似得到的a和b以及c字符串是逆序的,所以又寫了個逆轉字符串函數

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)12

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)13

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

總結:

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)14

好玩,有趣,專業C/C 學習交流,源碼下載 群:99816772

c語言一元二次方程的解的編程代碼(C語言求一元二次方程的根)15

一個簡單的題,基本上把字符串中的的很多函數都用上了,即提高了自己的能力,也複習了相關知識。希望初學者對此有一個更加深刻一點的認識,不要拘泥于語法的限制,編程語言服務于編程思想。學到了真正的編程思想,才叫貨真價實的懂編程。不能為了做題而做題,要多思考,多變通

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved