寒假C语言基础查漏补缺笔记(二)
本系列文章是基于自身的编程基础而编写的,其内容并非适用于所有人,请海涵~
不过内容应该包括了所有的考点、用法,初学C/C++的大学生或者noip入门级选手可以以此作为参考。
主要内容大致分为四个方面:计算机概念、简述编程中所需要的掌握的知识点(高亮显示即是知识点)、强调记忆C/C++基础语法中的不常用的特殊语法概念
以及
在学习过程中我的感悟和我从初中编程到现在所积累的经验(引用处即是)。
看完这系列文章,你可以快速地入门C/C++,而且我的文章也可成为你的复习笔记。
愿你的智慧加上我的,能完美解决你的问题。
需要下载Dev-C++ 5.11 可以关注微信公众号:MathsCode
回复:编译器,免费获得。
此文是基于中国大学MOOC北京大学郭炜老师的程序设计与算法(一)C语言程序设计(国家精品课程)而撰写的。
非常厉害的老师!!!
看完觉得内容对您有帮助的,可以点个赞加个关注哦!
---------------------------笔记分割线------------------------------
2.1输入输出进阶
掌握printf、scanf使用时的格式要求
%x 以十六进制读入或输出整型变量
%nd 以n字符宽度输出整数,整数宽度不足用空格填充,整数宽度超过n,则仍输出整数
%0nd以n字符宽度输出整数,整数宽度不足用0填充,整数宽度超过n,则仍输出整数
%.nf 四舍五入保留n位浮点数
当用scanf读入字符时,不会跳过空格,输入其他数据类型时会跳过空格。
掌握C++中的cin和cout进行输出
那么当遇到自身并不知道程序的输入在什么时候停止这种情况,如何利用cin来读取输入的所有数据呢?
比如在一行字符串中,并不知道字符串的长度,所以只可以不断读取。
int c;
while ((c = cin.get()) != EOF )
{
cout<<(char)c;
}
可以利用cin.get(),当有数据输入时cin.get()会返回一个特殊的int值,当读到结尾时(即没有数据的时候),cin.get()会返回EOF。
但是
cin,cout速度比scanf,printf慢,输入输出数据量大时用后者,且一个程序里面不要同时用cin,scanf,不要同时用cout和printf。
2.2算术运算符和算数表达式
2.2.1赋值运算符
掌握“=”“+=”“-=”“*=”“/=”“%=”的含义
2.2.2算数运算符
掌握“+” “-” “*” “/” “%” “++” “–” 的含义
表达式的值得类型,以操作数中的精度高的类型为准。
精度:double > long long > int > short > char
除法运算和模运算的除数均不能为0,否则上交OJ时是Runtime Error
2.2.3加减乘运算的溢出
即结果超出该类型所能表示的范围。
当整数运算溢出时,溢出部分直接被丢弃。
当浮点数运算溢出时,结果不易预测。
解决办法:在内存空间允许的情况下,尽可能使用范围更大的数据类型。
2.3关系运算符和逻辑运算符
2.3.1关系运算符
掌握六种关系运算符“==” “!=” “>” “<” “>=” “<=” 的含义以及比较结果类型
false等价于0,true等价于非0整形值
2.3.2逻辑运算符和逻辑表达式
掌握逻辑运算符“&&” “||” “!” 的含义和操作结果
逻辑表达式是短路计算,即对逻辑表达式的计算,在整个表达式的值已经能够断定的时候即会停止。
2.4 其他运算符以及运算符优先级
==了解强制类型转换运算符的使用++
掌握部分运算符的优先级
如图
其实并不用记住运算符优先级,勤用括号可以避免优先级错误。
好了,到这里就先告一段落吧!下期更精彩哦!
---------------------------笔记分割线------------------------------
码字不易,喜欢这篇文章的话,关注我的CSDN吧,
我的高中数理化学习干货
Noip竞赛经验
自招笔试小窍门、面试小套路
大学理工科学习规划
均在我的公众号中
扫码关注吧!