题目:编写函数求1-1/2+1/3-1/4...+1/n,在主函数中输入n,输出计算结果。
分析:分母上递加,分子一直为1,正负号交错。
#include#include double sum(int m); double sum(int m)//m为形参 { double a,b; double c; c=0; for(a=1;a<=m;a++) { b=pow(-1,a-1);//pow()函数用于求次方,即求-1的 a-1 次方 c=c+b*(1/a);//求和 } return c; //返回c的值 } int main() { int n; printf("请输入n的值:"); scanf("%d",&n); printf("%.2lf",sum(n));//%.2f表示保留两位小数,调用函数,n为实参 return 0; }
//其他方法 #include#include int main() { int n; printf("请输入n的值:"); scanf("%d",&n); double a,b; double c; c=0; for(a=1;a<=n;a++) { b=pow(-1,a-1);//pow()函数用于求次方,即求-1的 a-1 次方 c=c+b*(1/a);//求和 } printf("%lf ",c); return 0; }
本题收获:
1.pow函数注意需要引入头文件#include
2.pow() 函数用来求 x 的 y 次幂(次方),x、y及函数值都是double型
其原型为:double pow(double x, double y);
pow(x,y):用来计算以x 为底的 y 次方值,然后将结果返回。
设返回值为 z,则 z = x^y 。
3.使用pow函数,一定要注意数据类型。
4.C语言浮点类型保留几位小数输出:float类型:保留一位小数:%.1f ;保留两位小数:%.2f ; 以此类推。double类型:保留一位小数:%.1lf ;保留两位小数:%.2lf ;以此类推。
题目:编写程序,输出“九九乘法口诀 ”。
//利用双层循环就ok了 #include#include int main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { printf("%d*%d=%d ",i,j,i*j); } putchar("n"); } return 0; }
//试试函数,就当作练手了 #include#include void table(int a); void table(int a)//a为形参 { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { printf("%d*%d=%dt",i,j,i*j); } putchar("n"); } } int main() { int n; table(n);//调用函数 ,n为实参 return 0; }
运行结果:
本题收获:
putchar()是c语言中的一个函数,功能是向终端输出一个字符。
今日复习:
1.C语言中提供的循环语句有三个,分别是while循环,for循环和do while循环。
2. for(表达式1;表达式2;表达式3)
{
语句;
}
表达式1:循环变量赋初值。
表达式2:循环条件。
表达式3:循环变量增值。
3.for循环中,表达式1,表达式2,表达式3都可以省略
4.for循环嵌套
for(表达式1;表达式2;表达式3)
{
for(表达式1;表达式2;表达式3)
{
语句: }
}
外层循环一次,内层全部循环一次(外层循环一次,内层for循环全部执行完成再进行外层的一次循环)



