现在的位置: 首页 > 教材内容 > 正文

函数

2012年12月27日 教材内容 ⁄ 共 245字 ⁄ 字号 暂无评论

【实例6.2】调用自定义函数计算1~n的和
【实例6.3】调用自定义函数进行四则运算
【实例6.4】在被调函数中交换数据
【实例6.5】用嵌套调用的方法进行计算

【实例6.2】编写程序,输入n的值,并调用自己编写的函数计算1至n的和。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
int sum_n(int n);
main()
{
    int n, a;
    scanf("%d",&n);
    a=sum_n(n);
    printf("The sum(1--%d) is:%d\n",n,a);
}
 
int sum_n(int n)
{
    int i, s=0;
    for(i=1; i<=n; i++)
        s=s+i;
    return s;
}

【实例6.3】编写程序,输入2个数以及加、减、乘、除中的某运算符号,并调用自己编写的函数计算相应的结果。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
 
int calc_expression(int a, char op, int b)
{
    int result;
    switch(op) {
    case '+':
        result =a+b;
        break;
    case '-':
        result =a-b;
        break;
    case '*':
        result =a*b;
        break;
    case '/':
        result =a/b;
        break;
    case '%':
        result =a%b;
        break;
    default:
        break;
    }
    return result;
}
 
int main(int argc, char *argv[])
{
    int a, b,result;
    char op;
 
    while (scanf("%d%c%d", &a,&op,&b)!=EOF) {
        result = calc_expression(a, op, b);
        printf("%d\n", result);
    }
    return 0;
}

【实例6.4】编写程序,输入2个整数,并调用自己编写的函数交换a和b中的值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
void swap(int *p,int *q);
 
int main(int argc, char *argv[])
{
    int a=10,b=20;
    swap(&a,&b);
    printf("a=%d,b=%d\n",a,b);	
	return 0;
}
 
void swap(int *p,int *q)
{
    int t=0;
    t=*p; *p=*q; *q=t;
}

【实例6.5】编写fac函数,该函数的功能是计算n!,再调用该函数,计算1!+3!+5!+…+19!的值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
double fac(int n);
double sum(int n);
main()
{
    double s;
    s=sum(19);
    printf("s=%.0f\n",s);
}
 
double sum(int n)
{
    int i;
    double s=0.0;
    for(i=1; i<=n; i=i+2)
        s=s+fac(i);
    return s;
}
 
double fac(int n)
{
    int i;
    double f=1.0;
    for(i=1; i<=n; i++)
        f=f*i;
    return f;
}
【上篇】
【下篇】

抱歉!评论已关闭.