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<x<10是不行的(一定记住)。是先计算0<x 得到的结果为1或则0;再用0,或1与10比较得到的总是真(为1)。所以一定要用 (0<x)&&(x<10)表示比0大比10小。
(20)break
用在switch语句中用来结束switch语句;
用在循环结构中,用来结束当前的循环语句;
二:典型例题
(1)判断数正负
#include <stdio.h>
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<stdio.h>
int main()
{
char a;
scanf("%c",&a);
if(a%2==0)
printf("NO");
else
printf("YES");
return 0;
}
(3)判断能否被3,5,7整除
#include<stdio.h>
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<stdio.h>
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语言过程中的感受,那就是“痛苦并快乐着。”