猴子第一天摘下若干个桃子,一天吃桃子的一半多一个,第十天只剩下一个桃子,问第一天摘了多少个桃子?
最后剩的一颗桃往回加起来就能得出第一天摘得桃子,题目先除以 2 再减 1 ,那我们就反过来先加 1 再乘以 2,就能得出我们想要的答案。
int main()
{
int s = 1;
int i = 0;
for (i = 9; i >= 1; i--)
{
s = (s + 1) * 2;
}
printf("%d", s);
return 0;
}
打印一个棱形:
首先将棱形分为上半部分和下半部分,然后先打印上半,这题主要考察循环语句的运用,如上图,上半部分是先考虑多个空格字符然后再输出 * ,下半部分就要先考虑多个 * ,再考虑空格字符但是输出顺序不变。
int main()
{
int i = 0;
int j = 0;
int k = 0;
for (i = 0; i <= 3; i++)
{
for (j = 0; j < 3 - i; j++)
{
printf(" ");
}
for (k = 0; k < 2 * i + 1; k++)
{
printf("*");
}
printf("\n");
}
for (i = 0; i <= 3; i++)
{
for (j = 0; j <= i; j++)
{
printf(" ");
}
for (k = 0; k <= 4 - 2 * i; k++)
{
printf("*");
}
printf("\n");
}
return 0;
}
打印水仙花数:
水仙花是指一个三位数,其每一位数的立方之和等于该数本身,这里将他们每一位数都取模拿到每一位数的个数,然后进行立方计算,加起来等于这个数本身就输出。
int main()
{
int x = 0;//个位
int y = 0;//十位
int z = 0;//百位
int i = 0;
for(i = 100; i <= 999; i++)
{
x = i % 10;
y = i / 10 % 10;
z = i / 100 % 10;
if (i == (x * x * x + y * y * y + z * z * z))
{
printf("%d是水仙花数\n", i);
}
}
return 0;
}
至此,今日的学习结束。