分享

国家计算机二级c语言考试试题题库

 南风flc 2017-02-04
fwrite(student,【20】,1,fp);
  【参考答案】:
  【20】 sizeof(struct st)*50
上机部分
  一、填空题
  给定程序中,函数fun的功能是:找出N×N矩阵中每列元素中的最大值,并按顺序依次存放于形参b所指的一维数组中。
  请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
  注意:不得增行或删行,也不得更改程序的结构!
  #include< stdio.h>
  #define N 4
  void fun(int(*a)[N],int *b)
  {
  int i,j;
  for(i=0; i  {
  b[i]= 1 ;
  for(j=1;j  if(b[i] 2 a[j][i])
  b[i]= a[j][i];
  }
  }
  main()
  {
  int x[N][N]={{12,5,8,7},{6,1,9,3},
  {1,2,3,4},{2,8,4,3}},y[N],i,j;
  printf('\nThe matrix :\n');
  for(i=0;i  {
  for(j=0; j  printf('%4d',x[i][j]);
  printf('\n');
  }
fun( 3 );
  printf('\nThe result is:');
  for(i=0; i  printf('\n');
  }
  【答案及解析】
  (1)b是一维数组,存放N×N矩阵中每列元素中的最大值,循环开始,第i列的b[i]应该首先赋值为每列的第一个元素a[0][i],再循环与本列其他元素比较,最后找出每列元素中的最大值。因此空1中应该填入:a[0][i]。(2)for(j=1;j  二、改错题
  给定程序中,函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。
  例如,当字符串中的内容为“abcdabfabcdx”、t中的内容为“ab”时,输出结果应是abcdx。当字符串中的内容为“abcdabfabcdx”、t中的内容为“abd”时,则程序输出未找到信息not be found!。
  请改正程序中的错误,使其能得出正确的结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  #include< stdio.h>
  #include< string.h>
  char *fun(char *s,char *t)
  {
  char *p,*r,*a;
  a=Null;
  while(*s)
  {
  p=s;r=t;
  while(*r)
  if(r==p)
  {r++;p++;}
  else break;
  if(*r=='\0') a=s;
  s++;
  }
  return a ;
  }
main()
  {
  char s[100],t[100],*p;
  printf('\nPlease enter string S :');
  scanf('%s',s);
  printf('\nPlease enter substring t :');
  scanf('%s',t);
  p=fun(s,t);
  if(p) printf('\nThe result is :%s\n',p);
  else printf('\nNot found !\n');
  }
  【答案及解析】
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多