C语言必会100题(9)。学习static定义静态变量的用法/学习使用auto定义变量的用法/学习使用static的另一用法/学习使用external的用法/学习使用register定义变量的方法

特此鸣谢:鱼C_小甲鱼(B站up主)不二如是(鱼C论坛大佬)
题目来源:https://fishc.com.cn
注:这些题在网上都可以搜到,题下面的代码大多是流传下来的答案(我重新排了一下版,增加了可读性),部分是本人经过深思熟虑后编写的。

41,学习static定义静态变量的用法

  • 题目:学习static定义静态变量的用法
  • 程序源代码:
    #include "stdio.h"
    #include "conio.h"
    
    void varfunc();
    
    int main()
    {
        int i;
    
        for(I = 0; I < 3; i++) {
    
            varfunc();
        }
    
        getch();
    }
    
    void varfunc()
    {
        // var是局部变量
        int var = 0;
        // static_var是静态变量,每一次函数运行完不会消失
        static int static_var = 0;
    
        printf("\40:var equal %d \n", var);
        printf("\40:static var equal %d \n", static_var);
        printf("\n");
        var++;
        static_var++;
    }

42,学习使用auto定义变量的用法

  • 题目:学习使用auto定义变量的用法
  • 程序源代码:
    #include "stdio.h"
    #include "conio.h"
    
    int main()
    {
        int i, num;
        num = 2;
    
        for(i = 0; i < 3; i++) {
    
            printf("\40: The num equal %d \n", num);
            num++;
    
            {
              auto int num = 1;
              printf("\40: The internal block num equal %d \n", num);
              num++;
            }
        }
    
        getch();
    }

43,学习使用static的另一用法

  • 题目:学习使用static的另一种用法
  • 程序源代码:
    #include "stdio.h"
    #include "conio.h"
    
    int main()
    {
        int i, num = 2;
    
        for(i = 0; i < 3; i++)
        {
            printf("\40: The num equal %d \n", num);
            num++;
            {
                static int num = 1;
                printf("\40:The internal block num equal %d\n", num);
                num++;
            }
        }
    
        getch();
    }

44,学习使用external的用法

  • 题目:学习使用”外部变量”(external)的用法
  • 程序源代码:
    #include "stdio.h"
    #include "conio.h"
    
    void add();
    
    int a, b, c;
    
    int main()
    {
        a = b = 4;
        add();
        printf("The value of c is equal to %d\n", c);
        getch();
    }
    
    void add()
    {
        int a;
        a = 3;
        c = a + b;
    }

45,学习使用register定义变量的方法

  • 学习使用register定义变量的方法
  • 程序源代码:
    #include "stdio.h"
    #include "conio.h"
    
    int main()
    {
        // 寄存器变量
    	register int i;
        int tmp = 0;
    
        for(i = 1; i <= 100; i++) {
    
            tmp += i;
        }
    
        printf("The sum is %d\n", tmp);
        getch();
    }
posted @ 2022-03-20 17:42  炸天帮帮主  阅读(55)  评论(0)    收藏  举报