欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

試題

全國計(jì)算機(jī)二級(jí)《C語言》上機(jī)例題

時(shí)間:2025-03-11 16:00:30 試題 我要投稿
  • 相關(guān)推薦

2016全國計(jì)算機(jī)二級(jí)《C語言》精選上機(jī)例題

  1.給定程序中,函數(shù)fun的功能是:將形參n所指變量中,各位上為偶數(shù)的數(shù)去 除,剩余的數(shù)按原來從高位到低位的順序組成一個(gè)新的數(shù),并通過形參指針n傳回 所指變量。

  例如,輸入一個(gè)數(shù):27638496,新的數(shù):為739。 請(qǐng)?jiān)诔绦虻南聞澗處填入正確的內(nèi)容并把下劃線刪除, 使程序得出正確的結(jié)果。

  注意:源程序存放在考生文件夾下的BLANK1.C中。

  不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

  給定源程序:

  #include

  void fun(unsigned long *n)

  { unsigned long x=0, i; int t;

  i=1;

  while(*n)

  { t=*n % __1__;

  if(t%2!= __2__)

  { x=x+t*i; i=i*10; }

  *n =*n /10;

  }

  *n=__3__;

  }

  main()

  { unsigned long n=-1;

  while(n>99999999||n<0)

  { printf("Please input(0

  fun(&n);

  printf("\nThe result is: %ld\n",n);

  }

  解題思路:

  第一處:t是通過取模的方式來得到*n的個(gè)位數(shù)字,所以應(yīng)填:10。

  第二處:判斷是否是奇數(shù),所以應(yīng)填:0。

  第三處:最后通形參n來返回新數(shù)x,所以應(yīng)填:x。

  給定程序MODI1.C中函數(shù) fun 的功能是:計(jì)算n!。

  例如,給n輸入5,則輸出120.000000。

  2.請(qǐng)改正程序中的錯(cuò)誤,使程序能輸出正確的結(jié)果。

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

  給定源程序:

  #include

  double fun ( int n )

  { double result = 1.0 ;

  if n = = 0

  return 1.0 ;

  while( n >1 && n < 170 )

  result *= n--

  return result ;

  }

  main ( )

  { int n ;

  printf("Input N:") ;

  scanf("%d", &n) ;

  printf("\n\n%d! =%lf\n\n", n, fun(n)) ;

  }

  解題思路:

  第一處:條件語句書寫格式錯(cuò)誤,應(yīng)改為:if (n==0)。

  第二處:語句后缺少分號(hào)。

  請(qǐng)編寫一個(gè)函數(shù)fun,它的功能是:將一個(gè)數(shù)字字符串轉(zhuǎn)換為一個(gè)整數(shù)(不得調(diào)用C語言提供的將字符串轉(zhuǎn)換為整數(shù)的。例如,若輸入字符串"-1234",則函數(shù)把它轉(zhuǎn)換為整數(shù)值 -1234。函數(shù)fun中給出的語句僅供參考。

  注意: 部分源程序存在文件PROG1.C文件中。

  3.請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容, 僅在函數(shù)fun的花括號(hào)中填入你編寫的若干語句。

  給定源程序:

  #include

  #include

  long fun ( char *p)

  {int i, len, t; /* len為串長,t為正負(fù)標(biāo)識(shí) */

  long x=0;

  len=strlen(p);

  if(p[0]=='-')

  { t=-1; len--; p++; }

  else t=1;

  /* 以下完成數(shù)字字符串轉(zhuǎn)換為一個(gè)數(shù)字 */

  return x*t;

  }

  main() /* 主函數(shù) */

  { char s[6];

  long n;

  printf("Enter a string:\n") ;

  gets(s);

  n = fun(s);

  printf("%ld\n",n);

  NONO ( );

  }

  NONO ( )

  {/* 本函數(shù)用于打開文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */

  FILE *fp, *wf ;

  int i ;

  char s[20] ;

  long n ;

  fp = fopen("c:\\test\\in.dat","r") ;

  wf = fopen("c:\\test\\out.dat","w") ;

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

  fscanf(fp, "%s", s) ;

  n = fun(s);

  fprintf(wf, "%ld\n", n) ;

  }

  fclose(fp) ;

  fclose(wf) ;

  }

  解題思路:

  本題是將一個(gè)數(shù)字字符串轉(zhuǎn)換為一個(gè)整數(shù)。

  參考答案:

  #include

  #include

  long fun ( char *p)

  {

  int i, len, t; /* len為串長,t為正負(fù)標(biāo)識(shí) */

  long x=0;

  len=strlen(p);

  if(p[0]=='-')

  { t=-1; len--; p++; }

  else t=1;

  /* 以下完成數(shù)字字符串轉(zhuǎn)換為一個(gè)數(shù)字 */

  while(*p) x = x*10-48+(*p++);

  return x*t;

  }

  main() /* 主函數(shù) */

  { char s[6];

  long n;

  printf("Enter a string:\n") ;

  gets(s);

  n = fun(s);

  printf("%ld\n",n);

  NONO ( );

  }

  NONO ( )

  {/* 本函數(shù)用于打開文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */

  FILE *fp, *wf ;

  int i ;

  char s[20] ;

  long n ;

  fp = fopen("c:\\test\\in.dat","r") ;

  wf = fopen("c:\\test\\out.dat","w") ;

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

  fscanf(fp, "%s", s) ;

  n = fun(s);

  fprintf(wf, "%ld\n", n) ;

  }

  fclose(fp) ;

  fclose(wf) ;

  }

  注意:由于NONO( )這個(gè)函數(shù)是改卷人用的,與考生沒有什么關(guān)系,故下面從第2套試題開始均省略NONO( )

【全國計(jì)算機(jī)二級(jí)《C語言》上機(jī)例題】相關(guān)文章:

全國計(jì)算機(jī)等級(jí)考試二級(jí)c語言上機(jī)題庫10-28

全國計(jì)算機(jī)等級(jí)考試二級(jí)C語言上機(jī)精選訓(xùn)練06-29

2015全國計(jì)算機(jī)二級(jí)c語言上機(jī)題庫(附答案)09-29

2015計(jì)算機(jī)二級(jí)c語言上機(jī)題庫06-19

2024二級(jí)c語言上機(jī)題庫04-18

全國計(jì)算機(jī)二級(jí)《C++》上機(jī)試題及答案08-15

計(jì)算機(jī)二級(jí)C語言上機(jī)編程題講解07-10

2017計(jì)算機(jī)二級(jí)C語言上機(jī)特訓(xùn)題08-12

計(jì)算機(jī)二級(jí)C語言程序上機(jī)指導(dǎo)10-29