首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2013中考 | 2013高考 | 2013考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 托业 | 雅思 | 专四专八 | 口译笔译 | 博思
GRE GMAT | 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 |
零起点法语 | 零起点德语 | 零起点韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师 | 秘书资格 | 心理咨询师 | 出版专业资格 | 广告师职业水平 | 驾驶员
网络编辑 | 公共营养师 | 国际货运代理人 | 保险从业资格 | 电子商务师 | 普通话 | 企业培训师
营销师
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
化工工程师 | 材料员
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
计算机等级考试
您现在的位置: 考试吧(Exam8.com) > 计算机等级考试 > 计算机二级 > C语言 > 模拟试题 > 正文

2012年全国计算机等级二级C语言模拟试题及答案(10)

来源:考试吧Exam8.com) 2012-8-27 15:59:19 考试吧:中国教育培训第一门户 模拟考场
2012年全国计算机等级二级C语言模拟试题及答案。

  第10套:

  给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1; 不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。

  例如,以下3×3的矩阵就是一个"幻方":

  4 9 2

  3 5 7

  8 1 6

  请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。

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

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

  给定源程序:

  #include

  #define N 3

  int fun(int (*a)[N])

  { int i,j,m1,m2,row,colum;

  m1=m2=0;

  for(i=0; i

  { j=N-i-1; m1+=a[i][i]; m2+=a[i][j]; }

  if(m1!=m2) return 0;

  for(i=0; i

  row=colum= __1__;

  for(j=0; j

  { row+=a[i][j]; colum+=a[j][i]; }

  if( (row!=colum) __2__ (row!=m1) ) return 0;

  }

  return __3__;

  }

  main()

  { int x[N][N],i,j;

  printf("Enter number for array:\n");

  for(i=0; i

  printf("Array:\n");

  for(i=0; i

  { for(j=0; j

  printf("\n");

  }

  if(fun(x)) printf("The Array is a magic square.\n");

  else printf("The Array isn't a magic square.\n");

  }

  解题思路:

  第一处:行列变量row和colum的值初始化为0。

  第二处:两个条件只要有一个不满足就返回0,所以应填:||。

  第三处:如果矩阵是“幻方”,则返回1。

  ***************************************************

  给定程序MODI1.C中fun函数的功能是: 根据整型形参m,计算如下公式的值。

  1 1 1

  t = 1 - ----- - ----- - …… - -----

  2 3 m

  例如,若主函数中输入5,则应输出 -0.283333。

  请改正函数fun中的错误或在横线处填上适当的内容并把横线删除, 使它能计算出正确的结果。

  注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!

  给定源程序:

  #include

  double fun( int m )

  {

  double t = 1.0;

  int i;

  for( i = 2; i <= m; i++ )

  t = 1.0-1 /i;

  _______;

  }

  main()

  {

  int m ;

  printf( "\nPlease enter 1 integer numbers:\n" );

  scanf( "%d", &m);

  printf( "\n\nThe result is %lf\n", fun( m ) );

  }

  解题思路:

  第一处:在除法运算中,如果除数和被除数都是整数,所么所除结果也是整数,因此应改为t-=1./i。

  第二处:应是返回公式的值,函数中公式的值是存放在临时变量t中,所以应填return t;。

  ***************************************************

  请编写一个函数,函数的功能是删除字符串中的所有空格。

  例如, 主函数中输入"asd af aa z67", 则输出为 "asdafaaz67"。

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

  请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

  给定源程序:

  #include

  #include

  int fun(char *str)

  {

  }

  main()

  {

  char str[81];

  int n;

  printf("Input a string:") ;

  gets(str);

  puts(str);

  fun(str);

  printf("*** str: %s\n",str);

  NONO();

  }

  解题思路:

  本题是考察考生怎样利用字符串指针来删除字符串的空格字符。在函数开始处把指针p先指

  向字符串str以及位置变量i置0,然后采用while循环和字符串指针p来处理的,每循环一次来判断指针p所指的字符是否为空格,如果不是空格,则把该字符写到str字符串中,位置由i来控制,如果是空格,则不处理,继续取下一字符,直至字符串结束为止,最后再把字符串结束符写到

  位置为i的str上,再通过形参str返回。

  参考答案:

  int fun(char *str)

  {

  char *p = str ;

  int i = 0 ;

  while(*p) {

  if(*p != ' ') str[i++] = *p ;

  p++ ;

  }

  str[i] = 0 ;

  }

1 2  下一页

  相关推荐:

  2012年下半年计算机等级考试报名时间及入口汇总

  2012年计算机等考四级数据库工程师备考笔记汇总

  2012年计算机等级考试二级VB重点知识汇总  

文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。