C语言及程序设计提高例程-9 函数的嵌套调用

简介: 贺老师教学链接  C语言及程序设计提高 本课讲解函数的嵌套调用:函数内调用函数#include <stdio.h>int gcd(int n1, int n2);int lcm(int n1, int n2);int main(){ int num1,num2; int iGcd, iLcm; //最大公约数和最小公倍数 printf("pl

贺老师教学链接  C语言及程序设计提高 本课讲解


函数的嵌套调用:函数内调用函数

#include <stdio.h>
int gcd(int n1, int n2);
int lcm(int n1, int n2);
int main()
{
    int num1,num2;
    int iGcd, iLcm;  //最大公约数和最小公倍数
    printf("please input two numbers:");
    scanf("%d%d",&num1,&num2);
    iGcd=gcd(num1, num2);
    iLcm=lcm(num1,num2);
    printf("the gcd is: %d\n",iGcd);
    printf("the lcm is: %d\n",iLcm);
    return 0;
}

int gcd(int n1, int n2)
{
    int r;
    while(n2!=0)/*利用辗除法,直到n2为0为止*/
    {
        r=n1%n2;
        n1=n2;
        n2=r;
    }
    return n1;
}

int lcm(int n1, int n2)
{
    return n1*n2*gcd(n1, n2);
};


用弦截法求解方程
/*用弦截法求方程f(x)=x^3-5x^2+16x-80=0的根。*/


#include <stdio.h>
#include <math.h>

double f(double);                  //函数声明 
double xpoint(double, double);     //函数声明
double root(double, double);       //函数声明

int main( )
{
    double x1,x2,f1,f2,x;
    do
    {
        printf("input x1,x2:");
        scanf("%lf %lf", &x1, &x2);
        f1=f(x1);
        f2=f(x2);
    }
    while(f1*f2>=0);  //保证f(x1)和f(x2)异号,(x1,x2)间有根
    x=root(x1,x2);
    printf("A root is %.5f\n", x);
    return 0;
}

/*
功能:求(x1, x2)区间方程的实根
参数:两个浮点型值,表示x轴上两点,由主调函数保证f(x1)和f(x2)是异号
返回值:方程的根
*/
double root(double x1, double  x2)
{
    double x,y,y1;
    y1=f(x1);
    do
    {
        x=xpoint(x1,x2);
        y=f(x);
        if (y*y1>0)
        {
            y1=y;
            x1=x;
        }
        else
            x2=x;
    }
    while(fabs(y)>=0.00001);
    return x;
}

/*
功能:求(x1, f(x1))和(x2, f(x2))的连线与x轴的交点x
参数:两个浮点型值,表示x轴上两点
返回值:交点的x轴坐标
*/
double xpoint(double x1, double x2)
{
    double x;
    x=(x1*f(x2)-x2*f(x1))/(f(x2)-f(x1));
    return x;
}

/*
功能:求函数f(x)=x3-5x2+16x-80的值
参数:一个浮点型数,表示x轴上的一点
返回值:给定函数的值
*/
double f(double x)
{
    double y;
    y=x*x*x-5*x*x+16*x-80;
    return y;
}


目录
相关文章
|
7天前
|
存储 缓存 C语言
【C语言】字符函数,字符串函数,内存函数
C语言中的字符串函数和内存函数
14 0
【C语言】字符函数,字符串函数,内存函数
|
13天前
|
C语言
C语言5 字符输出函数和格式输出函数
C语言5 字符输出函数和格式输出函数
20 1
|
15天前
|
算法 编译器 C语言
深入浅出C语言—【函数】下
深入浅出C语言—【函数】下
|
27天前
|
Java C语言 C++
定义C语言的int main()函数
定义C语言的int main()函数
|
13天前
|
存储 C语言
C语言6 字符串输入和格式输入函数
C语言6 字符串输入和格式输入函数
15 0
|
28天前
|
Java 程序员 Linux
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
25 0
|
28天前
|
算法 搜索推荐 程序员
C语言程序设计考试掌握这些题妥妥拿绩点(写给即将C语言考试的小猿猴们)
C语言程序设计考试掌握这些题妥妥拿绩点(写给即将C语言考试的小猿猴们)
13 0
|
2月前
|
存储 C语言
C 语言函数完全指南:创建、调用、参数传递、返回值解析
函数是一段代码块,只有在被调用时才会运行。 您可以将数据(称为参数)传递给函数。 函数用于执行某些操作,它们对于重用代码很重要:定义一次代码,并多次使用。
117 3
|
1月前
|
存储 C语言
C语言的函数返回值和指针
C|函数返回值(区分各类值)和指针(区分各类存储空间)的细节
|
2月前
|
存储 C语言
C语言中向函数传递值和从函数返回值的技术解析
C语言中向函数传递值和从函数返回值的技术解析
31 0

热门文章

最新文章