亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

C語言

計算機二級考試C語言預(yù)測上機鞏固試題

時間:2024-06-17 17:51:23 C語言 我要投稿
  • 相關(guān)推薦

計算機二級考試C語言預(yù)測上機鞏固試題

  距離2017年3月計算機等級考試越來越近了,百分網(wǎng)小編為大家整理了2017年計算機二級考試C語言預(yù)測上機鞏固試題,希望對各位有所幫助!

計算機二級考試C語言預(yù)測上機鞏固試題

  一、程序填空題

  請補充main()函數(shù),該函數(shù)的功能是:如果數(shù)組arr的前一個元素比后一個元素小,則把它保存在數(shù)組bb中并輸出。

  例如,若數(shù)組中的元素為:“40,68,62,33,35,52,48,95,66,73”,則輸出:“40,33.35,48,66”。

  注意:部分源程序給出如下。

  請勿改動函數(shù)()main和其他函數(shù)中的任何內(nèi)容,僅在main()函數(shù)的橫線上填入所編寫的若干表達式或語句。

  試題程序:

  #include

  #include

  世define M 10

  void main()

  {

  int i,n=0;

  int arr[M]={40,68,62,33,35,52,48,95,66,73};

  int bb[M];

  system("CLS");

  for(i=0;i<【1】 ;i++)

  if(arr[i]   【2】 ;

  printf("\n***display bb***\n"):

  for(i=0;i   printf("bb[%d]=%2d”,【3】);

  }

  二、程序改錯題

  給定程序中,函數(shù)proc()的功能是:使數(shù)組中的元素的值縮小5倍。

  請修改程序中的錯誤,使它能得出正確的結(jié)果。

  注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。

  試題程序:

  #include

  #include

  #include

  float m[10];

  //****found****

  int proc(void)

  {

  int j;

  printf(”In subfunc after calling\n”);

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

  {

  //****found****

  printf("%f",m[j]%5);

  }

  }

  void main()

  {

  int i;

  printf("In main before calling\n");

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

  {

  m[i]=i+20:

  printf("%f",m[i]);

  }

  proc();

  printf("\nln main after calling\n");

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

  printf("%f",m[i]/5);

  }

  三、程序設(shè)計題

  學(xué)生的記錄由學(xué)號和成績組成,M名學(xué)生的數(shù)據(jù)已在主函數(shù)中放人結(jié)構(gòu)體數(shù)組stu中,請編寫函數(shù)proc(),其功能是:按分數(shù)的高低排列學(xué)生的記錄,高分在前。

  注意:部分源程序給出如下。

  請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號中填人所編寫的若干語句。

  試題程序:

  #include

  #define M l6

  typedef struct

  {

  char num[10];

  int s;

  }

  STREC;

  void proc(STREC a[])

  {

  int i,j;

  STREC t:

  for(i=1;i   排序*/

  for(j=0;j   if(a[j].s   的記錄,高分在

  前*/

  {t=a[j];a[j]=a[j+1];a[j+1]=t;)

  )

  void main()

  {

  STREC stu[M]={{"GA005",85),{"GA003",

  76},

  {"GA002",59),{"GA004",85},{"GA001",91),

  {fIGA007”,72),{"GA008",64),("GA006",87),

  {”GAOl5”,"t5},{"GA013",91),{"GA012",64},

  {"GA014",91),{"GAO11",66},{"GA017",64),

  {¨GA018",64),{¨GA016",72));

  int i;

  proc(stu);

  printf("The data after sorted:\n");

  for(i一0;i   {

  if(i%4==O)

  //每行輸出4個學(xué)生記錄

  printf("\n");

  printf("%S%4d",stu[i].mum,stu[i].s);

  }

  printf("\n");

  }

  上機考試試題答案與解析

  一、程序填空題

  【1】M-1【2】bb[n++]=arr[i]【3】i,bb[i]

  【解析】由整個for循環(huán)可知,變量i為數(shù)組art的下標,題目中要求取出前一個元素比后一個元素小的元素,所以只需要判斷前M-1個元素即可。因此,【1】處填“M-l”;如果第i個元素比第i+1個元素小,將第i個元素放入數(shù)組bb中,因此,【2】處填“bb[n++]=arr[i]”。最后,要輸出數(shù)組bb中的每一個元素。因此,【3】處填“i,bb[i]”。

  二、程序改錯題

  (1)錯誤:int proc(void)

  正確:void proc(void)

  (2)錯誤:printf("%f",m[j]%5);

  正確:printf("%f",m[j]/5);

  【解析】由主函數(shù)中的函數(shù)調(diào)用可知,函數(shù)proc()沒有返回值。因此,“int proc(void)”應(yīng)改為“void proc(void)”。題目中要求使數(shù)組中元素的值縮小到1/5,而不是對5取余。因此,“printf("%f",m[j]%5);”應(yīng)改為“printf("%f",m[j]/5);”。

  三、程序設(shè)計題

  void proc(STREC a[])

  {

  int i,j;

  STREC t:

  for(i=1;i  排序

  for(j=0;j  if(a[j].s  的記錄,高分在前

  {t=a[j];a[j]=a[j+1];a[j+1]=t;}

  }

  【解析】要按分數(shù)的高低排列學(xué)生的記錄,可以使用冒泡排序法。將每一個學(xué)生的成績與其他學(xué)生的成績相比較,對不符合要求的記錄交換位置。

【計算機二級考試C語言預(yù)測上機鞏固試題】相關(guān)文章:

計算機二級C語言考試上機考試題及答案10-29

2017計算機二級C語言上機最終預(yù)測題07-08

計算機四級C語言考試上機試題10-26

計算機二級C語言預(yù)測試題08-14

全國計算機二級《C語言》鞏固試題及答案06-10

計算機二級考試C++語言程序設(shè)計上機考試試題05-10

2024計算機二級C上機考試試題及答案10-23

計算機二級C語言預(yù)測試題及答案10-30

全國計算機二級考試C++鞏固試題與答案10-03

2017計算機二級C語言上機測試題附答案10-24