C语言知识点总结_第1页
C语言知识点总结_第2页
C语言知识点总结_第3页
C语言知识点总结_第4页
C语言知识点总结_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

总体上必须清楚的

C程序结构是三种:顺序结构、选择结构(分支结构)、循环结构main择),有且只有main。二进制bit是01byte是指字节八个位源程序ASCII存放在文本文件中。2、#definePI3.1415926;这个写法是错误的,一定不能出现分号6、breakswitchC这个过程中注意.c.obj的,只有.exe()1、标识符(必考内容关键字:不可以作为用户标识符号。maindefinescanfprintf。迷惑IfIfdefinescanfprintfinclude。记住预定义标识符可以做为用户进制来进行处理(考过两次2)小数的合法写法:C语言小数点两边有一个是零的话,可以不用写a、2.333e-12.333×10-1b、考试口诀:ee后必有数,e后必为整数。整型4字符型1个字节,双精度8longintx;xunsignedintx;x核心:表达式一定有数值/”两边都是整型的话,结果就是一个整型。3/21.“/”如果有一边是小数,那么结果就是小数。3/2.00.5该表达式为1、intx=y=10:定义时,不可以2、int 对滴,定义完成后,可以4、intx=7.7;对滴,x5、floaty=7;对滴,x7.0inta=5,++a(6,a++(运行的机理:++a1aa++aa++aaz=(2,3,4)z4(z=2,3,4(整个是逗号表达式)z2。(int)a不是int(a,注意类型上一定有括号(int(a+b)1、inta3、1/23/2;'1'是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号'0'的ASCII数值表示为48,'a'的ASCII数值是97,'A'的ASCII数值是65。 字符是可以进行算术运算的,记住:'0'-大写字母和小写字母转换的方法:'A'+32='a'32。一般转义字符:背诵\0、\n、\’、\”、\\。八进制转义字符:‘\1410十六进制转义字符:’\x6d0xchara=65;printf(“%c”,a);得到的输出结果:aprintf(“%da);1:chara6,ba<<2;a62:一定要记住,异或的位运算符号”^”。0异或11。000。两个女的生不出来。3:22第一节:数据输出(一(二3、printf“;把第二部分的变量、表达式、常量以第一部分printf“a=%d,b=%d12,一模一样。在黑色屏幕上面显示为printf“a=%d,\nb=%d12,5、int printf“%d,x;printf“%o,x;printf“%#o,x;printf“%x,x;printf“%#x,x;6、intx=12,y=34;charz=‘aprintf“%dx,y;yprintf“%cz; 整 字符长整型浮点型printf“%2d123123printf“%5d123printf“%10f1.25。结果为printf“%5.3f1251.250(小数点算一位)printf“%3.1f1.251.3(要进行四舍五入)scanf“a=%d,b=%d&a,&b)在黑色屏幕上面输入的为a=12,b=341234ab2、scanf“%d,%dx,y;这种写法绝对错误,scanfscanf“%d,%d&x,&y3scanfintx=2;intscanf“%d,x; scanf“%d,p;scanf“%d,&p;错误 scanf“%d,*p)4(考试重点scanf“%2d%4d%d&x,&y,&z;x终端输入:1234567 由于1和2中间有空格,所以只有1位给xscanf“%2d%4d%d,&x,&y,&z;x5intprintf“%d,x; 结果为97printf“%c,x; 结果为scanf“%d&xscanf“%c&x1,特别注意表示的是字符‘1’ASCII48注意该函数的第二个部分是&a这样的地址,不是a;scanf(“%d%d%*d%d”,&a,&b,&c);putchar,getcharcharagetchara。putchar(‘yyxy(要求背下来)不可以把x=y,y=x;要用中间变量t=x;x=y;y=t。(y=(int(x*100+0.5)/100.0 y=(int(x*1000+0.5)/1000.0这个保留三位,对第四位四舍五入y=(int(x*10000+0.5)/10000.0x(int)x特别要注意:C00C语言有构造类型,没有逻辑类型(if只管后面一个语句,要管多个,请用大括号9>89>817<67<60bintx=1,y=0,z=2;0<21,称为了真的了!背共有 !三种逻辑运算符号!>&&>||1x0100<x<10是不行的(一定记住。0<x100110(1。所以一定(0<x)&&(x<10)010小。3)if语句a、elseifelsedifif(a<b)t=a;elsemin=b;ifif(a<b)ifif(a==t)printf(“a”);elseif(b==t)printf(“b”);elseif(c==t)printf(“c”);elsepritnf(“d”);ifinta=1,b=0;elseif(a==0)elseb+=3a=1,b=0; elseif(a= 是假的执else 12b、10210时,3c、inta=1,b=2,c=3,d=4,e=5;k=a>b?c:d>e?d:e;ksanswitchswitch(x)x1{case 1case2:}1)a)for();while(); do-while()三种。d)do-while()循环的最后一个while();的分号一定不能够丢(当心上机改错do-while2)break和continuebreak:是打破(破了整个循环)所以break。continue继续(继续循环运算,但是要结束本次循环,就是循环体内剩下的3)h(c=gchr))()!=’\a32和(a=3!=2考试注意点:{printf“%d,iif(i+1)%5==0)printf“\n);}i%5==0inti=123;{printf“%d,i%10;8)for只管后面一个语句:inti=3;for(i=3;i<6;i++ 不停的输入,直到输入#停止输入 while((x=getchar())!=’#’ while((x=getchar())!=’$’while((x=getchar())!=’?’) forswitch多次出现的考题int intwhile(--k; while(k--printf“%d,k; printf“%d,k结果为 3intvoidiszhishu(inta{printf);}6、如何求阶层:n!intfun(int{intp=1;for(i=1;i<=n;i++)p=p*i;returnp;}add(intx,inty){returnx+y;}{intsum=add(add(7,8,9}8(示意图{inta=5,b=6,c;c=add(a,b);}

a,b把a,b

intadd(intx,int{intz;returnz;}

zadd(考试的重点int*fun(inta[],int{int*fun(int*aint 针int*fun(intaint int*fun(intb[]int int*fun(int*int abs()sqrt()、fabs()、pow()、sin()pow(a,b)是重点。23pow(2,3)表示1、int*p *p*pscanf“%dp2、*p++和(*p)++的之间的差别:改错题目中很重要!考试超级重点*p++是地址会变化 (*p)1。例题:int*p,a[]={1,3,5,7,9};*p++:13(*p)112。 intx=7; (char*s=“meikanshu”while(*s){printf“%c,*s;s++;}sms++是地址移动,打方法一:inta=2,*p=&a方法二:inta=2,*p; voidfun(inta,int voidfun(int*a,int{intt {intt {intx=1,y=3, {intx=1,y=3,fun(x,y; printf“%d,%d,x,y; printf“%d,%d,x,y 的交换不会影响到main中的x和y。 中的交换,就会影响到main中的x和y。 int*fun(int*a,int if(*a>*b)return returnaaelsereturn}{intmaxfun(&x,&y; printf“%d,%d}代替。例如:inta=2,*p=&a;inta[5]={1,2,3,4,5};inta[5]={1,2,3, inta[]={1,2,3,4,5}; inta[5]={1,2,3,4,5,6};不合法,赋值的个数多余数组的个数了inta[5];注意这个地方有一个重要考点,定义时数组的个数不是变量一定是常量。inta[5] int int intx=5,int 不合法,因为个数是xdefineP int 合法,definePint inta[2][3]={1,2,3,4,5, inta[2][3]={{1,2,3,} int inta[2][3]={1,2,3,4,5,6,7}; inta[][3]={1,2,3,4,5,6}; inta[2][]={1,2,3,4,5,6}; 2、aa++a=a+23、aa+1跳一列。1、aa[0][0]的地址。2、aa++a=a+23、aa+1跳一行。aa[0]a[1]、a[2]是不同的,它们的基类型是不同的。前者是一行元素,后 23 56 89*(a[0]+1)a[0][1]元素,*(a[1]+2)a[1][2]元素,6。inta[]={1,2}合法 inta[][4]={2,3,4}合法 但intinta[0],a[1]现在就是一个列指针。a[0]+1*p[2]a[2]变成 a[2][3]变成*(a+2)[3]再可以变成 文件的复习方法1)strlen()strcat()strcmp()strcpy()的使用方法一定要记住。strcat()strcmp()有两个参数。strlensizeofdefinef(x(x*x)和define f(x)x*x之间的差别。一定要好好的注意这写容intp=(int*)malloc(4;p(int*)malloc(sizeof(int;以上两个等价当心填空题目,mallocvoid*(*f()intadd(intx,int {int(*f();}赋值之后:合法的调用形式为1、(*f(2,3)char chara[5]={ scanfgets如果输入的是goodgoodscanf(“%s”,a);good.gets(a);goodgoodstudy!unionTT{intchar考点一:sizeof(structTT)4; {add(29{add(29,}intadd(inta,int{return}Co2.cadd()了。main这句话错了。例如:no2.c头文件一定是以.h结束的。这句话错了。例如:no1.c#include”no2.c”以.ccharch[]=”iamhand

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论