#include<stdio.h>#include<math.h>/*
2:求1+1/3+1/5+...之和,直到某一项的值小于pow(10,-6)时停止累加
*/intmain(){int i =0;double res =0;for(i=1;1;i+=2){if(1.0/i <pow(10,-6)){break;}
res = res +1.0/i;}printf("%lf\n",res);return0;}
#include<stdio.h>#include<math.h>/*
已知序列1/2,2/3,3/5,5/8,...,求其前20项之和
*/intmain(){double fm =2;//分母double fz =1;//分子double temp =0;//用来储存数据的中间变量double res =0;int i =0;for(i=0;i<20;i++){
res = res + fz/fm;
temp = fz;
fz = fm;
fm = fm + temp;}printf("%g\n",res);return0;}
练习5 求数据类型的取值范围
#include<stdio.h>#include<math.h>/*
使用循环,求出char和short数据类型的取值范围
*/intmain(){short a =0;short b = a+1;while(a<b){
a++;
b++;}printf("short的取值范围为:%d~%d\n",b,a);return0;}
练习6 求球的体积和表面积
#include<stdio.h>#include<math.h>/*
从键盘输入球体的半径,求其体积和表面积。
S(球面)=4πR^2 (^2表示平方)
V 球=4/3 π r^3
*/#define PI 3.141592654intmain(){double r =0;printf("请输入球体的半径R:");scanf("%lf",&r);double S =4*PI*r*r;double V =4/3.0*PI*r*r*r;printf("表面积为:%g,体积为:%g\n",S,V);return0;}
练习7 键盘输入一个小于60的整数,输出属于几刻
#include<stdio.h>#include<math.h>/*
从键盘输入一个小于60的整数,输出现在他属于几刻(每15分为1刻),使用判断以及运算符两种方式
*/intmain(){int time =0;int res =0;printf("请输入时间,注意不大于60:");while(1){scanf("%d",&time);if(time<=60){break;}}/*if(time>0 && time<=15){
res = 1;
}else if(time>15 && time<=30){
res = 2;
}else if(time>30 && time<=45){
res = 3;
}else{
res = 4;
}*/
res =(time>0)+(time>15)+(time>30)+(time>45);printf("当前属于%d刻\n",res);return0;}