当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
2015年计算机二级C语言上机操作题及答案(13)
发布时间:2011/7/4 10:54:33 来源:城市学习网 编辑:ziteng
  第13套
  填空题
  请补充fun函数,该函数的功能是判断一个数是否为素数.该数是素数时,函数返回字符串:yes!,否则函数返回字符串:no!,并在主函数中输出.
  注意:部分源程序给出如下。
  仅在横线上填入所编写的若干表达式或语句,勿改动函数中的其他任何内容。
  试题程序:#include
  #include
  ___1___
  {
  int  i, m;
  m = 1;
  for (i=___2___; i       if (___3___)
  {
  m=0;
  break;
  }
  if (m==1 && n>1)
  return("yes!");
  else
  return("no!");
  }
  main()
  {
  int  k = 0;
  printf("Input:");
  scanf("%d", &k);
  printf("%s\n", fun(k));
  }
  第1处填空:char*fun(int n)
  第2处填空:2
  第3处填空:n%i==或!(n%i)或0==n%i [NextPage]   改错题
  下列给定程序中,FUN函数的功能是:根据形参M,计算如下公式的值。
  例如,若输入5,则应输出2.283333.
  请改正程序中的错误或在横线处填上适当的内容并把横线删除,使它能计算出正确的结果。
  注意:不要改动MAIN函数,不得增行或删行,也不要更改程序的结构!
  试题程序:#include
  #include
  double fun(int  m)
  {
  double  t = 1.0;
  int  i;
  /********found********/
  for (i=2; i<=m; i++)
  t += 1.0/k;
  /********found********/
  ___ì???___
  }
  main()
  {
  int  m;
  printf("\nplease enter 1 integer numbers:\n");
  scanf("%d", &m);
  printf("\n\nthe result is %lf\n", fun(m));
  }
  第1处:t  +=  1.0/k;应改为t+=1.0/i;
  第2处:应填return t;
[NextPage]   编程题
  请编写一个函数void fun(int tt[M][N]),tt提向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指的一维数组中。二维数组中的数已在主函数中赋予。
  注意:部分源程序给出如下。
  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
  试题程序:
  #include
  #include
  #define  M  3
  #define  N  4
  void fun ( int tt[M][N],int pp[N] )
  {
  }
  main( )
  {
  int t [ M ][ N ]={{22,45, 56,30},
  {19,33, 45,38},
  {20,22, 66,40}};
  int  p [ N ],  i,  j,  k;
  FILE *out;
  printf ( "The original data is : \n" );
  for( i=0; i       for( j=0; j           printf ( "m", t[i][j] );
  printf("\n");
  }
  fun ( t, p );
  printf( "\nThe result  is:\n" );
  for ( k = 0; k < N; k++ )
  printf ( " M ", p[ k ] );
  printf("\n");
  out = fopen("out.dat", "w");
  for ( k = 0; k < N; k++ )
  fprintf (out, "%d\n", p[ k ] );
  fclose(out);
  }
  答案是:
  vid fun(int tt[M][N] ,int pp[N])
  {
  int i,j,min;
  for(j=0;j{
  min=tt[0][j];
  for(i=0;i{
  if(tt[i][j]min=tt[i][j];
  }
  pp[j]=min;
  }
  }
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved