实验05函数程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算两个复数之积(调试示例error05_1)程序填空,不要改变与输入输出

有关的语句。

分别输入两个复数的实部与虚部,编程调用函数实现计算两个复数之积。

若两个复数分别为:c1=x1+(y1)i, c2=x2+(y2)i,则:

c1*c2 = (x1*x2-y1*y2) + (x1*y2+x2*y1)i

输入输出示例:括号内是说明

输入

1 2 (x1=1, y1=2)

-2 3 (x2=-2, y2=3)

输出

product of complex is (-5.000000)+(1.000000)i

#include

/*---------*/

int main(void)

{

float imag1, imag2, real1, real2;

scanf("%f%f", &real1, &imag1);

scanf("%f%f", &real2, &imag2);

complex_prod(real1, imag1, real2, imag2);

printf("product of complex is (%f)+(%f)i\n", result_real, result_imag);

return 0;

}

/*---------*/

使用函数求1! + 2! + … + m!(改错题error05_2)程序填空,不要改

变与输入输出有关的语句。

求1! + 2! + … + 10!,要求定义并调用函数fact(n)计算 n!,函数形参 n 的类型是int,函数类型是double。

输入输出示例:括号内是说明

输出:

1!+2!+...+10! = 4037913.000000

#include

double fact(int n);

int main(void)

{

int i;

double sum;

/*---------*/

printf("1!+2!+...+10! = %f\n", sum);

return 0;

}

/*---------*/

使用函数判断数的符号

程序填空,不要改变与输入输出有关的语句。

输入一个正整数 repeat (0

输入1个整数 x,若 x 大于0,sign(x) = 1;若 x 等于0,sign(x) = 0;否则,sign(x) = -1,最后输出sign(x)的值。

要求定义和调用函数sign(x)实现该分段函数, 函数形参x的类型是int,函数类型是int。

输入输出示例:括号内是说明

输入

3 (repeat=3)

10 (x=10)

-5 (x=-5)

0 (x=0)

输出

sign(10) = 1 (x=10时sign(x)的值为1)

sign(-5) = -1 (x=-5时sign(x)的值为-1)

sign(0) = 0 (x=0时sign(x)的值为0)

#include

int sign(int x);

int main(void)

{

int x, y;

int repeat, ri;

scanf("%d", &repeat);

for(ri = 1; ri <= repeat; ri++){

scanf("%d",&x);

/*---------*/

printf("sign(%d) = %d\n", x, y);

}

return 0;

}

/*---------*/

使用函数求奇数和程序填空,不要改变与输入输出有关的语句。

输入一个正整数repeat (0

输入一批正整数(以零或负数为结束标志),求其中的奇数和。

要求定义和调用函数even(n) 判断数的奇偶性,当n为偶数时返回1,否则返回0,函数形参n的类型是int,函数类型是int。

输入输出示例:括号内是说明

输入

2 (repeat=2)

12 9 7 18 3 11 20 0

11 8 6 17 2 10 19 -1

输出

The sum of the odd numbers is 30.

The sum of the odd numbers is 47.

#include

int even(int n);

int main(void)

{

int n, sum;

int ri, repeat;

scanf("%d", &repeat);

for(ri = 1; ri <= repeat; ri++){

scanf("%d",&n);

/*---------*/

printf("The sum of the odd numbers is %d.\n", sum);

}

return 0;

}

/*---------*/

使用函数计算两点间的距离程序填空,不要改变与输入输出有关的语句。

输入一个正整数repeat (0

给定平面任意两点坐标 (x1, y1) 和 (x2, y2),求这两点之间的距离(保留2位小数)。

要求定义和调用函数 dist(x1, y1, x2, y2)计算两点间的距离,函数形参x1、y1、x2和y2的类型都是double,函数类型是double。

输入输出示例:括号内是说明

输入

1 (repeat=1)

10 10 (x1=10, y1=10)

200 100 (x2=200, y2=100)

输出

Distance = 210.24

#include

#include

double dist(double x1, double y1, double x2, double y2);

int main(void)

{

int repeat, ri;

double distance, x1, y1, x2, y2;

scanf("%d", &repeat);

for(ri = 1; ri <= repeat; ri++){

scanf("%lf%lf%lf%lf", &x1, &y1, &x2, &y2);

/*---------*/

printf("Distance = %.2f\n", distance);

}

return 0;

}

/*---------*/

使用函数统计素数并求和

程序填空,不要改变与输入输出有关的语句。

输入一个正整数 repeat (0

相关文档
最新文档