收藏 分享(赏)

(考研复试)C语言笔记.doc

上传人:HR专家 文档编号:11549082 上传时间:2020-06-21 格式:DOC 页数:17 大小:46KB
下载 相关 举报
(考研复试)C语言笔记.doc_第1页
第1页 / 共17页
(考研复试)C语言笔记.doc_第2页
第2页 / 共17页
(考研复试)C语言笔记.doc_第3页
第3页 / 共17页
(考研复试)C语言笔记.doc_第4页
第4页 / 共17页
(考研复试)C语言笔记.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、1:用高级语言编写的程序叫做源程序,然后用编译程序吧源程序翻译成二进制的目标程序,然后将该目标程序与系统函数库以及其他目标程序连接,形成可执行程序。2:算法五个特点:确定性,有穷性,输入,输出,可行性。3:程序流程图、N-S盒图、伪代码4:int 无论有符号无符号,都是16位 Short 无论是有符号还是无符号都是16位 Long 无论是有符号还是无符号都是32位 Float 32位 double 64位,long double 128位。一个整型常量后面加u就是无符号,加l就是长整型5:t,b退格,r移到本行开头6:048,A65,a97,差值327:级别charintunsignedlon

2、gnum39:结构体在定义的时候,不能student I,j,k;应该Struct student I,j,k;40:void *malloc(int size)41:共用体所占内存等于最长成员的长度。42:枚举类型:Enum weekdaysum,mon,tue,wed,thu,fti,stuEnum weekday I,j,k;定义时候自动赋值0-6;printf(“%d”,sum) 输出0也可以强制赋值Enum weekdaysum=7,mon,tue,wed,thu,fti,stu则mon自动为8,tue自动为9但是一个整数不能在定义外直接赋值枚举,i=7;是错的,应该要i=(enum

3、 weekday)2,相当于i=tue;43:typedef struct int I,int j,int kNUMNUM sum;即可,不用structTypedef int NUM100;意思是 NUM表示一个长度为100的整形数组, 到时候NUM n,就表示,n为一个长度为100的整型数组。Typedef int *NUM;意思是 NUM表示一个整形指针, 到时候NUM n,就表示,n为一个整型指针。NUM a10表示 a为一个整形指针数组。Typedef int (*NUM)();意思是 NUM表示一个指向函数指针, 到时候NUM n,就表示,n为一个指向函数指针。44:位与,可以清零

4、,可以取中间某位,45:异或:特定位翻转(即与11111111异或), 保留原值(即与00000000异或), 交换两个值不用临时变量A=ab;b=ba;a=ab;46:右移特殊,如果为无符号,就左边补0,如果有,就正数补0,负数补1;47:位段:Struct akunsigned a:2;(必须是unsigned)Unsigned b:3;Unsigned c:4;Int o;Unsigned d:5;Unsigned :0;Unsigned e:6;Int I; Struct ak data;一个abc占9位,那个i从第三个字节开始算,d占5位,但是Unsigned :0;表示下一个位段从

5、下一个单元开始放,e占6位,从下一个单元开始放i;所以data一共占用8个字节如果赋值data.a=9;就会自动把8的低2位给data.a,a里面就是01,再Printf(“%d”, data.a)输出148:输入一个字符串的时候,用回车结束,但是这个回车也会被接受,要用一个getchar来收下回车符,比如Scanf(“%s”,filename)Ch=getchar();49:fp=fopen(“a1”,”r”)打开失败则返回NULLfclose(fp);成功返回0,失败返回EOF fputc(ch,fp)把字符ch写到fp中,失败返回EOFch=fgetc(fp)从指定文件读入一个字符,失败

6、返回EOFfeof(fp)判断文件是否结束,fread(buffer,size,count,fp)从buffer数组中读入count个数字进fp文件中,size表示数组中每个元素占字节数。fwrite(buffer,size,count,fp)fprintf(fp,”%d”,d)把整型变量d输出到fp文件中fprintf(fp,”%d”,&d),从磁盘文件中读入一个整形putw(10,fp)把整数10输出到fp中i=getw(fp)fgets(str,n,fp)从fp文件中读n-1个字符,放入str中fputs(str,fp)把str放到fp中rewind(fp),是fp回到文件开头fseek

7、(fp,100,1)从fp文件当前位置开始,往后移100个字节。0表示文件开始,2表示文件末尾i=ftell(fp),i为文件当前对文件开头的偏移量、50:r 只读 w只写 a追加 Rb只读(打开的是二进制文本) wb只写 ab 追加R+,w+,a+都是读写,但是r+需要该文件已经存在,w+的时候会新建一个文件,a+打开后指针在文件末尾 51:find是标识变量。52:定义一个指针数组,并分别存入四个字符串的首地址。53:*(a+i)表示ai或者数组a的第i个元素。50:a表示二维数组首地址,a0表示第0行首地址,a00表示第0行第0列数组元素。54:sqrt返回的数据类型是double55:

8、while(K=0)循环体一次也不执行56:c语言的编译系统对宏的处理是在源程序中其它正式编译之前进行。57:char str=”ABC”,*p=str; P=p+3; Printf(“%d”,strlen(strcpy(p,”ABCD”);答案是4;58:u(u=(ab)?a:b)c)?u:c59:printf(“%d”,y=y/x);输出的是运算后的y的值60:argc是命令行参数的个数。61:以0开头的都是8进制,比如int x=010,就是x=8;62:返回值为char的函数,return 0是可以的63:strlen中,t b 等都按一个字符算。64:构建杨辉三角:void yh(i

9、nt a1818)int j,k;for(j=1;j18;j+)aj1=1;ajj=1;for(j=3;j18;j+)for(k=2;k0)?f:n;答案无论是n0还是n异或或(8)逻辑运算:与或(9)问号(右结合)(10)+=,|=。其中算术运算高于位预算(右结合)(12)逗号81: 括起来的叫 程序块,其后不需要分号。82:else默认和最近的一个if匹配,但是可以用打乱匹配。If()if()Else83:字符串转整数N=0;While(si!=0)N=10*n+(si-0);Return n;84:把数组n转化为字符串,Si+=n%10+0;85:do while循环体至少被执行一次。8

10、6:goto语句用于深度循环的跳出。87:函数与主函数在同一个源文件,若函数声明与后面定义的返回值不一类型,就会检测出错误,但是如果不在同一个源文件,就不会检测错误。88:外部变量的好处就是在函数之间提供一种代替函数参数与返回值的数据交换,但是这样容易破坏函数之间的独立性。如果两个函数必须共享数据但是互不调用对方,这种情况下最好用外部变量。比如栈和队列。89:计算器的时候,/和-的左右字符串必须加以区别。90:计算器中,输入一个数字,比如123.456,但是输入2的时候,2想知道下一个是数字还是操作符,如果是数字,则把1和2还有3都放入字符串中,如果是操作符,就把si中的1,2变成数字赋值,那

11、么这就需要一个预输入的操作,判断下一个输入的是数字还是操作符,用缓冲区思想可以解决。取数规则:如果缓冲区中有货,就从缓冲区中取,如果没,就调用输入函数。如果预读入的是一个字符,就放进缓冲区。读入123.456的6,看到下一个读入的是+号,就把+号放进缓冲区,把123.456给化成数字然后复制,然后下一次取值就从缓冲区中取出+号。91:.c文件里面是完整的源文件,.h是把诸多个.c文件的共享部分集中在一起。#undef getchar 取消getchar的宏定义、92:条件编译:一般来说源文件中所有行都参加编译,但是希望一部分代码在满足条件时候再编译,于是有了条件编译#ifdef#else#endif采用条件编译,可以减少被编译的语句,减少目标程序的长度。93:Char *p sizeof(p)=4;Char a100 sizeof(a)=400;Char s1=A,B,C,D,E,F; sizeof(s1)=6char s2=ABCDEF; sizeof(s2)=7;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 计算机原理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报