鸭子tv国产极品在线观看_成人69视频在线播放_91精品免费在线观看_亚洲AT永久偷窥无码精品_国产精品自产拍在线观看涩浪潮久

江蘇省高校計(jì)算機(jī)等級(jí)考試命題研究院 江蘇省高校計(jì)算機(jī)等級(jí)考試輔導(dǎo)
2007年春季江蘇計(jì)算機(jī)C語(yǔ)言試題

2007年春江蘇省二級(jí)考試(C語(yǔ)言理論試題)

(本試卷筆試時(shí)間為120分鐘)

說明:

1.本試卷包括計(jì)算機(jī)基礎(chǔ)知識(shí)部分和程序設(shè)計(jì)部分。

2.本試卷滿分為60分,分選擇題和填空題,試卷不分A、B類型。

3.計(jì)算機(jī)基礎(chǔ)知識(shí)部分全部是選擇題(20),程序設(shè)計(jì)部分分為選擇題(10)和填空

  (30)兩種。

4.選擇題用答題卡答題。每一項(xiàng)有AB、cD四個(gè)可供選擇的答案,請(qǐng)選擇其中一個(gè)你認(rèn)

  正確的答案,用HB鉛筆或2B鉛筆涂寫在答題卡的相應(yīng)答題號(hào)內(nèi)。每選對(duì)一項(xiàng)得1分,

  選或選錯(cuò)不得分。

5.填空題用答題紙答題。請(qǐng)將答案用藍(lán)色或黑色筆填寫在答題紙的相應(yīng)答題號(hào)內(nèi),每個(gè)答

  只占一行,不得換行。每填對(duì)一個(gè)答案得1分,不填或填錯(cuò)不得分。

6.請(qǐng)認(rèn)真填寫并仔細(xì)核對(duì)答題卡和答題紙上的學(xué)校名稱、準(zhǔn)考證號(hào)和姓名。

7.考試結(jié)束時(shí)將試卷、答題卡和答題紙放在桌上,不得帶走。待監(jiān)考人員收畢清點(diǎn)后,方

  離場(chǎng)。

第一部分基礎(chǔ)知識(shí)

1.微電子技術(shù)是信息技術(shù)領(lǐng)域的關(guān)鍵技術(shù),它以集成電路(Ic)為核心。下列有關(guān)敘述錯(cuò)誤

  (1)  。

  A.目前Ic芯片(CPU芯片)的集成度可達(dá)數(shù)千萬個(gè)電子元件

  BMoore定律指出,單塊IC的集成度平均每半年翻一番

  c.從原料熔煉到最終產(chǎn)品包裝,IC的制造工序繁多,工藝復(fù)雜,技術(shù)難度非常高

  D.非接觸式Ic卡采用電磁感應(yīng)方式無線傳輸數(shù)據(jù),所以又稱為射頻卡或感應(yīng)卡

2.下列有關(guān)通信中使用的傳輸介質(zhì)的敘述錯(cuò)誤的是(2)  。

  A.計(jì)算機(jī)局域網(wǎng)中大多使用無屏蔽雙絞線,其無中繼有效傳輸距離大約100m

  B.同軸電纜可用于傳輸電視信號(hào)   

  c.光纖價(jià)格高,一般不在校園網(wǎng)和企業(yè)網(wǎng)中使用

  D.微波的波長(zhǎng)很短,適合于長(zhǎng)距離、大容量無線通信

3.二進(jìn)制數(shù)(1010)與十六進(jìn)制數(shù)(B2)相加,結(jié)果為(3) 

A (273)8   B  (274)8    C (314)8   D(313)8

4.設(shè)有一段文本由基本ASCII字符和GB2312字符集中的漢字組成,其代碼為B0 A1 57 69 6E D6 DO CE C4 B0 E6,則在這段文本中含有(4)  。

  A1個(gè)漢字和9個(gè)西文字符    B3個(gè)漢字和5個(gè)西文字符

C2個(gè)漢字和7個(gè)西文字符    D  4個(gè)漢字和3個(gè)西文字符

5.下列有關(guān)CPU的敘述錯(cuò)誤的是(5)

  ACPU的主要組成部分有運(yùn)算器、控制器和寄存器組

  BCPU的主要功能是執(zhí)行指令,不同類型CPU的指令系統(tǒng)通常有所不同

  C.為了加快運(yùn)算速度,CPU中可包含多個(gè)算術(shù)邏輯部件(ALU)

  D.目前PC機(jī)所用的CPU芯片均為Intel公司的產(chǎn)品

6PC機(jī)在加電啟動(dòng)過程中會(huì)運(yùn)行POST程序、引導(dǎo)程序、系統(tǒng)自舉程序等。若在啟動(dòng)過程中用戶按某一熱鍵(通常是Del)則可以啟動(dòng)CMOS設(shè)置程序。這些程序運(yùn)行的順序是(6)   

  APOST程序--CMOS設(shè)置程序---系統(tǒng)自舉程序一-引導(dǎo)程序

  BPOST程序--引導(dǎo)程序一-系統(tǒng)自舉程序---CMOS設(shè)置程序

  CCMOS設(shè)置程序一系統(tǒng)自舉程序_--引導(dǎo)程序--POST程序

  DPOST程序--CMOS設(shè)置程序一引導(dǎo)程序---系統(tǒng)自舉程序

7.目前Pc機(jī)一般都有USBFireWire接口,用于連接各種外部設(shè)備。下列關(guān)于這兩種接口的敘述錯(cuò)誤的是(7)

  AUSB是一種串行接口,可以連接鍵盤、鼠標(biāo)器、優(yōu)盤、數(shù)碼相機(jī)等多種設(shè)備

  BFireWire是一種并行接口,通常用于連接需要高速傳輸大量數(shù)量的設(shè)備(如音視頻設(shè)備)

  CUSB 20的數(shù)據(jù)傳輸速率是USB 10的數(shù)十倍

  D.一個(gè)USB接口上可以連接不同的設(shè)備   

8.下列關(guān)于PC機(jī)外存儲(chǔ)器的敘述錯(cuò)誤的是(8)

  A144MB軟盤的每一面有吞0個(gè)磁道,每個(gè)磁道分為18個(gè)扇區(qū),每個(gè)扇區(qū)512字節(jié)

  B.硬盤的主要性能指標(biāo)之一是平均存取時(shí)間,它與硬盤的轉(zhuǎn)速(rpm)有很大關(guān)系。

  c.優(yōu)盤的缺點(diǎn)是:優(yōu)盤均無寫保護(hù)功能,且不能起到引導(dǎo)操作系統(tǒng)的作用

  DcD-R是目前常用的可記錄式光盤,但其該錄的數(shù)據(jù)不能修改

9.下列關(guān)于Windows 98XP操作系統(tǒng)的存儲(chǔ)管理功能的敘述錯(cuò)誤的是.(9) 

  A.存儲(chǔ)管理的功能主要包括內(nèi)存的分配與回收、共享和保護(hù)、自動(dòng)擴(kuò)充(虛存的實(shí)現(xiàn))

  B.系統(tǒng)將程序(及其數(shù)據(jù))劃分成固定大小的頁(yè)面,以頁(yè)面為單位進(jìn)行內(nèi)存的分配和調(diào)度

  c.虛擬存儲(chǔ)器采用的頁(yè)面調(diào)度算法是先進(jìn)先出”(FIFO)算法

  D.在Windows 98Windows XP中,虛擬內(nèi)存其實(shí)就是一個(gè)磁盤文件,即交換文件

10.人們常說軟件的主體是程序,程序的核心是算法。下列有關(guān)程序、算法和數(shù)據(jù)結(jié)構(gòu)的敘述錯(cuò)誤的是.(10)。

    A.程序是用程序設(shè)計(jì)語(yǔ)言對(duì)解題對(duì)象和解題步驟進(jìn)行的一種描述

    B.算法和數(shù)據(jù)結(jié)構(gòu)是設(shè)計(jì)與編寫程序時(shí)首先要考慮的兩個(gè)重要方面

    c.算法是問題求解規(guī)則的一種過程描述,它必須有輸入,但可以沒有輸出

    D.?dāng)?shù)據(jù)結(jié)構(gòu)主要是研究數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)以及在這些數(shù)據(jù)上定義的運(yùn)算

11.下列關(guān)于局域網(wǎng)的敘述錯(cuò)誤的是(11)  。

    A.光纖分布式數(shù)字接口網(wǎng)(FDDI)常用于構(gòu)造局域網(wǎng)的主干部分    。

    B.采用紅外線或者無線電波進(jìn)行數(shù)據(jù)通信,可以構(gòu)造無線局域網(wǎng)

    C.兩個(gè)或多個(gè)局域網(wǎng)可以進(jìn)行互連

    D.所有的局域網(wǎng)均為以太網(wǎng)

12·下列有關(guān)IP地址、域名和URL的敘述錯(cuò)誤的是(12)  。

    目前互聯(lián)網(wǎng)中IP地址大多數(shù)使用4個(gè)字節(jié)(32個(gè)二進(jìn)位)表示

    使用CIP地址的網(wǎng)絡(luò)規(guī)摸最大,一少c類物理網(wǎng)絡(luò)可以擁有上千萬臺(tái)主機(jī)

  C.一臺(tái)主機(jī)通常只能有一個(gè)IP地址,但可以有多個(gè)域名

  D·URL用來標(biāo)識(shí)WWW網(wǎng)中的每一個(gè)信息資源,不同的信息資源對(duì)應(yīng)不同的URL

13·TCPIP協(xié)議棧的應(yīng)用層包括了各種高層協(xié)議,其中用于實(shí)現(xiàn)網(wǎng)絡(luò)主機(jī)域名到IP地址映射的是(13) 

ADNS    BSMTP  C .FTP    D.Telnet

14·ADSL是一種寬帶接入技術(shù),在線路兩端加裝ADSL MODEM即可實(shí)現(xiàn)連網(wǎng)。下列關(guān)于  ADsL的敘述錯(cuò)誤的是(14)    I

  A.它利用普通銅質(zhì)電話線作為傳輸介質(zhì),成本較低  

  B.在上網(wǎng)的同時(shí),還可以接聽和撥打電話,幾乎互不影響   

  從實(shí)現(xiàn)的技術(shù)上來看,數(shù)據(jù)的上傳速度比數(shù)據(jù)的下載速度快  

  D.利用ADSL技術(shù)上網(wǎng)的用戶,其PC機(jī)必須安裝以太網(wǎng)卡   

15·目前PC機(jī)使用的字符集及其編碼標(biāo)準(zhǔn)有多種,20多年來我國(guó)也頒布了多個(gè)漢字編碼標(biāo)準(zhǔn)。在下列漢字編碼標(biāo)準(zhǔn)中,不支持簡(jiǎn)體漢字的是(15)      I

AGB2312    BGBK    CBIG5  D. GB18030

 

16.下列有關(guān)數(shù)字圖像的壓縮編碼和圖像文件格式的敘述錯(cuò)誤的是  (16)  。

  圖像壓縮的出發(fā)點(diǎn)是圖像中的數(shù)據(jù)相關(guān)性很強(qiáng),且人眼的視覺有一定的局限性

  壓縮編碼方法的優(yōu)劣主要是看壓縮倍數(shù)、重建圖像的質(zhì)量和壓縮算法的復(fù)雜度等

  CJPEG圖像的壓縮倍數(shù)是可以控制的,且大多為無損壓縮

  D·GIF格式的圖像能夠支持透明背景,且具有在屏幕上漸進(jìn)顯示的功能

17.下列有關(guān)MIDI音樂的敘述錯(cuò)誤的是(17 )

    A·MIDI是一種音樂描述語(yǔ)言,它規(guī)定了樂譜的數(shù)字表示方法

    B·MIDI音樂的文件擴(kuò)展名為MIDMIDI

    C·MIDI音樂可以使用Windows中的媒體播放器等軟件進(jìn)行播放

    播放MIDI音樂時(shí),聲音是通過音箱合成出來的

18.下列有關(guān)中文版Windows 982000xP操作系統(tǒng)功能與操作的敘述錯(cuò)誤的是  (18)  。

  A·“五筆字型漢字輸入法是Windows內(nèi)置的輸入法之一

  畫圖軟件中畫圓和正方形時(shí),可在按Shift鍵的同時(shí)用鼠標(biāo)拖放操作

  資源管理器’’窗口中,按Ctrl鍵的同時(shí)用鼠標(biāo)單擊文件,可以實(shí)現(xiàn)該文件的反向選定

  作為虛擬存儲(chǔ)器使用的(頁(yè))交換文件可以設(shè)置在不同的邏輯硬盤上

19·下列有關(guān)Microsoft Word 9720002003功能和操作的敘述錯(cuò)誤的是  (19)  。

  A·Word文檔可以分別設(shè)置打開文件時(shí)的密碼和修改文件時(shí)的密碼

  頁(yè)邊距的計(jì)量單位可以設(shè)置為磅、英寸和厘米等

  可以將選中的英文統(tǒng)一設(shè)置為小寫,或大寫,或詞首字母大寫,或句首字母大寫等

  利用工具欄上的格式刷,可以復(fù)制字體的格式,但不能復(fù)制段落的格式

20.下列有關(guān)Microsoft  PowerPoint 9720002003功能和操作的敘述錯(cuò)誤的是  (20)  。

  APowerPoint文件可以另存為網(wǎng)頁(yè)文件

  B.演示文稿可以按講義方打印,且一張紙(A4規(guī)格)可以打印多達(dá)69張投影爿

  c.演示文稿的放映方式可以設(shè)置為循環(huán)放映

  D.演示文稿中可以插入聲音文件,但不可以錄制旁白

 

一、選擇題(10分)

21、以下關(guān)于C語(yǔ)言源程序的敘述中,錯(cuò)誤的是_____。

A.一個(gè)C語(yǔ)言源程序由若干個(gè)函數(shù)定義組成,其中必須有且僅有一個(gè)名為main的函數(shù)定義

B.函數(shù)定義由函數(shù)頭部和函數(shù)體兩部分組成

C.在一個(gè)函數(shù)定義的函數(shù)體中允許定義另一個(gè)函數(shù)

D.在一個(gè)函數(shù)定義的函數(shù)體中允許調(diào)用另一個(gè)函數(shù)或調(diào)用函數(shù)本身

22、以下表示中,不能用作C語(yǔ)言常量表示的是____。

A0UL   B.(long123      C1e0      D’\x2a

23、以下標(biāo)識(shí)符中,不能用作變量名或自定義函數(shù)名的是___。

Amain      Bscanf         C_float       Dsizeof

24、以下表示數(shù)學(xué)式“a<B<C”的邏輯表達(dá)式中,錯(cuò)誤的是____。< P>

Aa<b<c                              Ba<b && b<c

C!(a>=b)&&!(b>=c)                 D!(a>=b||b>=c)

25.以下程序運(yùn)行后的輸出結(jié)果是____。

A2   2           B7   2        C7   5         D6   2

main()

{ char a[7]=”a0\0a0\0”;  int i,j;

  i=sizeof(a);   j=strlen(a);

  printf(“%d  %d”,i,j);

}

26.下面關(guān)于循環(huán)語(yǔ)句for、while、do_while的敘述中,正確的是____。

A.三種循環(huán)語(yǔ)句的循環(huán)體都必須放入一對(duì)花括號(hào)中

B.三種循環(huán)語(yǔ)句中都可以缺省循環(huán)終止條件表達(dá)式

C.三種循環(huán)語(yǔ)句的循環(huán)體都至少被無條件地執(zhí)行一次

D.三種循環(huán)語(yǔ)句都可能出現(xiàn)無窮循環(huán)

27.以下程序段中,有語(yǔ)法錯(cuò)誤的是____。

Afun(char aa[10])

   { while(*aa) printf(“%c”,*aa++); }

Bfun( char *aa)

   { while(aa[0]) printf(“%c”,*aa++); }

Cmain()

   { char *aa=”Hello!”;

while(*aa) printf(“%c”,*aa++);

}

Dmain()

   { char aa[10]=”Hello!”;

while(*aa) printf(“%c”,*aa++);

}

28.若有聲明“int a[ ]={1,2,3,4},*p,i;”,則以下程序段中不能輸出13的是_____。

Afor(i=0;i<4;i+=2) printf(“%d”,a[i]);

Bfor(p=0;p<4;p+=2) printf(“%d”,a[p]);

Cfor(p=a;p<a+4;p+=2) printf(“%d”,*p);

Dfor(p=a,i=0;i<4;i+=2) printf(“%d”,p[i]);

29.若有如下的類型定義和變量聲明,則在給出的選項(xiàng)中值不為7的表達(dá)式是____。

Aptr->a          B(++ptr)->a          Cx[1].a       Dx[0].b->a

struct ss

  { int a; struct  ss  *b;} x[3]={{5,&x[1]},{7,&x[2]},{9,0}},*ptr=&x[0]; 

30.若需要對(duì)一個(gè)數(shù)據(jù)文件abc.txt 中的數(shù)據(jù)做加密處理并且限定只能做一次打開文件操作,則在“fp=fopen(“abc.txt”,模式字符串)中,模式字符串應(yīng)當(dāng)是____。

A”w+”           B”r+”            C”a+”          D”r”

二、填空題(共30分)

1.在聲明局部變量時(shí),不能使用的存儲(chǔ)類別標(biāo)識(shí)符是__( 1 )__

2.與整型數(shù)學(xué)算式  等價(jià)的C語(yǔ)言表達(dá)式是__ _( 2 ) __。

3.在以下程序的main函數(shù)中,語(yǔ)句"fun(x,10);"內(nèi)的實(shí)參x表示數(shù)組x__(3 ) ___。

void fun(int a[10],int n)

{int i; for(i=0;i<n;i++)   a[i]++;}

main()

{int x[10]={0}; fun(x,10); }

4.已知程序中有聲明“int a; long b;”,若需要接收從鍵盤輸入的電話號(hào)碼字符串(010)64782656(其中010為區(qū)號(hào),64782656是電話號(hào)碼)并將其中的區(qū)號(hào)、電話號(hào)碼分別存儲(chǔ)到變量a,b中,則實(shí)現(xiàn)該功能的輸入語(yǔ)句為"scanf("___( 4 )____",&a,&b);"。

5.若要使表達(dá)式p="jiangsu"無任何錯(cuò)誤(包括語(yǔ)法錯(cuò)誤和警告錯(cuò)誤),p的聲明形式應(yīng)為__( 5 )_____

閱讀程序(13分)

6.以下程序運(yùn)行后輸出結(jié)果為__(  6  )____。

#include "stdio.h"

int m(int a)

{static int s;

 return(++s)+(--a);

 }

void main()

{int a=2;

 printf("%d",m(m(a)));

}

 

7.以下程序運(yùn)行后輸出結(jié)果為___(  7 )___。

#include "stdio.h"

enum days{ mon=1,tue,wed,thu,fri,sat,sun}today=tue;

void main()

{printf("%d",(today+2)%7);}

 

8.以下程序運(yùn)行后輸出結(jié)果為___(  8  )____。

#include "stdio.h"

int mystery(int a,int b)

{if(b==1)  return a;

 else return  a+mystery(a,b-1);

}

void main()

{int x=5,y=3;

 printf("%d\n",mystery(x,y));

}

 

9.以下程序運(yùn)行后輸出結(jié)果中第一行為____( 9)____,第二行為____( 10 )____。

#include "stdio.h"

void main()

{int i=5;

 do

 {switch(i%2)

  {case 0: i--; break;

   case 1: i--; continue;

   }

  i--;

  printf("%d\n",i);

  }while(i>0);

}

10.以下程序運(yùn)行后輸出結(jié)果中第一行為_____(11)___,第二行為______(12)___ _

#include

int fun(int a[],int n,int b[])

{int i=0,j,m=0,c,x;

 for(i=0;i<n;i++)

 {x=a[i]; c=1;

  for(j=i+1;j<n;j++)

    if(a[j]==x)  c++;

    else {i=j-1; break; }

  if(j>=n) i=j;

  if(c==1)  b[m++]=x;

  else  {b[m++]=-c;  b[m++]=x;  }

 }

 return m;

}

void main()

{int x[]={4,4,4,4,4,4,4,4,1,2},y[10],i,j,n=10;

n=fun(x,n,y);

for(i=0;i<N;I++)

 {if(i%2==0)  printf("\n");

  printf("%5d",y[i]);

  }

}

11.以下程序運(yùn)行后輸出結(jié)果中第一行為____( 13 )__________,第二行為____( 14 )_____,

第三行為____( 15 )___________

#include "stdio.h"

#define N 3

main()

{int a[N][N],b[N*N]={1,1},i,j;

 for(i=2;i<N*N;i++)

  b[i]=b[i-1]+b[i-2];

 for(i=0;i<N;i++)

   for(j=0;j<N;j++)

    a[j][i]=b[i*N+j];

 for(i=0;i<N;I++)

 { for(j=0;j<N;j++)

    printf("%5d",a[i][j]);

   printf("\n");

  }

}

12.以下程序運(yùn)行后輸出結(jié)果中第一行為__(16)_,第二行為__(17)____,第三行為_(18)____。

#include "stdio.h"

#include "stdlib.h"

struct node

{char data; struct node *next; };

struct node *insert(struct node *h,char c)

{struct node *p,*p1,*p2;

 p=(struct node *)malloc(sizeof(struct node));

 p->data=c; p->next=NULL;

 if(h==NULL) h=p;

 else

 {p1=p2=h;

  while(c>p1->data&&p1->next!=NULL)

  {p2=p1;p1=p1->next; }

  if(c<=p1->data)

   if(p1==h)  {p->next=h; h=p; }

   else {p2->next=p; p->next=p1;  }

  else

  {p1->next=p; }

 }

 return h;

}

struct node *del(struct node *h)

{struct node *p=h;

 while(p!=NULL)

 {if(p->data%2==0) p->next=p->next->next;

  p=p->next;

 }

 return h;

}

void print(struct node *h)

{struct node *p=h;

 while(p!=NULL)

 {printf("%c",p->data);  p=p->next; }

 printf("\n");

}

void main()

{ struct node *head=NULL;

  char *item="32659",*p=item;

  puts(item);

  while(*p)  head=insert(head,*p++);

  print(head);  del(head); print(head);

}

 

完善程序(12分)

13.以下程序的功能是:用簡(jiǎn)單迭代法求方程cos(x)-x=0在區(qū)間(0,1)上的一個(gè)近似實(shí)根。迭代公式為:xn+1=cos(xn),(n=0,1,2,...),當(dāng)xn+1-xn的絕對(duì)值小于1e-6時(shí),xn+1即是方程cos(x)-x=0x0附近的一個(gè)誤差小于1e-6的近似實(shí)根(此根的近似值是0.7391)。

#include

#include

float root(float x0)

{float x1;    _____( 19 )________;

 do

 { x0=x1;

   x1=cos(x0);

 }while(____20___________);   

 return x1;

}

void main()

{float x;

 x=__(   21   )__;

 printf("x=%f,cos(%f)-%f=%f",x,x,x,cos(x)-x);

}

14.以下程序的功能是找到具有這樣特性的正整數(shù)A:若將A的個(gè)位數(shù)p移到首位,所得到的數(shù)為原數(shù)的p倍。例如,將102564的個(gè)數(shù)4移到首位得到410256,而410256=102564*4,因此數(shù)102564具有此特性。對(duì)于p=2,3,4,5,6,7,8,9均存在具有此特性的整數(shù)。但除本例外,其余數(shù)的倍數(shù)均超過12,不能用普通整型數(shù)表示,但可用類似手算的方法找到它們。

函數(shù)int serch(int p)的功能是:找到末位數(shù)是p且具有上述特性的正整數(shù)A,以十進(jìn)制形式將A保存到數(shù)組a中,每個(gè)數(shù)組元素保存A的一位數(shù)(個(gè)位數(shù)p保存在a[0]中,十位數(shù)保存在a[1]中,百位數(shù)保存在a[2]中,其他位依次類推)。

算法提示:(1)將p保存到a[0],將a[0]a[1]的進(jìn)位值置為0;

          2)對(duì)于i=1,2,3,....,計(jì)算“a[i-1]*p+a[i-1]a[i]的進(jìn)位值得到t,若t=pA已找到,否則將t 的個(gè)位數(shù)保存到a[i]t的十位數(shù)作為a[i]a[i+1]的進(jìn)位值。

#include

#define N 60

int a[N];

int search(int p)

{int i,t,c=0;

 a[0]=____( 22 )____;           

 for(i=1;;i++)

 {t=__( 23 )___________;                  

  if(t==p) break;

  a[i]=t%10; c=t/10;

  }

  return i;

}

void main()

{int p,i,n;

 scanf("%d",&p);

 n=search(p);

 printf("p=%d; A=",p);

 for(i=__( 24 )______;i>=0;i--)               

  printf("%d",a[i]);

}

 

15.以下程序的功能是:main函數(shù)通過調(diào)用fun1函數(shù)將數(shù)組S4個(gè)元素中大于等于平均值的那些數(shù)保存到a數(shù)組,小于平均值的那些數(shù)保存到b數(shù)組,變量nm分別保存a數(shù)組和b數(shù)組中數(shù)據(jù)的個(gè)數(shù)。輸出數(shù)組S中數(shù)據(jù)的平均值和a、數(shù)組中的數(shù)據(jù)。

#include"stdio.h"

#deine N 4

double fun1(int *x,int *y,int *z,int *n,int *m)

{int i;

 double av=0;

___( 25 )__________;                 

for(i=0;i<N;i++)

_____(26)__________;               

av/=N;

for(i=0;i<N;I++)

if(__27_____)                     

{y[*n]=x[i];  (*n)++;  }

else

 {z[*m]=x[i];  (*m)++;  }

 return av;

}

void main()

{int S[N]={60,80,50,90},a[N]={0},b[N]={0},t,i,j,m,n; double ave;

 ave=fun1(S,a,b,&n,&m);

 printf("%f\n",ave);

 for(i=0;i<n;i++)   printf(“%3d”,a[i]);

 printf("\n");

 for(i=0;i<m;i++) printf(?%3d?,b[i]);

}

16.以下程序的功能是:在不改變a數(shù)組中數(shù)據(jù)存儲(chǔ)位置的前提下,按a數(shù)組第一列元素的值從大到小依次輸出a數(shù)組的各行元素。實(shí)現(xiàn)算法:將a數(shù)組每行第一個(gè)元素的值和地址依次保存到index結(jié)構(gòu)數(shù)組相應(yīng)元素的成員xy中,對(duì)index 數(shù)組按成員x的值從大到小排序,依次輸出index數(shù)組每個(gè)元素的成員y指向的a數(shù)組中一行的全部元素的值。

#include <stdio.h>

struct link

{int x,*y; }

void main()

{ int a[ ][3]={{20,40,30},{30,10,20},{40,50,30},{60,60,30}},i,j,k,*p;

  struct link index[4]={0},tmp;

for(i=0;i<4;i++)

 { index[i].y=__( 28 )______;                

   index[i].x=a[i][0];

  }

 for(i=0;i<3;i++)

  {k=i;

  for(j=i+1;j<4;j++)

   if(__( 29 )_____) k=j;                    

  if(k!=i) {tmp=index[i];index[i]=index[k];index[k]=tmp; }

  }

  for(i=0;i<4;i++)

  {p=index[i].y;

   printf("\n");

   for(j=0;j<3;j++)

     printf("%3d",______( 30 )_____);             }

}