编程题目
1、100以内能被5或7整除的数,每行五个数的显示出来。
#include <stdio.h>
int main()
{
int m=1;
int total=0;
while(m<100)
{
if(m%5==0||m%7==0)
{
printf("%6d ",m);
total++;
if(total%5==0)
printf("\n");
m++;
}
else
m++;
}
printf("\n");
return 0;
}
注意点:循环结束后,最好加一个换行符;
%6d设置字段宽度为6,使输出看起来更整齐。
5 7 10 14 15
20 21 25 28 30
35 40 42 45 49
50 55 56 60 63
65 70 75 77 80
84 85 90 91 95
98
如果不加6,执行之后就是如下:
5 7 10 14 15
20 21 25 28 30
35 40 42 45 49
50 55 56 60 63
65 70 75 77 80
84 85 90 91 95
98
2、e的近似值:e=1+1+1/2!+...+1/n!,当1/n!<10^-6时,不满足条件。
#include <stdio.h>
int main()
{
int n=1;
int m=1;
double e=1.0;
while(m<1e+6)
{
m*=n;
n++;
e+=1.0/m;
}
printf("e=%f\n",e);
return 0;
}
注意点:e+=1.0/m;此语句中1.0一定不能写成整数1,如果写成1,将会导致两个整数相除,结果也必为整数。
3、1900年至2000年内所有闰年的求法。
#include <stdio.h>
int main()
{
int year=1900;
printf("Runnian from 1900 to 2000 are as follows:\n");
while(year<=2000)
{
if(year%4==0)
{
printf("%d\n",year);
year++;
}
else
year++;
}
return 0;
}