/*有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。*/
#include <stdio.h>
int main(void)
{
int n,t,num=20;
float a=2,b=1,s=0;
for(n=1;n<=num;n++)
{
s=s+a/b;
t=a;
a=a+b;
b=t;/*这部分是程序的关键*/
}
printf("和为%9.6f\n",s);
}
/*打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等
于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方*/
#include <stdio.h>
int main(void)
{
int num,gw,sw,bw;
num=0,gw=0,sw=0,bw=0;
for(num=100;num<=999;num++)
{
gw=num%10;
sw=num/10%10;
bw=num/100;
if(num!=gw*gw*gw+sw*sw*sw+bw*bw*bw)continue;
printf("水仙花数有:%d\n",num);
}
}
/*给一个不多于5位的正整数,要求:求它是几位数并且逆序打印出各位数字*/
#include <stdio.h>
int main(void)
{
int num,i,j,x;
num=0,i=0,x=0;
printf("请输入一个不高于五位的正整数:\n");
scanf("%d",&num);
while(num!=0)
{
num=num/10;
i++;
}
printf("此数是%d位数\n",i);
for(j=0;j<i;j++)
{
num=num/10;
for(x=0;x!=0;x++)
{
x=num%10;
}
printf("%d",x);
}
}