C语言部分概念.docVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言部分: 1.写一个宏, 求两个整数的最大值. #includestdio.h #define MAX ab?a:b; Void main{ Int a ,b; Printf(“请输入两个数:”); Scanf(“%d %d”,a,b); Printf(“max = %d”,MAX); } 2.内存如何划分(地址从高到低), 每个分区的特点是什么? 内存分为五大区,分别是:栈区、堆区、静态区、常量区、代码区 1.栈区:内存为8M,地址从高到低排列,函数调用时,在栈区开辟内存,函数调用结束时就会立马被系统回收 2.堆区:开辟内存用函数malloc calloc给开辟的内存清零 realloc重新分配内存 生命周期为从程序开始一直到程序结束 3.静态区:静态区关键字为static,在主函数外定义的变量是全局变量,可被改写,作用域在整个程序,他的生命周期重程序开始一直到程序结束 4.常量区:存储常量数字 ,字符或字符串,是立即数,立即使用立即释放,存储在CPU中,在使用是通常从常量区拷贝到栈区开辟的变量空间中 5.代码区:存储代码,生命周期从程序开始到程序结束 3.变量定义三要素__变量类型___、__变量名____和__变量值____ 4.编写程序,实现两个整数的交换 #includestdio.h Void main { Int a, b; Int temp = a; A = b; B = temp; } 5.逻辑运算符包括______、__||____和__!____ 6.分支结构的分类和格式; If(条件){表达式} Else{表达式} Switch: Case1:表达式1; Case2:表达式2; ..., Default:表达式 7.编写程序, 输入一个年份, 判断该年份是否是闰年 #importfounction.h Void main { Printf(“请输入年份:”); Scanf(“%d”,a); If(a % 4 ==0 || a 100 == 0){ Printf(“该年是闰年”) } Else printf(“该年不是闰年“); } 8.for循环包含__循环变量初值____、__循环条件____、__循环步长____和__循环体____四部分 9.break和continue的作用 Break是结束本次循环 Contiue是跳出本次循环,直接进入下次循环 10.sizeof和strlen的区别 Sizeof是指变量所占空间 字节长度 Strlen是指字符串的长度 11.用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #importfounction.h #define second 365*24*60*60; 12.static的作用 Static 静态变量的关键词,定义静态变量,作用域是整个程序 13.堆和栈的区别 (1)栈区是由编译器自动管理,一旦函数调用结束内存有系统自动的回收,无需手动释放,其进栈方式是先进后出,进栈出栈有指令进行,效率较高,当内存空间超过8M时,会出现溢出。其分配方式有静态分配(由编译器完成)和(alloc函数完成)动态分配 (2)堆是高地址扩展的数据结构,不是连续的内存空间,遍历方向是由低地址向高地址,其释放是由程序员控制,容易产生内存泄漏;其内存大小受限于计算机系统的中有效虚拟内存,数据的存入提取均由函数库完成。堆得分配方式是动态分配(alloc函数完成)有程序员手动释放。 14.堆区常见的内存问题 堆是一种经过排序的树形数据结构,每个结点都有一个值。通常所说的堆的数据结构,是指二叉堆。堆的特点是根结点的值最小,且根结点的两个子树也是一个堆。由于堆的这个特性,常用来实现优先队列,堆的存取是随意,这就如同在图书馆的书架上取书,虽然书的摆放是有顺序的,但是想取任意一本时不必像栈一样,先取出前面所有的书,书架这种机制不同于箱子,可以直接取出想要的书。 15.􏲧􏵽􏵾􏵿指出下述变量a的含义: int a[10] :数组名 int *a :变量名 int (*a)(int) :函数变量 16.变量名的命名规范是什么? 1).以字母 下划线开头 2).非系统关键字 3).包含字母、数字、下划线 17.指针和地址是什么关系? 指针就是地址 18.局部变量能否和全局变量重名? 19.请写出下列代码的输出内容    #include  stdio.h   int main(void)    {     int a,b,c,d;    a=10;      b=a++;      c=++a;       d=10*a++;      printf(b,c,d:%d,%d,%d,b,c,d);      return 0;   } b,c,d

您可能关注的文档

文档评论(0)

1112111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档