⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 51.htm

📁 C语言学习宝典大全
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<BR>&nbsp;&nbsp;&nbsp; return语句可以向调用函数返回值, 但这种方法只能返回一个参数,
在许多情
<BR>况下要返回多个参数, 这是用return语句就不能满足要求。Turob C2.0提供了另一
<BR>种参数传递的方法, 就是调用函数向被调用函数传递的形式参数不是传递变量本身,
<BR>而是传递变量的地址, 当子函数中向相应的地址写入不同的数值之后, 也就改变了
<BR>调用函数中相应变量的值, 从而达到了返回多个变量的目的。
<BR>&nbsp;&nbsp;&nbsp;&nbsp; 例4:
<BR>&nbsp;&nbsp;&nbsp;&nbsp; #include&lt;stdio.h>
<BR>&nbsp;&nbsp;&nbsp;&nbsp; void subfun(int *m, int *n);&nbsp; /*说明子函数*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int main()
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i, j;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("i, j=?\n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf("%d, %d",
&amp;i, &amp;j); /*从键盘输入2个整数*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("In main
before calling\n"/*输出此2数及其乘积*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"i=%-4d j=%-4d i*j=%-4d\n", i, j, i*j);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; subfun(&amp;i,
&amp;j);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*以传送地址的方式调用子函数*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("In main
after calling\n"/*调用子函数后输出变量值*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"i=%-4d j=%-4d i*j=%-4d\n", i, j, i*j);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp; void subfun(int *m, int *n)
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *m=*m+2;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *j=*i-*j;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("In subfun
after calling\n" /*子函数中输出变量值*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"i=%-4d j=%-4d i*j=%-4d\n", *i, *j, *i**j);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }

<P>&nbsp;&nbsp;&nbsp; 上例中, *i**j表示指针i和j所指的两个整型数*i和*j之乘积。
<BR>&nbsp;&nbsp;&nbsp; 另外, return语句也可以返回一个指针, 举例如下。
<BR>&nbsp;&nbsp;&nbsp; 下例中先等待输入一字符串, 再等待输入要查找的字符,
然后调用match() 函
<BR>数在字符串中查找该字符。若有相同字符, 则返回一个指向该字符串中这一位置的
<BR>指针, 如果没有找到, 则返回一个空(NULL)指针。
<BR>&nbsp;&nbsp;&nbsp; 例5:
<BR>&nbsp;&nbsp;&nbsp;&nbsp; #include&lt;stdio.h>
<BR>&nbsp;&nbsp;&nbsp;&nbsp; char *match(char c, char *s);
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int main()
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char s[40],
c, *str;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str=malloc(40);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*为字符串指什分配内存空间*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Please
input character string:");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gets(s);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*键盘输入字符串*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Please
input one character:");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c=getche();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*键盘输入字符*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str=match(c,
s);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*调用子函数*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; putchar('\n');
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; puts(str);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*输出子函数返回的指针所指的字符串*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp; char *match(char c, char *s)
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i=0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while(c!=s[i]&amp;&amp;s[i]!='\n')/*找字符串中指定的字符*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
i++;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return(&amp;s[i]);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*返回所找字符的地址*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;

<P>&nbsp;&nbsp;&nbsp; 三、用全程变量实现参数互传
<BR>&nbsp;&nbsp;&nbsp; 以上两种办法可以在调用函数和被调用函数间传递参数,
但使用不太方便。如
<BR>果将所要传递的参数定义为全程变量, 可使变量在整个程序中对所有函数都可见。
<BR>这样相当于在调用函数和被调用函数之间实现了参数的传递和返回。这也是实际中
<BR>经常使用的方法, 但定义全程变量势必长久地占用了内存。因此, 全程变量的数目
<BR>受到限制, 特别对于较大的数组更是如此。当然对于绝大多数程序内存都是够用的。
<BR>&nbsp;&nbsp;&nbsp; 例6:
<BR>&nbsp;&nbsp;&nbsp;&nbsp; #incluide&lt;stdio.h>
<BR>&nbsp;&nbsp;&nbsp;&nbsp; void disp(void);
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int m[10];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*定义全程变量*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int main()
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("In main
before calling\n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=0; i&lt;10;
i++){
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
m[i]=i;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%3d", m[i]);&nbsp;&nbsp; /*输出调用子函数前数组的值*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; disp();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*调用子函数*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("\nIn
main after calling\n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=0; i&lt;10;
i++)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%3d", m[i]);&nbsp;&nbsp; /*输出调用子函数后数组的值*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp; void disp(void)
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int j;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("In subfunc
after calling\n");/*子函数中输出数组的值*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (j=0; i&lt;10;
j++){
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
m[j]=m[j]*10;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%3d", m[i]);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;

<P>&nbsp;&nbsp;&nbsp; 2.3 函数的递归调用
<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0允许函数自己调用自己, 即函数的递归调用,
递归调用可以使程序
<BR>简洁、代码紧凑, 但要牺牲内存空间作处理时的堆栈。
<BR>&nbsp;&nbsp;&nbsp; 如要求一个n!(n的阶乘)的值可用下面递归调用:
<BR>&nbsp;&nbsp;&nbsp; 例8:
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #include&lt;stdio.h>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unsigned ling mul(int n);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int main()
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int m;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; puts("Calculate
n! n=?\n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf("%d",
&amp;m);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*键盘输入数据*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("%d!=%ld\n",
m, mul(m));/*调用子程序计算并输出*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retun 0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp; unsigned long mul(int n)
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unsigned long
p;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(n>1)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
p=n*mul(n-1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*递归调用计算n!*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
p=1L;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return(p);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/*返回结果*/
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>运行结果:
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; calculate n!&nbsp;
n=?
<BR>输入5时结果为:
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5!=120

<P>&nbsp;&nbsp;&nbsp; 3. 函数作用范围
<BR>&nbsp;
<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0中每个函数都是独立的代码块, 函数代码归该函数所有,
除了对函
<BR>数的调用以外, 其它任何函数中的任何语句都不能访问它。例如使用跳转语句goto
<BR>就不能从一个函数跳进其它函数内部。除非使用全程变量, 否则一个函数内部定义
<BR>的程序代码和数据, 不会与另一个函数内的程序代码和数据相互影响。
<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0中所有函数的作用域都处于同一嵌套程度,
即不能在一个函数内再
<BR>说明或定义另一个函数。
<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0中一个函数对其它子函数的调用是全程的,
即是函数在不同的文件
<BR>中, 也不必附加任何说明语句而被另一函数调用, 也就是说一个函数对于整个程序
<BR>都是可见的。

<P>&nbsp;&nbsp;&nbsp; 4. 函数的变量作用域
<BR>&nbsp;&nbsp;&nbsp; 在Turbo C2.0中, 变是可以在各个层次的子程序中加以说明,
也就是说, 在任
<BR>何函数中, 变量说明有只允许在一个函数体的开头处说明, 而且允许变量的说明(
<BR>包括初始化)跟在一个复合语句的左花括号的后面, 直到配对的右花括号为止。
<BR>的作用域仅在这对花括号内, 当程序执行到出花括号时, 它将不复存在。当然,
<BR>层中的变量即使与外层中的变量名字相同, 它们之间也是没有关系的。
<BR>&nbsp;&nbsp;&nbsp; 例9.
<BR>&nbsp;&nbsp;&nbsp;&nbsp; #include&lt;stdio.h>
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int i=10;
<BR>&nbsp;&nbsp;&nbsp;&nbsp; int main()
<BR>&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i=1;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("%d\t,
i);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
int i=2;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
pritnf("%d\t", i);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
extern i;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
i+=1;
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%d\t", i);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%d\t", ++i);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("%d\n",
++i);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0;
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;运行结果为
<BR>&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp; 11&nbsp;&nbsp;
3&nbsp;&nbsp;&nbsp; 2
<BR>&nbsp;从程序运行的结果不难看出程序中各变量之间的关系, 以及各个变量的作用域。
<BR>&nbsp;

<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<A HREF="index.html">返回目录</A>

<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -