洛谷【入门2】分支结构
题目:P5710 【深基3.例2】数的性质
总结:
cout<<false||true 结果为什么是0?
( (cout << false) || true ); // 第一步会计算 (cout << false) 即输出false/0。 同时这个表达式会返回 cout // | // V // 第二步会计算 (cout || true); 。该表达式 会返回true。(其实可能 会先调用 cout 的转到bool类型的转换函数 或 其他 运算符重载函数)
题目:P5711 【深基3.例3】闰年判断
总结:判断闰年方法:是4的倍数但不是100的倍数,或者是400的倍数。
题目:P5712 【深基3.例4】Apples
总结:三目运算符——表达式 ? 表达式 : 表达式 ;
题目:P5713 【深基3.例5】洛谷团队系统
总结:无
题目:P5714 【深基3.例7】肥胖问题
总结:求x的n次方的函数——power(double x, int n)
题目:P5715 【深基3.例8】三位数排序
总结:
sort()排序函数
sort (first, last) | 对容器或普通数组中 [first, last) 范围内的元素进行排序,默认进行升序排序。 |
swap()交换函数
swap (x, y) | 交换实参x,y的变量值。 |
题目:P5716 【深基3.例9】月份天数
总结:数据少时可以建数组打表
题目:P1085 [NOIP2004 普及组] 不高兴的津津
总结:求一个最大值用一个max变量更新即可
题目:P1909 [NOIP2016 普及组] 买铅笔
总结:用max和min函数可以简化更新最值的操作
题目:P1055 [NOIP2008 普及组] ISBN 号码
总结:
string支持下标操作[]
- string类型可直接使用 length() 方法计算字符串长度;
- string 类的 assign 成员函数,可以用来对 string 对象赋值。assign 成员函数返回对象自身的引用。
string s1("12345"), s2;
s3.assign(s1); // s3 = s1
s2.assign(s1, 1, 2); // s2 = "23",即 s1 的子串(1, 2)
s2.assign(4, 'K'); // s2 = "KKKK"
s2.assign("abcde", 2, 3); // s2 = "cde",即 "abcde" 的子串(2, 3)
- string类型可使用 compare(const string& str) 方法进行字符串比较
除了可以用 <、<=、==、!=、>=、> 运算符比较 string 对象外,string 类还有 compare 成员函数,可用于比较字符串。compare 成员函数有以下返回值:
小于 0 表示当前的字符串小;
等于 0 表示两个字符串相等;
大于 0 表示另一个字符串小。
string s1("hello"), s2("hello, world");
int n = s1.compare(s2);
n = s1.compare(1, 2, s2, 0, 3); //比较s1的子串 (1,2) 和s2的子串 (0,3)
n = s1.compare(0, 2, s2); // 比较s1的子串 (0,2) 和 s2
n = s1.compare("Hello");
n = s1.compare(1, 2, "Hello"); //比较 s1 的子串(1,2)和"Hello”
n = s1.compare(1, 2, "Hello", 1, 2); //比较 s1 的子串(1,2)和 "Hello" 的子串(1,2)
- string类型可使用 find方法,在字符串中检索自字符串是否存在。
- 求string对象的子串可以用 substr 成员函数可以用于求子串 (n, m)
string s1 = "this is ok";
string s2 = s1.substr(2, 4); // s2 = "is i"
s2 = s1.substr(2); // s2 = "is is ok"
- string中字符串的连接除了可以使用
+
和+=
运算符对 string 对象执行字符串的连接操作外,string 类还有 append 成员函数,可以用来向字符串后面添加内容。
string s1("123"), s2("abc");
s1.append(s2); // s1 = "123abc"
s1.append(s2, 1, 2); // s1 = "123abcbc"
s1.append(3, 'K'); // s1 = "123abcbcKKK"
s1.append("ABCDE", 2, 3); // s1 = "123abcbcKKKCDE",添加 "ABCDE" 的子串(2, 3)
仔细!仔细!仔细!中间改了一个变量就要检查后面的所有代码!