C语言 · 复习杂记

/*=================================*/
/* 基础部分 */
/*=================================*/
一:.CPP——C++文件;.C——C文件

二:C语言中浮点型一般分为float单精度型、double双精度型、long double长精度型,单精度浮点型小数点后面有效数字为6~7位和双精度浮点型小数点后面有效数字为15~16位

三:char s[N]——for(int i=0;s[i];i++):可以用s[i]进行循环。

四:if(h%10 == 0) printf("\n"); //一行输出10个

五:for循环:比较条件当第一次进入循环时在i=0之后执行,以后先i++先执行判断条件。

六:return 0——结束程序;break——跳出当前这一层循环;continue:结束此次循环进行下一次循环。

七:字符和数字是有区别的。要将字符变成数字,需要减去一个字符0。

八:字符数组的输入输出可以有两种方法:
1:逐个字符输入、输出(%c)
2:整个字符串一次输入、输出(%s)
用%s输出字符串时,printf函数中的输出项是字符数组名,不是数组元素名。
如果一个字符数组中包含多个’\0’,则遇第一个’\0’时输出就结束。可以用scanf函数输入一个字符串,
scanf函数中的输入项c是已定义的字符数组名,输入的字符串应短于已定义的字符数组的长度。
比如输入China:系统自动在China后面加一个’\0’。

九:关于二维数组的输入:其实并不存在真正的“二维”,只不过是编译器自动的将它 一行一行的保存。所以,二维数组的输入只要用双重循环即可。

十:strlen 计算字符串里面一共有多少个字符;sizeof 计算字符串占的总内存空间

/*=================================*/
/* 进阶部分 */
/*=================================*/
一:循环改递归:
1.关键是发现逻辑的相似性
*若没有明显相似性需要主动构造
*不能相似很可能是缺少参数
*类比于递推公式
2.不要忘记递归的出口——结束条件,否则会死循环。

时间: 2024-10-11 22:26:16

C语言 · 复习杂记的相关文章

C语言复习(一)关键字

最近在学COCOS2Dx,刚刚开始写一个塔防游戏,因为第一次用VS2012,感觉还不太习惯. C语言的大部分内容也忘记了,因此做一个简要的复习. 1.关键字: auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigne

C++ Primer 复习杂记(第七章)

复制实参的局限性(值传递) 不适合复制实参的情况包括: 当需要在函数中修改实参的值时. 当需要以大型对象作为实参传递时.对实际的应用而言,复制对象所付出的时间和存储空间代价往往过大. 当没有办法实现对象的复制时. 通过引用传递数组 通常,数组以非引用类型传递,此时数组会转换为指向第一个元素的指针,形参中数组大小并没有意义.然而如果形参是数组的引用,则编译器不会将数组实参转化为指针,而是传递数组引用本身.此时数组大小会由编译器进行检查. 例: void printValues(int (&arr)

cpp学习(二)C语言复习

接下来复习一下C语言部分,毕竟C++与C语言本自同根生,并且在汇编层面C与C++可以说完全相同.假如你没有C语言基础的话,可以先暂停去学习一下C语言,C语言可以看"C语言之父"谭浩强的<C语言程序设计>或者观看学堂在线的免费公开课,在此推荐清华大学的c++课程:http://www.xuetangx.com/courses/course-v1:TsinghuaX+00740043X_2015_T2+sp/courseware/a0f3bf5a4c044dfaaad68148

go语言学习杂记

go语言在windows下下载安装 推荐在golang中国下载 http://www.golangtc.com/download 安装.... go环境变量与工作目录 根据约定GOPATH需要建立3个目录 bin(存放编译后生成的可执行文件) pkg(存放编译后生成的包文件 .a) src(存放项目源码 比如:.go .c .h .s等)使用go env查看环境 常用命令 go get:获取远程包(git或hg(google code)) go run :直接运行程序 go bulid :测试编

C语言复习3/6日

1.变量:变量代表一个有名字的.具有特定属性的一个存储单元.它用来存放数据,也就是存放变量的值.在程序运行期间,变量的值是可以改变的.变量必须先定义后使用.变量名和变量值是两个不同的概念.变量名实际上是以一个名字代表的一个存储地址.在对程序编译连接时由编译系统给每一个变量名分配对应的存储地址.从变量中取值,实际上是通过变量名找到对应的内存地址,从该存储单元中读取数据. 2.符号常量:用#define指令,指定用一个符号名称代表一个常量.如#define  PI  3.14 注意:符号常量不是变量

c语言复习 —— 数组

数组的产生:数据是一种存放数据的容器.所以:一个数组中里面的元素是同一种类型的. 一维数组: 1.定义: 类型 名称 [元素数量] 注意:元素数量必须是整数,c语言中没有对象这个概念,所以存放的都是基本的数据类型,而在oc中的数组中存放的是必须是对象. 在c99之前,元素数量必须子编译的时候定义下来,而c99之后,确实可以没有没有定义下来. eg: int[10];//表示定了10个元素的数组,为整数类型. 2.特点: 1)所有的元素都是具有相同的类型. 2)一旦创建,就不能够更改. 3)数组中

C语言复习3/9

1.C语言中定义数组的形式为:类型符  数组名[常量表达式],常量表达式中可以包括常量和符号常量,如"int a[3+5];"是合法的.不能包含变量,如"int a[n];"是不合法的.也就是说,C语言不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值.如果在被调用的函数(不包括主函数)中定义数组,其长度可以是变量或非常量表达式.如: void func(int n) { int a[2 * n]; //合法,n的值从实参传来 . . . }

C语言复习

函数里面不能嵌套函数  这两个的区别是什么呢 #define a int[10] 属于宏定义,在编译的时候只进行替换,而不进行类型检查:typedef int a[10]: 只不过给int型取个别名,在编译的时候会进行类型检查. typedef 类型 别名;                  类型别名    用这个 #define 名字 替换成的字符          宏定义   只是把一个你写的东西替换成另一种东西,比如#define Hello "hello",把Hello替换成&

C语言复习——指针 链表 与 文件操作

刚刚进入大二,准备开始学习C++,对大一所学的C语言一次练习,正好也是赶上老师布置的任务,用C语言写一个  销售管理系统  ,就尽可能的把所学的都用上,也就是结构,指针,文件操作,还有数据结构,本次加入了链表. 用两个函数 Load_LinkList() 和 Save_LinkList() 让链表与文件操作结合,除了打印函数,其他都是在内存中操作链表,这样写更有条理,在创建链表时没有采用书上的用一个中间变量引导,并插入到结点前面,而是直接在链表尾的next申请内存,便于理解,操作也方便. /*首