- 第一题
- 题目链接及简易描述
- 解题思路
- 代码
- 第二题
- 题目链接及简易描述
- 解题思路
- 代码
- 第三题
- 题目链接及简易描述
- 解题思路
- 代码
7-36 韩信点兵
题目描述:
韩信点兵
按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
问韩信至少有多少个兵
用个 while 循环每次循环判断是否符合条件,符合就跳出循环输出结果,否则把人数 ++来继续下一轮的判断
代码#include第二题 题目链接及简易描述int main(void) { int res = 0; while (1) { if (res % 5 == 1 && res % 6 == 5 && res % 7 == 4 && res % 11 == 10) { printf("%d", res); break; } res ++; } return 0; }
7-139 手机话费
题目描述:
输入两个数 x, y, 其中 x 表示有的前,y表示用了多少钱后能奖励1元,每天要扣去1元,问,x元一共能用几天
创建四个变量,前两个读入 x, y, 第三个是 res 变量存储结果,cnt 来计数,当他等于 y 说明能加一块了。
代码#include第三题 题目链接及简易描述int main(void) { int m, k, res = 0, cnt = 0; scanf("%d %d", &m, &k); while (m--) { cnt ++; if (cnt == k) { m ++; cnt = 0; } res += 1; } printf("%d", res); return 0; }
7-131 等腰直角三角形
题目描述:
输入一个数,输出对应的三角形
如
输入 2 * ** 输入3 * ** ***解题思路
输入得到一个数,这个数代表的是总的行数,再观察形成的三角形,* 的个数是 1 2 3 ……,刚好就是行数,所以可以用两层for,第一层for用于行,第二层for是第几行就输出几个*
代码#includeint main(void) { int x, i, j; scanf("%d", &x); for (i = 1; i <= x; i++) { for (j = 1; j <=i; j++ ) { printf("*"); } printf("n"); } return 0; }



