計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言考前密卷(4)

字號(hào):

一、選擇題
    (1)在深度為5的滿二叉樹中,葉子結(jié)點(diǎn)的個(gè)數(shù)為
     A)32
     B)31
     C)16
     D)15
    (2)若某二叉樹的前序遍歷訪問(wèn)順序是abdgcefh,中序遍歷訪問(wèn)順序是dgbaechf,則其后序遍歷的結(jié)點(diǎn)訪問(wèn)順序是
     A)bdgcefha
     B)gdbecfha
     C)bdgaechf
     D)gdbehfca
    (3)一些重要的程序語(yǔ)言(如C語(yǔ)言和Pascal語(yǔ)言)允許過(guò)程的遞歸調(diào)用。而實(shí)現(xiàn)遞歸
     調(diào)用中的存儲(chǔ)分配通常用
     A)棧
     B)堆
     C)數(shù)組
     D)鏈表
    (4)軟件工程的理論和技術(shù)性研究的內(nèi)容主要包括軟件開發(fā)技術(shù)和
     A)消除軟件危機(jī)
     B)軟件工程管理
     C)程序設(shè)計(jì)自動(dòng)化
     D)實(shí)現(xiàn)軟件可重用
    (5)開發(fā)軟件時(shí)對(duì)提高開發(fā)人員工作效率至關(guān)重要的是
     A)操作系統(tǒng)的資源管理功能
     B)先進(jìn)的軟件開發(fā)工具和環(huán)境
     C)程序人員的數(shù)量
     D)計(jì)算機(jī)的并行處理能力
    (6)在軟件測(cè)試設(shè)計(jì)中,軟件測(cè)試的主要目的是
     A)實(shí)驗(yàn)性運(yùn)行軟件
     B)證明軟件正確
     C)找出軟件中全部錯(cuò)誤
     D)發(fā)現(xiàn)軟件錯(cuò)誤而執(zhí)行程序
    (7)數(shù)據(jù)處理的最小單位是
     A)數(shù)據(jù)
     B)數(shù)據(jù)元素
     C)數(shù)據(jù)項(xiàng)
     D)數(shù)據(jù)結(jié)構(gòu)
    (8)索引屬于
     A)模式
     B)內(nèi)模式
     C)外模式
     D)概念模式
    (9)下述關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)的敘述中正確的是
     A)數(shù)據(jù)庫(kù)系統(tǒng)減少了數(shù)據(jù)冗余
     B)數(shù)據(jù)庫(kù)系統(tǒng)避免了一切冗余
     C)數(shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型一致
     D)數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)
    (10)數(shù)據(jù)庫(kù)系統(tǒng)的核心是
     A)數(shù)據(jù)庫(kù)
     B)數(shù)據(jù)庫(kù)管理系統(tǒng)
     C)模擬模型
     D)軟件工程
    (11)C語(yǔ)言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置
     A)必須在最開始
     B)必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面
     C)可以任意
     D)必須在最后
    (12)下列數(shù)據(jù)中,不合法的C語(yǔ)言實(shí)型數(shù)據(jù)的是
     A)0.123
     B)123e3
     C)2.1e3.5
     D)789.0
    (13)下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是
     A)A P_0 do
     B)float la0 _A
     C)b-a goto int
     D)_123 temp int
    (14)設(shè)變量a是int型,f是float型,i是double型,則表達(dá)式10+′a′+i*f值的數(shù)據(jù)類型為
     A)int
     B)float
     C)double
     D)不確定
    (15)能正確表示邏輯關(guān)系:“a≥10或a≤0”的C語(yǔ)言表達(dá)式是
     A)a>=10 or a<=0
     B)a>=0|a<=10
     C)a>=10 &&a<=0
     D)a>=10‖a<=0
    (16)設(shè)以下變量均為int類型,表達(dá)式的值不為7的是
     A)(x=y=6,x+y,x+1)
     B)(x=y=6,x+y,y+1)
     C)(x=6,x+1,y=6,x+y)
     D)(y=6,y+1,x=y,x+1)
    (17)若有說(shuō)明:int *p,m=5,n;以下正確的程序段是
     A)p=&n;scanf("%d",&p);
     B)p=&n;scanf("%d",*p)
     C)scanf("%d",&n);*p=n;
     D)p=&n;*p=m;
    (18)以下程序段的輸出結(jié)果是
     int a=1234;
     printf("-\n",a);
     A)12
     B)34
     C)1234
     D)提示出錯(cuò)、無(wú)結(jié)果
    (19)若變量a是int類型,并執(zhí)行了語(yǔ)句:a=′A′+1.6;,則正確的敘述是
     A)a的值是字符C
     B)a的值是浮點(diǎn)型
     C)不允許字符型和浮點(diǎn)型相加
     D)a的值是字符′A′的ASCII值加上1
    (20)有如下程序
     main()
     { int a=2,b=-1,c=2;
     if(a if(b<0)c=0;
     else c++;
     printf("%d\n",c);
     }
     該程序的輸出結(jié)果是
     A)0
     B)1
     C)2
     D)3
    (21)有如下程序
     main()
     { int x=23;
     do
     { printf("%d",x--);}
     while(!x);
     }
     該程序的執(zhí)行結(jié)果是
     A)321
     B)23
     C)不輸出任何內(nèi)容
     D)陷入死循環(huán)
    (22)執(zhí)行語(yǔ)句 for(i=1;i++<4;); 后變量 i 的值是
     A)3
     B)4
     C)5
     D)不定
    (23)有一堆零件(100到200之間),如果分成4個(gè)零件一組的若干組,則多2個(gè)零件;若分成7個(gè)零件一組,則多3個(gè)零件;若分成9個(gè)零件一組,則多5個(gè)零件。下面程序是求這堆零件總數(shù),請(qǐng)選擇填空。
     #include
     main()
     { int i;
     for(i=100;i<200;i++)
     if((i-2)%4==0)
     if(!((i-3)%7))
     if(_______)
     printf("%d",i);
     }
     A)i%9=5
     B)i%9!=5
     C)(i-5)%9!=0
     D)(i-5)%9==0
    (24)已有定義int a=-2;和輸出語(yǔ)句 printf("%8lx",a);以下正確的敘述是
     A)整型變量的輸出形式只有%d一種
     B)%x是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)
     C)%x是格式符的一種,其變量的值按十六進(jìn)制輸出,但%8lx是錯(cuò)誤的
     D)%8lx不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度
    (25)若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是
     A)′a′<=c<=′z′
     B)(c>=′a′)||(c<=′z′)
     C)(′a′<=c)and(′z′>=c)
     D)(c>=′a′)&&(c<=′z′)
    (26)以下正確的說(shuō)法是
     A)用戶若需調(diào)用標(biāo)準(zhǔn)庫(kù)函數(shù),調(diào)用前必須重新定義
     B)用戶可以重新定義標(biāo)準(zhǔn)庫(kù)函數(shù),若如此,該函數(shù)將失去原有含義
     C)系統(tǒng)根本不允許用戶重新定義標(biāo)準(zhǔn)庫(kù)函數(shù)
     D)用戶若需調(diào)用標(biāo)準(zhǔn)庫(kù)函數(shù),調(diào)用前不必使用預(yù)編譯命令將該函數(shù)所在文件包括到用戶源文件中,系統(tǒng)自動(dòng)調(diào)用
    (27)以下正確的函數(shù)頭定義形式是
     A)double fun(int x,int y)
     B)double fun(int x;int y)
     C)double fun(int x,int y);
     D)double fun(int x,y);
    (28)下面程序段的運(yùn)行結(jié)果是
     char a[]="lanuage",*p;
     p=a;
     while(*p!=′u′){printf("%c",*p-32);p++;}
     A)LANGUAGE
     B)language
     C)LAN
     D)langUAGE
    (29)下面程序段的運(yùn)行結(jié)果是
     char str[]="ABC",*p=str;
     printf("%d\n",*(p+3));
     A)67
     B)0
     C)字符′C′的地址
     D)字符′C′
    (30)若fp是指向某文件的指針,且已讀到文件末尾,則庫(kù)函數(shù)feof(fp)的返回值是
     A)EOF
     B)-1
     C)1
     D)NULL
    (31)在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是
     A)補(bǔ)碼
     B)反碼
     C)原碼
     D)ASCII碼
    (32)若有說(shuō)明:int a[][3]={1,2,3,4,5,6,7};則a數(shù)組第一維的大小是
     A)2
     B)3
     C)4
     D)無(wú)確定值
    (33)以下不正確的定義語(yǔ)句是
     A)double x[5]={2.0,4.0,6.0,8.0,10.0};
     B)int y[5.3]={0,1,3,5,7,9};
     C)char c1[]={′1′, ′2′, ′3′, ′4′, ′5′};
     D)char c2[]={′\x10′, ′\xa′, ′\x8′};
    (34)有以下語(yǔ)句,則對(duì)a數(shù)組元素的引用不正確的是(0≤i≤9)
     int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
     A)a[p-a]
     B)*(&a[i])
     C)p[i]
     D)*(*(a+i))
    (35)當(dāng)說(shuō)明一個(gè)結(jié)構(gòu)體變量時(shí)系統(tǒng)分配給它的內(nèi)存是
     A)各成員所需內(nèi)存量的總和
     B)結(jié)構(gòu)中第一個(gè)成員所需內(nèi)存量
     C)成員中占內(nèi)存量者所需的容量
     D)結(jié)構(gòu)中最后一個(gè)成員所需內(nèi)存量
    (36)有以下程序
     fun(int x,int y,int z)
     { z=x*y;}
     main()
     {int a=4,b=2,c=6;
     fun(a,b,c);
     printf("%d",c);
     }
     程序運(yùn)行后的輸出結(jié)果是
     A)16
     B)6
     C)8
     D)12
    (37)函數(shù)fun的返回值是
     fun(char *a,char *b)
     { int num=0,n=0;
     while(*(a+num)!=′\0′)num++;
     while(b[n]){*(a+num)=b[n];num++;n++;}
     return num;
     }
     A)字符串a(chǎn)的長(zhǎng)度
     B)字符串b的長(zhǎng)度
     C)字符串a(chǎn)和b的長(zhǎng)度之差
     D)字符串a(chǎn) 和b的長(zhǎng)度之和
    (38)以下敘述中不正確的是
     A)預(yù)處理命令行都必須以#號(hào)開始
     B)在程序中凡是以#號(hào)開始的語(yǔ)句行都是預(yù)處理命令行
     C)宏替換不占用運(yùn)行時(shí)間,只占編譯時(shí)間
     D)在以下定義是正確的: #define PI 3.1415926;
    (39)調(diào)用gets和puts函數(shù)時(shí),必須包含的頭文件是
     A)stdio.h
     B)stdlib.h
     C)define
     D)以上都不對(duì)
    (40)利用 fseek 函數(shù)可以實(shí)現(xiàn)的操作是
     A)改變文件的位置指針
     B)文件的順序讀寫
     C)文件的隨機(jī)讀寫
     D)以上答案均正確
    (41)下列程序的輸出結(jié)果是
     main()
     { int a[5]={2,4,6,8,10},*p,**k;
     p=a;
     k=&p;
     printf("%d",*(p++));
     printf("%d\n",**k);
     }
     A)4
     B)22
     C)24
     D)46
    (42)若有以下結(jié)構(gòu)體,則正確的定義或引用的是
     struct Test
     {int x;
     int y;
     } vl;
     A)Test.x=10;
     B)Test v2;v2.x=10;
     C)struct v2;v2.x=10;
     D)struct Test v2={10};
    (43)下面程序段的運(yùn)行結(jié)果是
     char *p="abcdefgh";
     p+=3;
     printf("%d\n",strlen(strcpy(p,"ABCD")));
     A)8
     B)12
     C)4
     D)7
    (44)下面判斷正確的是
     A)char *a="china";等價(jià)于 char *a;*a="china";
     B)char str[5]={"china"};等價(jià)于char str[]={"china"};
     C)char *s="china";等價(jià)于 char *s;s="china";
     D)char c[4]="abc",d[4]="abc";等價(jià)于char c[4]=d[4]="abc";
     (45)下列函數(shù)的運(yùn)行結(jié)果是
     main()
     { int i=2,p;
     int j,k;
     j=i;
     k=++i;
     p=f(j,k);
     printf("%d",p);
     }
     int f(int a,int b)
     { int c;
     if(a>b)c=1;
     else if(a==b)c=0;
     else c=-1;
     return(c);
     }
     A)-1
     B)1
     C)2
     D)編譯出錯(cuò),無(wú)法運(yùn)行
    (46)在位運(yùn)算中,操作數(shù)左移一位,其結(jié)果相當(dāng)于
     A)操作數(shù)乘以2
     B)操作數(shù)除以2
     C)操作數(shù)除以4
     D)操作數(shù)乘以4
    (47)若調(diào)用fputc函數(shù)輸出字符成功,則其返回值是
     A)EOF
     B)1
     C)0
     D)輸出的字符
    (48)已知函數(shù)的調(diào)用形式:fread(buf,size,count,fp),參數(shù)buf的含義是
     A)一個(gè)整型變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)
     B)一個(gè)文件指針,指向要讀的文件
     C)一個(gè)指針,指向要讀入數(shù)據(jù)的存放地址
     D)一個(gè)存儲(chǔ)區(qū),存放要讀的數(shù)據(jù)項(xiàng)
    (49)有如下程序:
     #define N 2
     #define M N+1
     #define NUM 2*M+1
     main()
     {
     int i;
     for(i=1;i<=NUM;i++)printf("%d\n",i);
     }
     該程序中的for循環(huán)執(zhí)行的次數(shù)是
     A)5
     B)6
     C)7
     D)8
    (50)以下定義中,標(biāo)識(shí)符prt int(*prt)[3]
     A)定義不含法
     B)是一個(gè)指針數(shù)組名,每個(gè)元素都是一個(gè)指向整數(shù)變量的指針
     C)是一個(gè)指針,它指向一個(gè)具有三個(gè)元素的一維數(shù)組
     D)是一個(gè)指向整型變量的指針
    二、填空題
    (1)在樹形結(jié)構(gòu)中,樹根結(jié)點(diǎn)沒(méi)有 【1】 。
    解析: 在樹形結(jié)構(gòu)中,每一個(gè)結(jié)點(diǎn)只有一個(gè)前件,稱為父結(jié)點(diǎn),沒(méi)有前件的結(jié)點(diǎn)只有一個(gè),稱為樹的根結(jié)點(diǎn);每一個(gè)結(jié)點(diǎn)可以有多個(gè)后件,它們都稱為該結(jié)點(diǎn)的子結(jié)點(diǎn)。沒(méi)有后件的結(jié)點(diǎn)稱為葉子結(jié)點(diǎn)。
    (2)Jackson結(jié)構(gòu)化程序設(shè)計(jì)方法是英國(guó)的M.Jackson提出的,它是一種面向 【2】 的設(shè)計(jì)方法。
    解析: 結(jié)構(gòu)化分析方法主要包括:面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法(SA-Structured analysis),面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法(JSD-Jackson system development method)和面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法(DSSD-Data structured system development method)。
    (3)面向?qū)ο蟮哪P椭?,最基本的概念是?duì)象和 【3】 。
    解析: 面向?qū)ο竽P椭?,最基本的概念是?duì)象和類。對(duì)象是現(xiàn)實(shí)世界中實(shí)體的模型化;將屬性集和方法集相同的所有對(duì)象組合在一起,可以構(gòu)成一個(gè)類。
    (4)軟件設(shè)計(jì)模塊化的目的是 【4】 。
    解析: 模塊化是指解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過(guò)程,由此分解來(lái)降低復(fù)雜性。
    (5)數(shù)據(jù)模型按不同應(yīng)用層次分成3種類型,它們是概念數(shù)據(jù)模型、 【5】 和物理數(shù)據(jù)模型。
    解析: 數(shù)據(jù)是現(xiàn)實(shí)世界符號(hào)的抽象,而數(shù)據(jù)模型(data model)則是數(shù)據(jù)特征的抽象,它從抽象層次上描述了系統(tǒng)的靜態(tài)特征、動(dòng)態(tài)行為和約束行為,為數(shù)據(jù)庫(kù)系統(tǒng)的信息表示與操作提供一個(gè)抽象的框架。
    數(shù)據(jù)模型按不同的應(yīng)用層次分成3種類型,它們是概念數(shù)據(jù)模型(conceptual data model)、邏輯數(shù)據(jù)模型(logic data model)、物理數(shù)據(jù)模型(physical data model)。
    (6)以下程序段的輸出結(jié)果是【6】。
    main ()
    {int a=2,b=3,c=4;
    a*=16+(b++)-(++c);
    printf("%d",a);
    }
    解析: a*=16+(b++)-(++c)等價(jià)于a=a*(16+(b++)-(++c)),b++的值為3,++c的值為5,請(qǐng)注意前綴++和后綴++的用法。
    (7)若變量n中的值為24,則print()函數(shù)共輸出【7】行,最后一行有【8】個(gè)數(shù)。
    void print (int n,int aa[])
    {int i;
    for (i=1; i<1;i++)
    {printf ("m", aa[i]);
    if(!(i%5)) printf ("\n");
    }
    printf ("\n");
    }
    解析: 語(yǔ)句if(!(i%))printf("\n");是將每5個(gè)數(shù)輸出一行,因?yàn)閚的值為24,所以共輸出5行,最后一行有4個(gè)數(shù)。
    (8)調(diào)用C語(yǔ)標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí)要求用【9】命令。
    解析: include命令可調(diào)用標(biāo)準(zhǔn)的C語(yǔ)言庫(kù)函數(shù),可以用一對(duì)括號(hào)或一對(duì)雙引號(hào),但要在前面加"#"。
    (9)stract函數(shù)的作用是【10】。
    解析: 連接兩個(gè)字符數(shù)組中的字符串
    (10)C語(yǔ)言程序的注釋可以出現(xiàn)在程序中的任何地方,一個(gè)注釋以【11】作為開始和結(jié)束。
    解析: C語(yǔ)言程序的注釋可以出現(xiàn)在程序基本單詞之間的任何地方,C語(yǔ)言程序的注釋以′/*′作為開始標(biāo)記,并以′*/′作為結(jié)束標(biāo)記。
    (11)設(shè)二進(jìn)制數(shù)A是00101101,若想通過(guò)異或運(yùn)算A^B使A的高4位取反,低4位不變,則二進(jìn)制數(shù)B應(yīng)是
    【12】 。
    解析: 按位異成運(yùn)算的一個(gè)重要應(yīng)用是讓某個(gè)整型變量的二進(jìn)位取反,0變成1,而1變成0。這只要設(shè)計(jì)這樣一個(gè)位串信息,讓要變反的位為1,不要改變的位為0,用這個(gè)位串信息與整型變量按位加就能得到希望的結(jié)果。要使字節(jié)的高4位取反,低4位不變,則需要位串信息是11110000。
    (12)若已知a=10,b=20,則表達(dá)式!a解析: 計(jì)算表達(dá)式!a
    (13)設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for語(yǔ)句后,k的值為【14】 。
    for(i=0, j=10; i<=j; i++, j--)k=i+j;
    解析: 該for語(yǔ)句以i為0,j為10初始化,循環(huán)條件是i<=j,每次循環(huán)后i增1、j減1,循環(huán)體是將i與j的和賦給k。這樣變量k將保存的是最后一次賦給它的值。一次循環(huán)后i為1、j為9,二次循環(huán)后i為2、j為8,……,五次循環(huán)后i為5、j為5,繼續(xù)第六次循環(huán),將i與j的和10存于k后,i為6、j為4,結(jié)束循環(huán)。所以循環(huán)執(zhí)行后k為10。
    (14)下面函數(shù)的功能是:找出一維數(shù)組元素中的值和它所在的下標(biāo),值的和它所在的下標(biāo)通過(guò)形參傳回。數(shù)組元素中的值已在主函數(shù)中賦予。主函數(shù)中x是數(shù)組名,n是x中的數(shù)據(jù)個(gè)數(shù),max存放值,index存放值所在元素的下標(biāo)。請(qǐng)?zhí)羁铡?BR>    #include
    #include
    void fun(int a[],int n, int *max, int *d)
    { int i;
    *max=a[0];
    *d=0;
    for(i=0;【15】;i++)
    if(*max<【16】)
    {*max=a[i];*d=i;}
    }
    main()
    { int i, x[20], max, index, n=10;
    randomize();
    for(i=0;i{
    x[i]=rand()P; printf("M",x[i]);
    }
    printf("\n");
    fun(x,n,&max,&index);
    printf("Max=],Index=M\n",max,index);
    }
    解析: 該程序直接使用形參max和d,由于它們都是指針變量,所以要引用它所指向的變量時(shí)要對(duì)它進(jìn)行指針運(yùn)算,也即*號(hào)運(yùn)算。
    (15)以下程序的輸出結(jié)果是【17】。
    void fun()
    { static int a=0;
    a+=2; printf("%d",a);
    }
    main()
    { int cc;
    for(cc=1;cc<4;cc++)fun();
    printf("\n");
    }
    解析: 本題考查靜態(tài)局部變量的使用。用關(guān)鍵字static聲明的局部變量為"靜態(tài)局部變量",其值在函數(shù)調(diào)用結(jié)束后不消失而保留原值,即其占用的存儲(chǔ)單元不釋放,在下一次該函數(shù)調(diào)用時(shí),該變量已有值,就是上一次函數(shù)調(diào)用結(jié)束時(shí)的值。
    (16)以下程序的輸出結(jié)果是【18】 。
    #define MAX(x,y)(x)>(y)?(x):(y)
    main()
    { int a=5,b=2,c=3,d=3,t;
    t=MAX(a+b,c+d)*10;
    printf("%d\n",t);
    }
    解析: 本題綜合考查帶參數(shù)的宏以及三目運(yùn)算符的計(jì)算方法,“?”運(yùn)算符是一個(gè)三目運(yùn)算符,其一般形式是:<表達(dá)式1>?<表達(dá)式2>:<表達(dá)式3>?!?” 運(yùn)算符的含義是:先求表達(dá)式1的值,如果為真,則求表達(dá)式2的值并把它作為整個(gè)表達(dá)式的值;如果表達(dá)式1的值為假,則求表達(dá)式3的值并把它作為整個(gè)表達(dá)式的值。注意,在本題中宏替換時(shí)可采用逐步求解,最終為7>6?7:6*10,即t=7>6?7:60,其值為t=7。
    (17)用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間,請(qǐng)?zhí)羁铡?BR>    st=(char*)【19】 ;
    解析: malloc函數(shù)的參數(shù)可以是一個(gè)具體的常數(shù),也可以是一個(gè)表達(dá)式。在本題中,可以是malloc(11),也可以借助于sizeof運(yùn)算符來(lái)表示。
     (18)以下程序段打開文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長(zhǎng)度,請(qǐng)?zhí)羁铡?BR>    FILE *myf; long f1;
    myf=【20】 ("test.t","rb");
    fseek(myf,0,SEEK_END); f1=ftell(myf);
    fclose(myf);
    printf("%d\n",f1);
    解析: 函數(shù)fopen的原型為FILE *fopen(char *filename,char *mode),功能為以mode指定的方式打開名為filename的文件;函數(shù)fseek的原型為int fseek(FILE *fp,long offset,int base),功能為將fp所指向的文件的位置指針移到以base所指出的位置為基準(zhǔn)。以offset是以字節(jié)為單位的位移量;函數(shù)ftell的原型為long ftell(FILE *fp),功能為返回fp所指向的文件中的讀寫位置;函數(shù)fclose的原型為int fclose(FILE *fp),功能為關(guān)閉fp所指的文件,釋放文件緩沖區(qū)。