c语言edcbabcde,全国计算机二级C语言程序设计讲义 变量存储类别.ppt

全国计算机二级C语言程序设计讲义 变量存储类别

第14章 变量的存储类别 及 内部、外部函数;对变量的定义需要给出两方面的属性:; 内存中供用户使用的空间有三部分:;1、 自动变量;例 自动变量的特点示例。#include void f (int n) { auto int s=0; /*auto可以省略*/ s=s+1; printf("No.%d:s=%d\n",n,s); } void main() { int num; for(num=1;num<4;num++) f (num); };2、静态变量;静态变量举例;例 局部静态变量的特点示例。

#include void f (int n) { static int s=0; s=s+1; printf("No.%d:s=%d\n",n,s); } void main() { int num; for(num=1;num<4;num++) f (num); };静态变量的特点:;自动变量和静态局部变量区别:;在选择使用静态局部变量还是自动变量,可以从以下两点考虑:

如果需要在两次函数调用之间保持上一次函数调用结果,可以使用局部静态变量;

如果在每次调用函数时都必须对局部变量初始化,选择自动变量。但是实际上局部静态变量占用内存时间较长,并且可读性差,因此,除非必要,尽量避免使用局部静态变量。;3、寄存器变量(register);例 求n!的函数;4、外部变量(extern); 对于由多个源文件组成C程序,C语言规定:对共用的外部变量可以在任一源文件中定义一次,其他源文件中用extern对其声明后,即可使用。如果希望某些外部变量仅限于本文件使用,则在定义外部变量时前面加一个static说明。

外部变量的声明可以有多次,其位置在定义点之前任意处,不需要分配存储空间。

外部变量的定义只有一次,其位置只能在函数外,并可对外部变量分配存储单元,初始化。;例 外部变量举例(在同一源文件内);例:外部变量举例(在两个文件中) 求 ab。;二、内部函数和外部函数;内部函数也称静态函数。

内部函数不能被其他文件中的函数使用,所以在不同文件中可以使用相同名字的内部函数。

;2、 外部函数;在C语言中,函数前如果无关键字extern,隐含其为外部函数。

外部函数只能在所有使用它的文件中定义一次。

外部函数在调用它的其他文件中,要用extern加函数原型加以说明,方可使用。;函数练习题:;func(int a, int b){static int m=0,i=2; i+=m+1; m=i+a+b; return m; }main( ){int k=4, m=1, p ;p=func(k,m); printf(“p=%d\n”,p); p=func(k,m); printf(“p=%d\n”,p);};求程序运行结果;1、编写一个计算字符串长度的递归函数。

要求:输入一个任意长度的字符串,输出该串的长度。 ;程序清单:#include int i=0;main( ){int stlen( );char str[100];printf("Input string:\n");gets(str);strlen(str);printf("The string length=%d\n",i); };2、输入‘A’到‘Z’的任意一个英文字符,输出回文串。 要求用递归函数实现。

例:输入 C 输出 CBABC 输入 A 输出 A

输入 E 输出 EDCBABCDE ;#include char chr;main( ){ void reverse(); printf(“Input a letter:"); scanf("%c",&chr); reverse(chr); printf("\n");};void reverse(ch)char ch;{if(ch!='A') {printf("%c",ch); re

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值