第1章 程序设计入门

第1章 程序设计入门-C语言

编程不是看会的,也不是听会的,而是练会的

提示1-1:整数值用%d输出,实数用%lf输出。

提示1-2:整数/整数=整数,浮点数/浮点数=浮点数。

提示1-3:scanf中的占位符和变量的数据类型应一一对应,且每个变量前需要&符号。

  constdouble pi = 4.0 * atan(1.0);   //注意pi的取值,需要包含math.h

提示1-4:在算法竞赛中,输入前不要打印提示信息。输出完毕后应立即终止程序,不要等待用户按键,因为输入输出过程都是自动的,没有人工干预。

不要在用户输入之前打印提示信息(例如“Pleaseinput n:”),不要让程序“按任意键退出”(例如调用system(“pause”),或者加一个多余的getchar()),

提示1-5:在算法竞赛中不要使用头文件conio.h,包括getch()、clrscr()等函数。

提示1-6:在算法竞赛中,每行输出均应以回车符结束,包括最后一行。除非特别说明,每行的行首不应有空格,但行末通常可以有多余空格。另外,输出的每两个数或者字符串之间应以单个空格隔开。

总结一下,算法竞赛的程序应当只做3件事情:读入数据、计算结果、打印输出。不要打印提示信息,不要在打印输出后“暂停程序”,更不要尝试画图、访问网络等与算法无关的任务。

提示1-7:尽量用const关键字声明常数。 ------如果你不小心要修改const变量,编译器会帮你查错,提示不让修改。

提示1-8:赋值是个动作,先计算右边的值,再赋给左边的变量,覆盖它原来的值。----赋值运算符“=”是右结合性

提示1-9:printf的格式字符串中可以包含其他可打印符号,打印时原样输出。----scanf的格式字符串中可以包含其他可打印符号,输入时要原样输入

分析问题的时候要全面,考虑到各种可能情况,也还可以变换技巧,应对多种情形

提示1-10:算法竞赛的题目应当是严密的,各种情况下的输出均应有严格规定。如果在比赛中发现题目有漏洞,应向相关人员询问,而尽量不要自己随意假定。

提示1-11:赋值a = b之后,变量a原来的值被覆盖,而b的值不变。---懂的变量存储机制

提示1-12:交换两个变量的三变量法适用范围广,推荐使用。----交互两个变量的值有多种实现方式,可以借助中间变量,也可以不借助,可以通过算术运算、异或等运算实现

多数算法竞赛采用黑盒测试,即只考查程序解决问题的能力,而不关心它采用的什么方法。

换句话说,我们的目标是解决问题,而不是为了写程序而写程序,同时应保持简单(Keep It Simple and Stupid,KISS),而不是自己创造条件去展示编程技巧。

提示1-13:算法竞赛是在比谁能更好地解决问题,而不是在比谁写的程序看上去更高级。

提示1-14:if语句的基本格式为:if(条件) 语句1; else 语句2。

提示1-15:if语句的条件是一个逻辑表达式,它的值可能为真,也可能为假。

如果a为真,则无论b的值如何,a|| b均为真。换句话说,一旦发现a为真,就不必计算b的值。C语言正是采取了这样的策略,称为短路(short-circuit)。

--如果a为假,则无论b的值如何,a&& b均为假。换句话说,一旦发现a为假,就不必计算b的值。C语言正是采取了这样的策略,称为短路(short-circuit)。

提示1-16:C语言中的逻辑运算符都是短路运算符。一旦能够确定整个表达式的值,就不再继续计算。

提示1-17:算法竞赛的目标是编程对任意输入均得到正确的结果,而不仅是样例数据。-------对所有可能情况都成立才是真确的

提示1-18:如果有多个并列、情况不交叉的条件需要一一处理,可以用else if语句。

提示1-19:可以用花括号把若干条语句组合成一个整体。这些语句仍然按顺序执行。------复合语句

提示1-20:在难以一次性求出最后结果时,可以用变量储存“临时结果”,从而逐步更新。










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值