刘明春总结2011.11.10 连续第十二天

来源:互联网 发布:mac mysql 官网下载 编辑:程序博客网 时间:2024/06/06 03:02

标题:C语言入门
关键词:程序结构
具体内容:
A局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内。在复合语句中也可定义变量,其作用域只在复合语句范围内。
全局变量也称为外部变量,它是在函数外部定义的变量。它不属于哪一个函数,它属于一个源程序文件。其作用域是整个源程序。

#include <stdio.h>int x = 77;void fn1(){    printf("fn1(): x=%d\n", x);       }int main(){    int x = 10;    if(x>0)    {       int x = 100;        x /= 2;        printf("if语句内, x=%d\n", x);           }    printf("main方法内, x=%d\n", x);    fn1();    return 0;}

1,在任务里第2行int x=77是声明全局变量,也就是说接下来的所有函数都可以调用且不必再声明。

2,第9行中代码是int x=10,就是在main函数中重新定义了x,这里的x只能服务于main函数中,所以不影响void函数中x的值

3,在第12行if函数中并没有重新声明x,虽然main函数中的x是只用于main函数中的局部变量,但对于if函数来说它属于函数外部的,可以直接调用,所以当未作任何声明的情况下直接用x会改变x在main函数中的值,这样我们在main函数中x的值变成了100,为了使它保持不变,我们需要在if函数中重新定义一下,使这里的x只服务于if函数内。

B#include <stdio.h>
int num(n)
{
int age; //定义所剩桃子数
if(n==1)
return 10; //递归结束条件
else
return num(n-1)+2;
}
int main()
{ printf("第5个人的年龄是%d岁",num(5));
return 0;
}代码片