自考“高級語言程序設(shè)計”上機考點串講(2)

字號:

4、結(jié)構(gòu)型的應(yīng)用(第7章)
    1)內(nèi)容:編寫一個含有結(jié)構(gòu)型數(shù)組的程序,包括結(jié)構(gòu)型數(shù)據(jù)輸入、加工、輸出。
    2)要求:熟悉結(jié)構(gòu)型的定義、結(jié)構(gòu)型數(shù)據(jù)的定義、初始化和成員引用方法。
    3)案例:設(shè)有學(xué)生信息如下:學(xué)號(長整型)、姓名(字符串型)、出生年月(其中含有年份、月份、日,均為整型)。試編一個程序,輸入10個學(xué)生的上述信息,輸出所有學(xué)生的學(xué)號、姓名和年齡。(注意程序中年齡的求法,是用系統(tǒng)日期中的年份減去出生年月中的年份。獲得系統(tǒng)日期的方法是通過系統(tǒng)函數(shù)getdate())(注:程序命名為e1_4.exe)
    程序清單:
    #define N 10
    #include “stdio.h”
    #include “dos.h”
    main( )
    {struct birthday
    {int year;
    int month;
    int day;
    };
    struct
    {long num;
    char name[20];
    struct birthday bir;
    }stu[N];
    struct date today; /*利用系統(tǒng)定義的日期型結(jié)構(gòu)定義變量today*/
    int i;
    for(i=0;i
    {
    scanf(“%ld”,&stu[i].num);
    scanf(“%s”,stu[i].name);
    scanf(“%d,%d,%d”,&stu[i].bir.year, &stu[i].bir.month, &stu[i].bir.day);
    }
    getdate(&today); /*通過系統(tǒng)函數(shù)獲得系統(tǒng)日期*/
    for(i=0;i
    {
    printf(“%-8ld”,stu[i].num);
    printf(“%-2ld”,stu[i].name);
    printf(“%-6ld\n”,today.da_year-stu[i].bir.year);
    }
    }
    5、文件的應(yīng)用(第8章)
    1)內(nèi)容:編寫一個對文件進行簡單處理的程序,包括對文件的讀寫。
    2)要求:熟悉文件型指針的定義和引用,以及文件處理函數(shù)的使用。
    3)案例:編一C程序,它能從當前目錄下名為“string.txt”的文本文件中讀取一個字符串或前20個字符組成的字符串,并顯示在屏幕上。(注:可執(zhí)行程序命名為e1_5.exe)
    程序清單:
    #include“stdio.h”
    main()
    {FILE *fp;
    char s[21];
    if ((fp=fopen(“string.txt”, “r”))==NULL)
    {printf(“string.txt can not open!\n”);
    exit(0);
    }
    fgets(s,21,fp);
    fputs(s,stdout);
    fclose(fp);
    }
    …………………………