C语言学习总结
一: 近期C语言知识点易错点整理
(1)main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。
(2)源程序的扩展名为 .c ,目标程序的扩展名为 .obj , 可执行程序的扩展名为 .exe。
(3)预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 符号常量是由宏定义“#define“定义的常量,在C程序中可用标识符代表一个常量。
例:计算圆的面积的c程序。
(4)define PI 3.1415926; 这个写法是错误的,一定不能出现分号。
(5)scanf函数的格式考察:
注意该函数的第二个部分是&a 这样的地址,不是a。
(6)考试口诀:e前e后必有数,e后必为整数。例:2.333e-1
(7)整型一般是4个字节, 字符型是1个字节,双精度一般是8个字节:
long int x; 表示x是长整型。
unsigned int x; 表示x是无符号整型。
(8)“/” 两边都是整型的话,结果就是一个整型。 3/2的结果就是1.
“/” 如果有一边是小数,那么结果就是小数。 3/2.0的结果就是0.5
“%”符号请一定要注意是余数,考试最容易算成了除号。)%符号两边要求是整数。不是整数就错了。
(9) ++a:先加1,再运算,a++:先运算,再加1。考试口诀:++在前先加后用,++在后先用后加。 如:a++,++a
(10) 注意:int(a+b) 和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b。
(11) 字符型和整数是近亲:两个具有很大的相似之处
char a = 65 ;
printf(“%c”, a); 得到的输出结果:a
printf(“%d”, a); 得到的输出结果:65 。
(12) a&&b: 当&&两边都为“真”时,表达式a&&b的值才是真。
(13) a||b: 当||两边有一个为“真”时,表达式a||b的值就是真。
(14) !a: 表示取反,如果a为真,则!A为假,反之亦然。
(16) x && y && z ,只有当x为真(非0)时,才需要判别y的值;只有x和y都为真时,才需要去判别z的值;只要x为假就不必判别y和z,整个表达式的值为0。口诀:“一假必假”。
(17)int 4字节 %d,%i
float 4字节 %f
double 8字节 %lf
char 1字节 %c
(18) if语句:
if语句必须以if开头;
if可以有多个else if;
if语句只有一个else;
if语句中最多只有一个代码块会被执行;
如果有else那么必然有一个代码块会被执行。
(19) 0 (20)break 用在switch语句中用来结束switch语句; 用在循环结构中,用来结束当前的循环语句; 二:典型例题 (1)判断数正负 #include int main() { int N=1; scanf("%d",&N); if(N>0) { printf("positive"); } else if(N==0) { printf("zero"); } else if(N<0) { printf("negative"); } return 0; } (2)奇偶ASCII值判断 #include int main() { char a; scanf("%c",&a); if(a%2==0) printf("NO"); else printf("YES"); return 0; } (3)判断能否被3,5,7整除 #include int main() { int a; scanf("%d",&a); if(a%3==0&&a%5==0&&a%7==0) printf("3 5 7"); if(a%3==0&&a%5==0&&a%7!=0) printf("3 5"); if(a%3==0&&a%5!=0&&a%7==0) printf("3 7"); if(a%3!=0&&a%5==0&&a%7==0) printf("5 7"); else if(a%3==0&&a%5!=0&&a%7!=0) printf("3"); else if(a%3!=0&&a%5!=0&&a%7==0) printf("7"); else if(a%3!=0&&a%5==0&&a%7!=0) printf("5"); else if(a%3!=0&&a%5!=0&&a%7!=0) printf("n"); return 0; } (4) 简单计算器最近 include int main() { int a,b; char d; scanf("%d %d %c",&a,&b,&d); if(d=='+') { printf("%d",a+b); } else if(d=='-') { printf("%d",a-b); } else if(d=='*') { printf("%d",a*b); } else if(d=='/') { if(b!=0) printf("%d",a/b); else printf("Divided by zero!"); } else { printf("Invalid operator!"); } return 0; } 三:学习方法 (1)把运算符的优先顺序排列清楚,要分清楚哪个先运算,哪个后运算。 (2)在编程之前要考虑好程序的算法,写出流程图,这样才能更加快速的、有效的编程。 四:学习感悟 想学好C语言,交流是必须的,很多细节的错误或者算法上的小瑕疵往往是当局者迷旁观者清,这时候果断与身边人进行交流是明智的选择。而且在学习的过程中,几位学员之间相互交流学习心得可以快速学习,事半功倍。 总之,通过c语言的学习,使我对计算机语言有了一些初步的认识和理解,使我对计算机语言不再像以前一样一无所知,认为那是高不可攀的、十分难以理解、一般人学不会的东西了。我认为只要学习方法掌握好,再加上刻苦的练习,是完全有可能学好任何一门计算机语言的。最后用一句话表明在学习c语言过程中的感受,那就是“痛苦并快乐着。”