计算机二级考试C语言试题及答案

时间:2024-11-04 17:23:08 计算机等级 我要投稿

2016年计算机二级考试C语言试题及答案

  计算机等级考试正在报名,为帮助同学们在C语言考试中取得好成绩,yjbys为大家分享最新C语言考试试题及答案,赶紧来看看吧!

2016年计算机二级考试C语言试题及答案

  程序改错

  1

  /*--------------------------------------------------------

  【程序改错】

  --------------------------------------------------------

  功能:依次取出字符串中所有数字字符, 形成新的字符串, 并取代原字符串。

  例如:输入ab12c3d,则输出123。

  注意:不得增行或删行,也不得更改程序的结构!

  ------------------------------------------------------*/

  #include "stdio.h"

  /**********ERROR**********/

  void fun(char s)

  {

  int i,j;

  for(i=0,j=0; s[i]!='\0'; i++)

  if(s[i]>='0'&&s[i]<='9')

  /**********ERROR**********/

  s[j]=s[i];

  /**********ERROR**********/

  s[j]="\0";

  }

  main()

  {

  char item[80];

  printf("\nEnter a string: ");

  gets(item);

  printf("\n\nThe string is: \"%s\"\n",item);

  fun(item);

  printf("\n\nThe string of changing is: \"%s\"\n",item);

  }

  【改错1】

  【参考答案】

  void fun(char *s)

  void fun(char s[])

  void fun(char s[80])

  ============================================================

  【改错2】

  【参考答案】

  s[j++]=s[i];

  { s[j]=s[i]; j++; }

  ============================================================

  【改错3】

  【参考答案】

  s[j]='\0';

  2

  /*------------------------------------------------------

  【程序改错】

  --------------------------------------------------------

  功能:读入一个整数m( 5≤m≤20 ),函数rnd获得m个随机整数,

  函数sortpb将这m个随机整数从小到大排序。

  例如:若输入整数7,则应输出:3 10 17 28 32 36 47。

  ------------------------------------------------------*/

  #include "conio.h"

  #include "stdio.h"

  sortpb ( int n, int a[] )

  {

  /**********ERROR**********/

  int i, j, p;

  for ( j = 0; j < n-1 ; j++ )

  {

  p = j;

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

  /**********ERROR**********/

  if ( a[p] > a[j] ) p = i;

  /**********ERROR**********/

  if ( p == j )

  {

  t = a[j];

  a[j] = a[p];

  a[p] = t;

  }

  }

  }

  double rnd ( )

  {

  static t = 29, c = 217, m = 1024, r = 0;

  r =( r*t + c )%m; return( ( double )r/m );

  }

  getarr( int n, int *x )

  {

  int i;

  for( i = 1; i <= n; i++, x++ ) *x = ( int )( 50*rnd() );

  }

  putarr( int n, int *z )

  {

  int i;

  for( i = 1; i <= n; i++, z++ )

  {

  printf( "M", *z );

  if ( !( i ) ) printf( "\n" );

  }

  printf("\n");

  }

  main()

  {

  int aa[20], n;

  printf( "\nPlease enter an integer number between 5 and 20: " );

  scanf( "%d", &n );

  getarr( n, aa );

  printf( "\n\nBefore sorting %d numbers:\n", n ); putarr( n, aa );

  sortpb( n, aa );

  printf( "\nAfter sorting %d numbers:\n", n ); putarr( n, aa );

  }

  【改错1】

  【参考答案】

  int i, j, p, t;

  ============================================================

  【改错2】

  【参考答案】

  if ( a[p] > a[i] ) p = i;

  if ( a[i] < a[p] ) p = i;

  ============================================================

  【改错3】

  【参考答案】

  if ( p != j )

【计算机二级考试C语言试题及答案】相关文章:

计算机二级C语言考试试题及答案10-09

计算机二级C语言考试上机冲刺试题及答案09-08

计算机等级考试二级C语言考试试题(带答案)10-30

计算机二级C语言模拟试题及答案08-25

计算机二级《C语言》模拟试题及答案07-31

计算机二级C语言冲刺试题及答案10-29

计算机二级考试C++试题及答案08-01

计算机二级考试C++试题及答案10-08

2024最新计算机二级c语言试题及答案10-25

2016年计算机二级C语言考试题及答案10-07