• 联系我们
  • 地址:湖北武汉三环科技园
  • 电话:159116031100
  • 传真:027-68834628
  • 邮箱:mmheng@foxmail.com
  • 当前所在位置:首页 - c++培训
  • 2016年计算机二级C语言上机操作习题及答案2
  •   一、程序填空题

      1下列给定程序中,函数fun的功能是:在形参ss所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串数组中的位置(即下标值),若未找到则返回-1。ss所指字符串数组中共有N个内容不同的字符串,且串长小于M。

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

      注意:部分源程序给出如下。

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

      试题程序

      参考解析:

      【参考答案】

      (1)N(2)i(3)一1

      【考点分析】

      本题考查:for循环语句;函数返回值;if语句条件表达式。

      【解题思路】

      填空l:变量i是循环变量,它的取值范围是0一N。

      填空2:如果ss所指字符串数组中的字符串与t所指字符串相同,则返回其下标值,即returni;,否则返回一1,即return一1;o

      填空3:在main函数中输出最后结果,判断函数返回值n,如果n=一1,说明没有找到,否则输出n。

      二、程序改错题

      2下列给定程序中函数fun的功能是:通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。

      例如,变量a中的值原为8,b中的值原为3,程序运行后a中的值为3,b中的值为8。

      请改正程序中的错误,使它得出正确的结果。

      注意:不要改动main函数,不得增行或删行,也不得更

      改程序的结构!

      试题程序

      参考解析:

      【参考答案】

      (1)t=*x;*X=Y;(2)return(t);或returnt;

      【考点分析】

      本题考查:指针型变量的使用;通过return语句完成函数值的返回。

      【解题思路】

      首先,定义变量t作为中间变量,然后进行数据交换,注意参数x是指针变量,交换时应使用*x,最后确定返回值;根据代码b=fun(8ab),可以知道返回值将赋给变量b,而b中应存放交换前*x中的值,所以函数应返回变量t。

      三、程序设计

      3规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用c语言提供的字符串函数。

      例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。

      注意:部分源程序给出如下。

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

      试题程序:

      【考点分析】

      本题考查:删除字符串中所有*号,需用循环语句遍历字符串,用判断语句判断字符是否为*号,由此可以决定该程序应使用循环判断结构。

      【解题思路】

      用循环操作从字符串开始往后逐个进行比较,若不是要删除的字符(用if(aEi]!=’*’)来控制)则保留。变量i和j用来表示原字符串的下标和删除*号后新字符串的下标。注意,下

      标变量J要从0开始,最后还要加上字符串结束标识‘\0’。

    推荐: