洛谷平台题单100链接:https://www.luogu.com.cn/training/100#problems
目录
学习笔记:
p1000 超级玛丽
Question1:直接粘贴超级玛丽图案会报错,为什么?
Answer:猜想:cout 不支持字符串的换行行为,经hello world测试已证实。
P5704 【深基2.例6】字母转换
Question2:ASCII码的作用?char字符型变量的存储方式?
Answer:
ASCII,英文全称是American Standard Code for Information Interchange,中文名称就是美国信息互换标准代码,他是基于拉丁字母的一套电脑编码系统。ASCII码表主要用于显示现代英语和其他西欧语言。
ASCII码大致可以分作三部分组成,第一部分是ASCII非打印控制字符,第二部分是ASCII打印字符,第三部分是扩展ASCII打印字符。
( https://blog.csdn.net/bisal/article/details/106088569)
在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0)。
例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示。
而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码)。
而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
美国信息交换标准代码是由美国国家标准学会(American National Standard Institute , ANSI )制定的,是一种标准的单字节字符编码方案,用于基于文本的数据。
(原文链接:https://blog.csdn.net/zhangnipa/article/details/108764205)
在C语言中,char型数据是将一个字符常量放到一个字符变量中,并不是把该字符本身放到内存单元中去,而是将该字符的相应的ASCII代码放到存储单元中。
字符可以是字符集中任意字符。但数字被定义为字符型之后就不能参与数值运算。如'5'和5 是不同的。'5'是字符型数据,不能参与运算。
(原文链接:https://blog.csdn.net/weixin_34043312/article/details/117014304)
P5705 【深基2.例7】数字反转
这道题用了算术运算符取余的方法,做完了以后看了一下题解,还有更巧妙的char+scanf输入方法
Question3:%两边的数据类型必须是整型int吗?
Answer:是的,否则会报错 invalid operands of types 'float' and 'int' to binary 'operator%'
P5706 【深基2.例8】再分肥宅水
输出数据应该完全按照样例,该换行时就要用换行符。
P2433 【深基1-2】小学数学 N 合一
(1)注意对小学奥数题也不要掉以轻心,有些题目需要仔细的计算,有些题目需要仔细看题。
(2)保留 6 位有效数字并不是小数点后六位
(3)用到开根号函数 pow(117,0.5) 时,记得加头文件#include<math.h>
(4)用到printf函数时记得加头文件#include<math.h>,否则即使在自己IDE可以编译过去,但是在OJ平台上也会报错
(5)熟悉char字符型的字符、数字之间的转换,如A为第1个字母,那么M的编号为几,编号为18的字母是哪个: cout << (int)('M'-'A')+1<<"\n"<< (char)('A'+18-1);
P5708 【深基2.习2】三角形面积
变量使用double来定义
四舍五入精确到一位小数时,可以 printf("%.1f",round(s*10)/10.0); 先乘10再四