- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 作业: 编写程序,随机产生10个英文大写字母,然后按字典序输出。 * 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 1.C是函数式语言 2.必须有且只能有一个名为main的主函数 3.C程序的执行总是从main函数开始,在main中结束 4. C是模块化程序设计语言函数不能嵌套定义,可以嵌套调用 * * * 在内存中,供用户使用的存储空间可以分为三部分:程序区、静态存储区和动态存储区。 全局变量存放在静态存储区中。在程序开始执行时为全局变量分配存储区,在程序执行过程中它们占据固定的存储单元,程序执行完后被释放。 函数形参变量、局部变量和返回地址等数据存放在动态存储区中。在调用函数开始时为它们分配动态存储空间,函数结束时释放。 * 在C语言中每一个变量和函数有两个属性:数据类型和数据的存储类别。存储类别包括:自动的(auto)、静态的(static)、寄存器的(register)、外部的(extern)。 * 局部变量的存储方式 函数中的局部变量,如果不做专门声明,都是动态的。称为局部动态变量或者自动变量。自动变量可以用auto做存储类型的声明。自动变量定义时自动赋给随机数。 如果希望函数中的局部变量的值在函数调用结束后仍保留原值,应将其定义为局部静态变量,用static声明。静态变量定义时自动赋给初值0。虽然局部静态变量在函数调用结束后仍然占据存储单元,但由于它是局部变量,其它函数不能调用它。 * 例如 void f(int c) {int a=0; static int b=0; a++; b++; printf(%d:a=%d,b=%d\n,c,a,b); } main ( ) { int i; for(i=1;i=2;i++)f(i); } 运行结果是: 1:a=1,b=1 2:a=1,b=2 * 输出1~5的阶乘值 int f(n) int n; {static int t=1; t=t*n; return(t); } main() { int i; for(i=1;i=5;i++) printf(%d!=%d\n,i,f(i));} * 寄存器变量 为了减少从内存中存取变量值的时间,C语言允许将局部变量放在运算器的寄存器中,称为寄存器变量,用register声明 * int fac(int n) {register int i,f=1; for(i=1;i=n;i++)f=f * i; return(f); } main ( ) { int i; for(i=1;i=5;i++) printf(%d!=%d\n,i,fac(i)); } * 全局变量的存储方式 全局变量是在函数的外部定义的,存放在静态存储区,可以为程序中的各个函数所引用 * (1)根据变量定义点的位置有: 内部变量: 在一个函数内部定义 外部变量: 在函数之外定义 (2)根据变量作用域的范围有: 全局变量: 从定义点到本源文件终起作用 局部变量: 局部范围内起作用 (3)根据变量的生存期分: 静态存储变量:程序运行期间分配固定的存储空间; 动态存储变量:根据需要进行动态的存储空间临时分配 (4)根据变量的存放位置分: 内存变量:存放在内存中; 寄存器型变量:存放在寄存器中。 * 例如 int x; main ( ) { void a( ),s( ); x=1; printf(x begins as %d\n,x); a( );s( );s( );a( );a( ); printf(x winds up as %d\n,x);} void a(void) {x++; printf(add 1 to make %d\n,x);} void s(void) {x--; printf(substract 1 to make %d\n,x);} 运行结果是: x begins as 1 add 1 to make 2 substract 1 to make 1 substract 1 to make 0 add 1 to make 1 add 1 to make 2 x winds up as 2 * 6.7 内部函数和外部函
文档评论(0)