首页 > 全部 > 二级C语言 > 国家二级(C语言)机试模拟试卷984

国家二级(C语言)机试模拟试卷984

本单篇文档共2718字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 模拟试卷 4738人下载
价格: 免费 原价:¥8.00
收藏

国家二级(C语言)机试模拟试卷984

程序填空题

1.使用VC++2010打开考生文件夹下blankl中的解决方案。此解决方案的项目中包含一个源程序文件blankl.c。在此程序中,函数fun()的功能是将形参s所指字符串中的数字字符转换成对应的数值,计算出这些数值的累加和并作为函数值返回。

例如,形参s所指的字符串为abs5deft26jkm8,程序执行后的输出结果为22。

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

注意:部分源程序在文件blankl.c中。

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

试题程序:

#include <stdio.h>

#include <string.h>

#include <ctype.h>

int fun(char *s)

(int sum=0;

while(*s){

/*********found*********/

if(isdigit(*s))

sum+=*s-【1】

/*********found*********/

【2】

}

/*********found*********/

return 【3】

}

main()

{char s[81];int n;

printf(\\

(1)48或’0’ (2)s++ (3)sum

解析:本题把字符串中的数字字符转换成对应的数值并进行累加。

填空1:’0’对应的ASCII值是48,因此数字字符转换成对应数值时只要减去48,即该数字字符对应的数值。故空1处应该填48或者’0’。

填空2:判断完一个字符之后,将字符串指针移到下一个位置,故空2处应该填s++。

填空3:函数fun()返回累加和sum,故空3处应该填sum。

程序修改题

2.使用VC++2010打开考生文件夹下modil中的解决方案。此解决方案的项目中包含一个源程序文件modil.c。在此程序中,函数fun()的功能是计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的值为500,则函数的值为4622。

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

注意:部分源程序在文件modil.c中,不要改动main()函数,不得增行或删行,也不得更改程序的结构!

试题程序:

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

int fun(int k)

{int m=0,mc=0,j;

while((k>=2)&&(mc<10))

{

/*********found*********/

if((k%13=0)∣∣(k%17=0))

{m=m+k;mc++;}

k--;

/*********found*********/

return m;

}

void main()

{system(\\

(1)if((k%13==0)∣∣(k%17==0))

(2)}return m;

解析:(1)C语言中,x能被y整除的表示方法是x%y==0,而不是题目中所表示的x%y=0。所以,if((k%13=0)11(k%17=0))应改为if((k%13==0)‖(k%17==0))。

(2)while循环缺少“}”,此类信息在做题时一定要注意,可以在做题前先运行一下程序,这样明显的错误一般都会有错误信息显示出来。如丢失“}”的错误信息是“Compound statement missing}in function fun”。

程序设计题

3.使用VC++2010打开考生文件夹下progl中的解决方案。此解决方案的项目中包含一个源程序文件progl.c。在此程序中,编写函数fun(),它的功能是求小于形参n且同时能被3与7整除的所有自然数之和的平方根,并将其作为函数值返回。

例如,若n为1000时,程序输出应为s=153.909064。

注意:部分源程序在文件progl.c中。

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

试题程序:

#include <math.h>

#include <stdio.h>

double fun(int n)

{

}

main()/*主函数*/

{void NONO();

printf(\\

double fun(int n)

{

double sum=0.0;

int i;

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

if((i%3==0)&&(i%7==0))

sum+=i:

return sqrt(sum);

}

解析:本题考查算术运算的算法。首先利用一个for循环判断小于n且能同时被3和7整除的整数,并将满足条件的整数累加到sum。之后调用sqrt()函数计算sum的平方根,并将其作为函数的返回值返回。

本文档预览:3600字符,共2718字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C语言)机试模拟试卷984

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号