每接触一种新的编程语言,都会有一种莫名的激动和紧张,是对新的语言学习的向往,想学习的更多;也会产生胆怯,害怕掌握不了语言的精髓,一如“邯郸学步”。
但是我既然选择了学习iOS,就要坚持到底。刚刚开始接触iOS,认为会难以入门,或者说对于其中的知识会摸不着头脑之类。可是万变不离其宗,C语言是学习计算机的一门基础的语言,通用于任何编程语言的学习,iOS也不例外。iOS包括C语言,Objective-C,UI...之后的不管如何,选择我要将C语言好好地运用熟练,打好基础。以下是C语言学习的知识。
C语言的基础
1、进制的转换: x进制->十进制:按权求和
十进制 - >x进制:连除倒取余
千万不可弄混了,刚开始老师让练习时,我就记反了,最终重新做的~~~~(>_<)~~~~
2、基本数据类型
int 整型 4 %d
short 短整型 2 %hd
char 字符型 1 %c
long 长整型 4或8 %ld
float 单精度浮点型 4 %f
double 双精度浮点型 8 %f
3、常量、变量
常量:程序运行期间不可改变的值;
变量:
语法: 类型修饰符 变量名 =初始值;
变量命名规则:
1、以数字、字母、下划线组成,且数字不能做开头;
2、不能与系统保留字相同;
3、不能从复使用;
4、要做到见名知意
5、驼峰式命名(规范):如果取的变量名为一连串的英文字母,要将每一个单词的首字母大小。
4、赋值运算符
用于给变量赋值,将等号右边的值赋给左边的值。而且赋值运算符的优先级比较低,如果运算有计算,要先进行计算,再 进行赋值。
注意,在计算机中语言判断等于的时候用“==”,“=”是赋值运算符。
关系运算符
+ - * / -= += *= /= < > <= >= == !+
注意:使用++或--时,如果其放在变量的前面,就先自加自减,再进行运算;如果放在变量的后面,先进行运算, 再进行自加自减。
5、输出、输入函数
printf(格式串,表达式1,表达式2...);
scanf(格式串,表达式1,表达式2...);格式串后不要加“\n”。
格式串 =普通字符 +转化符;
6、逻辑运算符:
&& 逻辑与一假即假,只有当等号两边的表达式都为真时,逻辑运算的结果才为真。
|| 逻辑或 一真即真 只有当等号两边的表达式都为假时,逻辑运算结果才为假。
! 逻辑非 去逻辑运算的相反结果。
7、BOOL类型非真即假只有两种结果:YES NO
8、程序的三种结构:
顺序结构、分支结构(选择)、循环结构
顺序结构:按照语句的先后依次执行;
分支结构
1)
if (条件表达式) {
语句
}
条件为真的时候,执行循环体,否则直接输出结果。
2)
if (条件表达式) {
语句
}else
语句
3)
if (条件表达式) {
语句
}
else
if (条件表达式) {
语句
}
else
语句;
9、条件运算符:三目运算符
格式: 条件表达式?表达式1:表达式2;
当第一个条件表达式成立,执行表达式1的值,否则执行表达式2的值。
int max =a > b? a:b;
判断a,b之间的最大数,a>b,输出a,反之输出b.
10、枚举类型
是一组有符号的名称的整型变量,一一列举所有的状态,罗列出所有的结果。
语法结构:enum 枚举名 {
枚举值表};
目的:提高程序的可读性;
11、switch语句
多分支语句,通过判断整型表达式的值,来决定执行哪一分值的语句;常与case连用。
语法格式:
switch (整形表达式) {
case 值 1 :{
语句1
break;}
case 值2 :{
语句2
break;}
...
case 值n:{
语句n
break;}
default:
{语句default;
break;
}
}
只适用于少数的情况下;break:用于跳出本层循环,不在执行下面的语句;continue:用于结束本次的循环,直接 进行下面的循环。
12、循环结构
定义:在满足特定的条件下,反复的执行某段程序;循环常与数组一起使用。
常见的循环;
1、while (条件表达式) {
语句
}
条件为真,就一直执行循环体,直到条件不满足,停止;
2、
do {
语句
} while (条件表达式);
先执行循环体,在判断条件,条件不满足,循环结束。
3、
for (1循环变量初始化; 2循环条件; 3变量的增量) {
4语句
}
执行的顺序:1->2->4->3->2->4->3...一直到条件不满足,循环结束。
13、数组:
定义;相同数组的类型成员组成的一个数组。
数组元素:构成数组的元素。数组中每一个元素都可以叫做数组元素,每一个成员都有一个不同的下标。
数组的下标:是数组的元素的位置的一个索引或指标,从0开始,到数组元素总数-1;下表可以使变量,也可以是常量。
数组维数:根据数组的维数,将数组分为一维、二维、三维数组。
语法格式:
类型说明符 数组名[常量表达式]= {值1,值2,值3....};
元素的访问:通过数组的下标和数组名
定义数组:大数组前面加类型修饰符;不加类型修饰符,变为下标为i的元素。
定义数组:int g[20];
下标为k的元素:g[k] = arc4random()%( 50- 10 +1)+10;
随机数:
a[i] = arc4random()%(a - b + 1) + b;
例:sort[i] = arc4random()%(40 - 20 + 1) + 20;
取40到20之间的任意数