跳转至

做题时,我该查哪一篇?

不会做题时,不用从头翻整本教程。先说清楚“我卡在哪一步”,再找对应的方法。

你遇到的问题 去哪里查
5 / 2 为什么得到 2?平均数怎样算出小数? 变量与运算
题目要求输出 2.50,怎么保留两位小数? printf 保留小数位数
至少几辆车、几袋、几盒?不足一份也算一份 向上取整
把很多数加起来、乘起来;求阶乘、整数幂 for 循环:累加与累乘
求一堆数中的最大值、最小值 打擂台
输出几行几列;每个人都要做几次事 双重循环的简单例子
取个位、求数位和、求位数、反转数字 数位拆分
一个数要不要用 for?很多个数要怎么拆? 数位拆分:如何选循环
L 到 R 中数字 2 出现了多少次? 统计区间里的数字 2
从左往右和从右往左读是否一样? 回文判断
二进制形式是不是回文? 二进制回文
范围不大,能不能一个一个试? 枚举入门

查到了以后,怎样自己学?

  1. 先读例子,用纸笔算出结果。
  2. 找到代码中最关键的一两行,说出它们的作用。
  3. 运行示例,再换一组输入。不要只试教程给出的输入。
  4. 回到自己的题:输入范围、统计对象、输出格式一样吗?再决定怎么改。

完整程序可以单独编译运行;标成“代码片段”的内容需要放进已有程序中。代码旁的范围是这份示例的适用条件,不是所有题目的条件。

推荐的学习顺序

先学变量、输入输出和分支,再学 for、while。接着练累乘、打擂台、双重循环、数位拆分,最后组合成区间统计、回文和枚举。

遇到难题,可以先问自己:我能不能先解决“只有一个数”“只有一行”“只有一种选择”的小问题?