- 1、本文档共193页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
删除空格的思路 I a m h a p p y \0 …… I a m h a p p y \0 …… 非空 I 空 非空 a 非空 m 空 非空 h 非空 a 非空 p 非空 p 非空 y 结束 \0 \0 i=0 j=0 1 1 2 2 3 3 4 5 4 6 5 7 6 8 7 9 8 10 #include stdio.h int main() { extern void enter_string(char str[]); extern void delete_string(char str[], char ch); extern void print_string(char str[]); char c,str[80]; enter_string(str); scanf(“%c”,c); delete_string(str,c); print_string(str); return 0; } file1(文件1) 声明在本函数中将要调用的已在其他文件中定义的3个函数 void enter_string(char str[80]) { gets(str); }? void delete_string(char str[],char ch) { int i,j; for(i=j=0;str[i]!=\0;i++) if(str[i]!=ch) str[j++]=str[i]; str[j]=\0; } void print_string(char str[]) { printf(%s\n,str); } file2(文件2) file3(文件3) file4(文件4) 例7.16 考察静态局部变量的值。 #include stdio.h int main() { int f(int); int a=2,i; for(i=0;i3;i++) printf(“%d\n”,f(a)); return 0; } int f(int a) { auto int b=0; static c=3; b=b+1; c=c+1; return(a+b+c); } 若不赋初值,是0 若不赋初值,不确定 例7.16 考察静态局部变量的值。 #include stdio.h int main() { int f(int); int a=2,i; for(i=0;i3;i++) printf(“%d\n”,f(a)); return 0; } int f(int a) { auto int b=0; static c=3; b=b+1; c=c+1; return(a+b+c); } 仅在本函数内有效 例7.17 输出1到5的阶乘值。 解题思路:可以编一个函数用来进行连乘,如第1次调用时进行1乘1,第2次调用时再乘以2,第3次调用时再乘以3,依此规律进行下去。 #include stdio.h int main() { int fac(int n); int i; for(i=1;i=5;i++) printf(“%d!=%d\n”,i,fac(i)); return 0; } int fac(int n) { static int f=1; f=f*n; return(f); } 若非必要,不要多用静态局部变量 3. 寄存器变量(register变量) 一般情况下,变量(包括静态存储方式和动态存储方式)的值是存放在内存中的 寄存器变量允许将局部变量的值放在CPU中的寄存器中 现在的计算机能够识别使用频繁的变量,从而自动地将这些变量放在寄存器中,而不需要程序设计者指定 7.9.3 全局变量的存储类别 全局变量都是存放在静态存储区中的。因此它们的生存期是固定的,存在于程序的整个运行过程 一般来说,外部变量是在函数的外部定义的全局变量,它的作用域是从变量的定义处开始,到本程序文件的末尾。在此作用域内,全局变量可以为程序中各个函数所引用。 1. 在一个文件内扩展外部变量的作用域 外部变量有效的作用范围只限于定义处到本文件结束。 如果用关键字extern对某变量作“外部变量声明”,则可以从“声明”处起,合法地
您可能关注的文档
最近下载
- (精品)一元一次不等式及一元一次不等式组及答案.doc VIP
- 2025年党支部工作计划(详细版).docx VIP
- GB 50168-2018 电气装置安装工程电缆线路施工及验收标准.docx
- 小猪佩奇第二季中英文(文本).docx
- 佳能EOS-60D-数码相机使用手册(说明书).pdf
- 高血压中医辩证防治和保健.ppt VIP
- 国防军工行业低成本弹药深度之一:航空制导炸弹为空中精确打击主要武器,小型化、复合制导是重要趋势.docx
- 2019北京中考专题复习总结--几何综合.pdf
- 家具售后服务承诺及方案.doc
- (正式版)F-Z∕T 80014-2024 洁净室服装 通用技术规范.docx VIP
文档评论(0)