您当前的位置:首页 > 互联网教程

c语言用迭代法编程求近似根

发布时间:2025-05-13 01:13:51    发布人:远客网络

c语言用迭代法编程求近似根

一、c语言用迭代法编程求近似根

牛顿迭代法又称牛顿切线法,它采用以下方法求根:先任意设定一个与真实的根接近的值x0作为第一个近似根,由x0求出f(x0),过(x0,f(x0))点做f(x)的切线,交x轴于x1,把它作为第二次近似根,再由x1求出f(x1),再过(x1,f(x1))点做f(x)的切线,交x轴于x2,再求出f(x2),再作切线……如此继续下去,直到足够接近真正的x为止。

其中f'(X0)是函数在X0处的斜率,也就是在X0处的导数。

float f(float a,float b,float c,float d,float x)

float f1(float a,float b,float c,float x)

float root(float a,float b,float c,float d)

x1=x0-f(a,b,c,d,x0)/f1(a,b,c,x0);

printf("input four float numbers:\n");

scanf("%f%f%f%f",&a,&b,&c,&d);

printf("%.1fX^3+%.1fX^2+%.1fX+%.1f=0 its root near x=1.5 is:%.4f\n",a,b,c,d,x);

二、c语言一元二次方程求根程序

1、手动输入三个系数,分别代表二次项系数、一次项系数、常数项。

2、判断输入的二次项系数是否为0,如果为0,提示“输入的第一个值不合法,请重新输入!”。

3、如果二次项系数不为0,利用根的判别式,计算一元二次方程是否有根。

4、如果判别式Δ>= 0,代表方程有两个根,输出根。

5、如果Δ< 0,提示“方程无根”。

6、c语言一元二次方程求根程序算法的构思过程:

7、一元二次方程的一般式:ax^2+bx+c=0。

8、我们知道,一元二次方程有解(根)的充要条件是:b^2-4ac>=0。如果不满足此关系式,那么方程无解。接着当方程有解的时候又出现了两种情况。

9、有两个重根(大小相等的根)或者两个大小不等的根,为了是程序更加完善还要考虑到a=0的情况,即此时不能看做一元二次方程而只能将其看作一元一次方程,本程序运用求根公式来实现功能。

三、计算机二级c语言考试内容

1、1结构体(人员记录查找)字符串(找子串)字符串(删除字符串中的某些字符)

2、2结构体(人员记录查找)素数(为素数的因子)结构体(学生记录查找)

3、3结构体(学生记录运算)阶乘二维数组(左下三角运算)

4、4结构体(人员记录排序)字符串(字符串的连接)二维数组(左下三角运算)

5、5结构体(人员记录查找)数字交换(a,b的值交换)二维数组(每列的最小元素)

6、6结构体(学生记录运算)整型一维数组(找最大值和次最大值)正整数(整数拆散)

7、7字符串(几个字符串按长度来排序)字符串(查找,插入操作)字符串(内容逆置)

8、8字符串(找最长字符串,左边插入*)阶乘字符串(删除字符串中的某些字符)

9、9字符串(找最长字符串,右边插入*)字符串(每个单词的最后一个字母变大写)字符串(除首尾排序)

10、10字符串(找最长字符串和它的行下标)数学公式字符串(找子串)

11、11二维数组(右上三角运算)数学公式字符串(删除前导*)

12、12二维数组(对角线运算)折半查找字符串(删除除了尾部的*)

13、13二维数组(对角线运算)二分法求根字符串(删除除了前导和尾部的*)

14、14一维数组(删除偶数)最大公约数字符串(删除所有的*)

15、15一维数组(删除奇数)数学公式字符串(删除尾部多余的*)

16、16一维数组(元素移动)数列结构体(学生记录运算)

17、17一维数组(元素移动)一维数组(求平均值)结构体(学生记录运算)

18、18一维数组(元素移动) 3个数比较大小结构体(学生记录运算)

19、19一维数组(元素移动)进制转换结构体(学生记录查找)

20、20字符串(数字字符转换)字符串(字符复制)链表(求平均分)

21、21字符串(字母转换)一维数组(元素移动)求一个数的所有因子之和

22、22数学公式红黑白三种球分组数学公式

23、23数学公式正整数(整数拆散)数学公式

24、24数学公式正整数(整数拆散比较各位是否相等)数学公式(方差)

25、25数学公式正整数(整数拆散求和)一维数组(求平均值)

26、27正整数(整数拆散统计个数)正整数(整数拆散统计个数)数学公式

27、28素数素数数学计算(能被5或9整除的数的倒数和)

28、30比较大小(找中间的数)字符串(字母转换)数学公式

29、31正整数(整数拆散求和)字符串(内容逆置)正整数(整数合并)

30、32正整数(整数拆散求和)正整数(整数拆散重组)结构体(学生记录排序)

31、33正整数(整数拆散重组)二维数组(对角线运算)正整数(整数合并)

32、34正整数(整数拆散重组)正整数(整数拆散重组)字符串(字符串的连接)

33、35正整数(整数拆散重组)阶乘字符串(数字字符转换为对应的整数)

34、36数学公式字符串(找子串)数学公式(求π)

35、37数学公式素数整型一维数组(找最大值和最大值的下标)

36、38数学公式数学公式二维数组(求最大元素的值)

37、39数学公式字符串(字符串的连接)字符串(删除字符串中的某些字符)

38、40一维数组(元素移动)字符串(找子串替换字串)字符串(删除字符串中的某些字符)

39、41一维数组(元素移动)字符串(连个字符串合并)字符串(删除字符串中的某些字符)

40、42一维数组(平均值)数学公式结构体(学生记录查找)

41、43一维数组(平均值)数学公式二维数组(右上三角运算)

42、44一维数组(平均值,元素移动)字符串(每个单词的第一一个字母变大写)二维数组(周边元素求平均值)

43、45一维数组(平均值,元素移动)字符串(统计元音字母个数)二维数组(周边元素求和)

44、46字符串(数字字符转换为整数)字符串(统计元大小写字母个数)四舍五入

45、47随机函数二维数组(对角线运算)二维数组(转置)

46、48二维数组(求最大元素的值)交换两个数的值素数

47、49二维数组(按规律构造矩阵)进制转换(转换为k进制)字符串(找最长的字符串)

48、50二维数组(幻方矩阵)数学公式字符串(删除字符串中的某些字符)

49、51二维数组(元素移动)字符串(排序)字符串(字母转换)

50、52二维数组(元素移动)二维数组(按规律构造矩阵)正整数(整数合并)

51、53二维数组(找最大值和最小值)数学公式一维数组(平均值)

52、54字符串(复制)素数整数(找奇数因子)

53、56字符串(统计单词个数)一维数组(平均值)一维数组(找最大值和它的下标)

54、57字符串(复制)一维数组(平均值)数学公式(阶乘)

55、58字符串(数字字符转换为整数)整数(求和)整数(求平方根)

56、59字符串(统计字母个数)数学公式数学公式

57、60指针数组(排序)整数(数列求和)数学公式

58、61二维数组(字符串比较)正整数(整数拆散统计个数)字符串(删除尾部的*)

59、62二维数组(字符串删除)字符串(字符比较复制)字符串(删除除了前导的*)

60、63字符串(找子串)最小公倍数字符串(删除前导和尾部的*)

61、64二维数组(字符删除)数学公式(求π)字符串(删除多余的前导*)

62、65结构体(学生记录运算)字符串(删除字符串中的某些字符)字符串(前导*移到尾部)

63、66结构体(学生记录运算)数学公式结构体(学生记录运算)

64、67结构体(学生记录运算)一维数组(删除一个数)结构体(学生记录找最低分)

65、68结构体(学生记录运算)字符串(找最长字符串)正整数(整数合并)

66、69结构体(学生记录排序)字符串(找最大的字符)结构体(学生记录查找)

67、70结构体(学生记录运算)字符串(插入法排序)链表(找最高分)

68、71函数指针链表(求和)字符串(回文)

69、72链表(排序)链表(找最大值)二维数组转为一维数组

70、73链表(逆置)字符串(字符比较复制)二维数组转为一维数组

71、74链表(逆置)字符串(找子串,统计字串个数)二维数组转为一维数组

72、75链表(排序)字符串(字母转换)一维数组(元素移动)

73、76函数调用字符串(比较长度)字符串(字符移动)

74、77文件字符串(删除字符串中的某些字符)二维数组转为一维数组

75、78文件结构体(动态存储)一维数组(元素删除)

76、79文件(结构体)字符串(字符插入)一维数组(年龄统计)

77、80文件(结构体)链表(赋值)字符串(统计单词个数)