3的次幂
c
#include<stdio.h>
#include<math.h>
int main()
{
int n;
scanf("%d", &n);
int i;
for (i = 0; i < n;i++)
{
int result = pow(3, i);
printf("pow(3,%d)=%d\n", i,result);
}
return 0;
}
猴子吃桃
倒着递推,sum为最后一天,只剩下一个桃子了,sum的前一天是(sum+1)*2,依次递推,直到推到第一天的时候,sum就是所有的桃子。
c
#include<stdio.h>
int main()
{
int n;
int i;
int sum = 1;
scanf("%d", &n);
for (i = n; i > 1;i--)
{
sum += 1;
sum *= 2;
}
printf("%d", sum);
return 0;
}
打印菱形
找空格跟*的规律,先打印上半部分三角,再打印下半部分三角。
c
#include<stdio.h>
int main()
{
int n;
scanf("%d", &n);
int i, j, k;
for (i = 0; i < (n / 2) + 1; i++)
{
for (j = 0; j < (n / 2)-i;j++)
{
printf(" ");
}
for (k = 0; k < 2 * i + 1;k++)
{
printf("* ");
}
printf("\n");
}
for (i = 0; i < (n / 2)+1; i++)
{
for (j = 0; j <= i; j++)
{
printf(" ");
}
for (k = 0; k < n - 2 * i-2; k++)
{
printf("* ");
}
printf("\n");
}
return 0;
}
e的估值
c
#include<stdio.h>
int main()
{
int i,j,n;
double m, sum;
sum = 1;
scanf("%d", &n);
for (i = 1; i <= n;i++)
{
m = 1;
for (j = 1; j <= i;j++)
{
m *= j;
}
m = 1.0 / m;
sum += m;
}
printf("%.8f", sum);
return 0;
}