c上机模拟详细参考答案_whc0909(11)

2020-11-29 00:00

计算机二级上机题库很有用 题目就是里面出的

1、程序填空题

【答案及难度指数】★★

(1)test%10 (2)break (3)break

【一起来审题】

(1)该程序功能是统计长整数各位上出现数字5、6、7的次数。

(2)解题思路,从已给部分源程序的main主函数开始入手,调用"fun(test);",将参数test传给函数"void fun(long test)",依次通过"test/=10;"求得长整数test的每一位数值,然后对其进行判断是否为数字5、6、7,然后将统计结果存放在外部(全局)变量sum5、sum6、sum7。

【解题思路】

第一空:switch(___1___)语句下面的case语句是判断switch中的表达式中的数字是否为5、6、7,因此这里的表达式应该是取长整数的一位,根据前面的分析,这里填"test%10";

第二空和第三空:因为一位数字只可能是5、6、7其中的一种情况,因此为了防止已知条件中的三个数之外的多余输出,这里应配合break语句,跳出选择,因此第二、三空应填"break"。

【主要考点】switch分支语句。

2、程序改错题

【答案及难度指数】★★

(1)if((str[i]>='a') && (str[i]<='z'))

(2)str[i]-=32;

【一起来审题】

本题中函数的功能是将字符串中的小写字母改为对应的大写字母。首先判断字母是否为小写字母,如果是小写字母则进行转换。

【解题思路】

(1)第一个错误标识下的if判断语句中的逻辑有误,应该是与(&&)的关系,不是或(||)的关系,所以if判断语句改为"if((str[i]>='a') && (str[i]<='z'))"。

(2)第二个标识下小写字母转换为大写字母的转换算法有误,小写转换为大写应该是减去32,而不是加上32,所以"str[i]+=32;"改为"str[i]-=32;"。

【主要考点】大小写字符之间的转换。

3、程序设计题

【答案及难度指数】★★★

int i;

*min=b[0]; //设置最小值初值

*d=0; //设置最小值标志位初值

for(i=0;i<n;i++)

if(b[i]<*min) //在循环中,对每一个元素与最小值标志值进行比较

{

*min=b[i]; //对最小值进行赋值

*d=i; //对最小值标志位进行赋值

}

【一起来审题】

该程序功能是求一维整型数组元素中最小的值和它所在的下标。其中,求最小元素的方法:用最小值变量min标记第一个待找数据,逐个把所有待找数据和min进行比较,并用min标记其当前最小值及其所在位置,从而找出最小值。

【解题思路】

进入fun函数,根据前面的分析:

(1)*min指针变量首先指向数组b的第一个数据,同时将标志位*d初始值赋为0。

(2)然后利用for循环对每一个当前数组数据与min标记的数据进行比较。

(3)循环中将求得的最小数据b[i]赋值给*min,并将该数据项数组标志位赋给标志位*d。

【主要考点】数组操作;指针操作。


c上机模拟详细参考答案_whc0909(11).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2021年铜矿行业深度分析及“十三五”发展规划指导报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: