题目: 用 C 语言编写一个程序,完成以下功能:
接收一个正整数 n,当 n 为偶数时,计算 1/2+1/4+...+1/n 的值;当 n 为奇数时,计算 1/1+1/3+...+1/n 的值(上述两个计算过程通过自定义函数完成);并将结果通过屏幕输出。
具体要求如下: 1、在主程序中,先给出如下提示:“请输入一个正整数:”,按照要求输入一个正整数。 断这个正整数是奇数还是偶数,若是奇数则调用函数 addOdd 求和,若是偶数则调用函数 addEven 求和. 2、定义并编写 float addOdd(int n) 函数和 float addEven(int n) 函数; 编写 addOdd 函数实现计算“1/1+1/3+...+1/n”并返回结果; 编写 addEven 函数实现计算“1/2+1/4+...+1/n”并返回结果。 3、按要求打印出最后的结果:输出加法的公式,加数最多显示前五项和最后一项,中间如果有省略要加用“...”连接;并且结果保留 3 位小数。如输入 100 时,输出结果是: 1/2+1/4+1/6+1/8+1/10+...+1/100=2.250 4、程序提示“是否继续输入(y/n)?”,若输入的是 y 或 Y 则继续输入下一个正整数,重复上述操作,否则退出程序 5、在实现功能的同时,要求注意编程规范,程序逻辑分明,书写有缩进,对程序进行有效的注释 ============================================= 我写的代码: #include <stdio.h> float addOdd(int n) { float sum=0; for (int i=1;i<=n;i++) sum=sum+1; i++; return sum; } float addEven(int n) { float sum=0; for (int i=0;i<=n;i++) sum=sum+n; i++; return sum; } void main() { int num,ctr; do { printf("请输入一个正整数:"); scanf("%d",&num); if (num%2==0) { //这里不会 } else { //这里不会 } printf("是否继续输入(y/n)?"); scanf(" %c",&ctr); }while(ctr=='y' || ctr=='Y'); } ===================================== 望朋友们帮帮忙!~先谢谢了!