日本一级特黄大片本道|AV在线免费网站|91在线无码精品国产|大香蕉国视频欧美看久草|小黑妹黄色片日夜夜香蕉视频|色婷婷欧美红桃免费在线观看|日韩激情四射的视频|欧美日韩成人爱情四季网站在线网站|亚洲欧美三页久婷|片在线看无码免费

當(dāng)前位置: 首頁 > 自學(xué)考試 > 自學(xué)考試模擬試題 > 2013自考“高級語言程序設(shè)計(jì)”習(xí)題答案詳解(34)

2013自考“高級語言程序設(shè)計(jì)”習(xí)題答案詳解(34)

更新時(shí)間:2012-12-06 09:44:10 來源:|0 瀏覽1收藏0

自學(xué)考試報(bào)名、考試、查分時(shí)間 免費(fèi)短信提醒

地區(qū)

獲取驗(yàn)證 立即預(yù)約

請?zhí)顚憟D片驗(yàn)證碼后獲取短信驗(yàn)證碼

看不清楚,換張圖片

免費(fèi)獲取短信驗(yàn)證碼

  5.要求函數(shù)的功能是在一維數(shù)組a中查找x值。若找到,則返回所在的下標(biāo)值;否則,返回0.設(shè)數(shù)據(jù)放在數(shù)組元素的a[1]到a[n]中。在以下給出的函數(shù)中,不能正確執(zhí)行此功能的函數(shù)是( )

  ① funa(int *a,int n, int x)

  { *a=x;

  whlie(a[n]!=x) n――;

  return n;

  }

  ② funb(int *a, int n, int x)

  { int k ;

  for( k=l; k<=n; k++)

  if(a[k]==x) return k;

  return 0 ;

  }

 ?、?func(int a[], int n, int x)

  { int * k;

  a[O]=x; k=a+n;

  while(*k?。絰)k――;

  return k-n;

  }

 ?、?fund(int a[], int n, int x)

  { int k=0;

  do k++;

  while((k<N+1) &&(A[K]! =X));

  if((k<N+1) &&[K]==X)) RETURN K;

  else return 0;

  }

  「解」在數(shù)組中找指定值是經(jīng)常遇到的計(jì)算要求,有多種編程方法。在這里,數(shù)據(jù)預(yù)放在數(shù)組下標(biāo)1至n的元素中,下標(biāo)為0的元素沒有放數(shù)據(jù),程序可以利用這個(gè)位置簡化查找函數(shù)。函數(shù)funa先將要查找的情放入a[0],從數(shù)據(jù)表的最后一個(gè)元素開始逆序向前查找。這樣做的好處是循環(huán)條件不必?fù)?dān)心因數(shù)組中原先沒有值為x的元素而一直順序查找下去,訪問不是數(shù)表的元素,需插入條件n>O.在a[0] 處放入x后,這個(gè)條件就不必要了,循環(huán)至少在訪問了a[0] 后終止,并返回0值。所以該函數(shù)能完成指定的功能。函數(shù)funb采用常規(guī)的辦法編寫,循環(huán)在a[1] 與a[n]之間順序?qū)ふ遥坏┱业搅⒓捶祷卣业教幍南聵?biāo),直至查找循環(huán)結(jié)束,查不到指定的值而返回0值。函數(shù)func采用與函數(shù)funa相同的方法,不過是另外引入一個(gè)指針變量。但是該函數(shù)return語句后的表達(dá)式有嚴(yán)重的錯(cuò)誤,應(yīng)返回k-a,兩指針的差,其值等于找到元素的下標(biāo)。表達(dá)式k-n是指針k向前移n個(gè)位置的指針值。函數(shù)fund預(yù)置k為0,循環(huán)讓 k增 1,并在 k在界內(nèi)和 a[k] 不等于 x的情況下循環(huán)。循環(huán)結(jié)束有兩種情況,或 k已不在界內(nèi),或k在界內(nèi),并且a[k]等于x.若是后者,函數(shù)返回k,而若前者,函數(shù)返回比該函數(shù)也能正確完成查找工作。這樣,不能正確完成查找工作的函數(shù)是函數(shù)fonc.所以正確選擇是③。

  6.以下程序的輸出結(jié)果是( )

  # include

  subl(char a,char b) {char c;c=a;a=b;b=c;}

  sub2(char *a,char b){ char c;c=*a;*a=b;b=c;}

  sub3(char *a,char *b) { char c;c=*a;*a=*b;*b=c;}

  main()

  { char a, b;

  a=‘A’; b=‘B’; sub3(&a,&b); putchar(a); putchar(b);

  a=‘A’;b=‘B’ ;Sub2(&a,b);putchar(a); rutchar(b);

  a=‘A’; b=‘B’; sub1(a,b); putchar(a);putchar(b);

  }

 ?、貰ABBAB ②ABBBBA

  ③ BABABA ④ BAABBA

  「解」在上述程序中,函數(shù)subl完成兩形參值的交換,這個(gè)交換不影響實(shí)參變量,這是一個(gè)沒有意義的函數(shù)。函數(shù)sub2將第二個(gè)形參的值置入由第一個(gè)指針形參所指的變量中,指針形參所指的變量由調(diào)用時(shí)的實(shí)參提供。函數(shù)sub3完成將兩個(gè)形參所指的變量的值交換。程序調(diào)用sub3,使變量a和b的值交換輸出BA;調(diào)用subZ,使變量b的值傳送到a,輸出BB;調(diào)用subl,變量a和b的值不改變,輸出AB.所以程序輸出BABBAB.正確解答是①。

?2013年高教自考網(wǎng)絡(luò)輔導(dǎo)課程招生簡章

?2013年1月自考報(bào)名 

更多信息請?jiān)L問:自學(xué)考試頻道    自學(xué)考試論壇

分享到: 編輯:環(huán)球青藤

資料下載 精選課程 老師直播 真題練習(xí)

自學(xué)考試資格查詢

自學(xué)考試歷年真題下載 更多

自學(xué)考試每日一練 打卡日歷

0
累計(jì)打卡
0
打卡人數(shù)
去打卡

預(yù)計(jì)用時(shí)3分鐘

自學(xué)考試各地入口
環(huán)球網(wǎng)校移動(dòng)課堂APP 直播、聽課。職達(dá)未來!

安卓版

下載

iPhone版

下載

返回頂部