計(jì)算機(jī)等級二級C語言程序設(shè)計(jì)100例四

字號:

【程序41】
    題目:學(xué)習(xí)static定義靜態(tài)變量的用法
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    varfunc()
    {
    int var=0;
    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++;
    }
    void main()
    {int i;
    for(i=0;i<3;i++)
    varfunc();
    }
    【程序42】
    題目:學(xué)習(xí)使用auto定義變量的用法
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    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++;
    }
    }
    }
    【程序43】
    題目:學(xué)習(xí)使用static的另一用法。
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    main()
    {
    int i,num;
    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++;
    }
    }
    }
    【程序44】
    題目:學(xué)習(xí)使用external的用法。
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    int a,b,c;
    void add()
    { int a;
    a=3;
    c=a+b;
    }
    void main()
    { a=b=4;
    add();
    printf("The value of c is equal to %d/n",c);
    }
    【程序45】
    題目:學(xué)習(xí)使用register定義變量的方法。
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    void main()
    {
    register int i;
    int tmp=0;
    for(i=1;i<=100;i++)
    tmp+=i;
    printf("The sum is %d/n",tmp);
    }
    【程序46】
    題目:宏#define命令練習(xí)(1)
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    #define TRUE 1
    #define FALSE 0
    #define SQ(x) (x)*(x)
    void main()
    {
    int num;
    int again=1;
    printf("/40: Program will stop if input value less than 50./n");
    while(again)
    {
    printf("/40lease input number==>");
    scanf("%d",&num);
    printf("/40:The square for this number is %d /n",SQ(num));
    if(num>=50)
    again=TRUE;
    else
    again=FALSE;
    }
    }
    【程序47】
    題目:宏#define命令練習(xí)(2)
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    #define exchange(a,b) { / /*宏定義中允許包含兩道衣裳命令的情形,此時必須在最右邊加上"/"*/
    int t;
    t=a;a=b;b=t;}
    void main(void)
    {
    int x=10;
    int y=20;
    printf("x=%d; y=%d/n",x,y);
    exchange(x,y);
    printf("x=%d; y=%d/n",x,y);
    }
    【程序48】
    題目:宏#define命令練習(xí)(3)
    1.程序分析:
    2.程序源代碼:
    以下是引用片段:
    #define LAG >
    #define SMA <
    #define EQ ==
    #include "stdio.h"
    void main()
    { int i=10;
    int j=20;
    if(i LAG j)
    printf("/40: %d larger than %d /n",i,j);
    else if(i EQ j)
    printf("/40: %d equal to %d /n",i,j);
    else if(i SMA j)
    printf("/40:%d smaller than %d /n",i,j);
    else
    printf("/40: No such value./n");
    }
    【程序49】
    題目:#if #ifdef和#ifndef的綜合應(yīng)用。
    1. 程序分析:
    2.程序源代碼:
    以下是引用片段:
    #include "stdio.h"
    #define MAX
    #define MAXIMUM(x,y) (x>y)?x:y
    #define MINIMUM(x,y) (x>y)?y:x
    void main()
    { int a=10,b=20;
    #ifdef MAX
    printf("/40: The larger one is %d/n",MAXIMUM(a,b));
    #else
    printf("/40: The lower one is %d/n",MINIMUM(a,b));
    #endif
    #ifndef MIN
    printf("/40: The lower one is %d/n",MINIMUM(a,b));
    #else
    printf("/40: The larger one is %d/n",MAXIMUM(a,b));
    #endif
    #undef MAX
    #ifdef MAX
    printf("/40: The larger one is %d/n",MAXIMUM(a,b));
    #else
    printf("/40: The lower one is %d/n",MINIMUM(a,b));
    #endif
    #define MIN
    #ifndef MIN
    printf("/40: The lower one is %d/n",MINIMUM(a,b));
    #else
    printf("/40: The larger one is %d/n",MAXIMUM(a,b));
    #endif
    }
    【程序50】
    題目:#include 的應(yīng)用練習(xí)
    1.程序分析:
    2.程序源代碼:
    test.h 文件如下: 以下是引用片段:
    #define LAG >
    #define SMA <
    #define EQ ==
    #include "test.h" /*一個新文件50.c,包含test.h*/
    #include "stdio.h"
    void main()
    { int i=10;
    int j=20;
    if(i LAG j)
    printf("/40: %d larger than %d /n",i,j);
    else if(i EQ j)
    printf("/40: %d equal to %d /n",i,j);
    else if(i SMA j)
    printf("/40:%d smaller than %d /n",i,j);
    else
    printf("/40: No such value./n");
    }