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

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

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

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

程序填空题

1.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息。ss所指字符串数组中共有N个字符串,且串长小于M。程序中库函数strstr(s1, s2)的功能是在s1串中查找s2子串,若没有,函数值为0,若有,函数值为非0。

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

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

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

#include

#include

#define N 5

#define M 15

void fun(char (*ss)[M], char *substr)

{ int i,find=0;

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

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

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

if(strstr(ss[i],__2__) != NULL)

{ find=1; puts(ss[i]); printf(\\

(I)N (2)subsr (3)0

解析:本题考查: for循环语句;strst( )字符串函数的使用;语句条件表达式。

程序修改题

2.使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:求三个数的最小公倍数。

例如,若给主函数中的变量x1、x2、 x3分别输入15,11,2,则输出结果应当是330。

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

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

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

#include

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

fun(int x, y, z)

{ int j,t ,n ,m;

j = 1 ;

t=j%x;

m=j%y ;

n=j%z;

while(t!=0||m!=0||n!=0)

{ j = j+1;

t=j%x;

m=j%y;

n=j%z;

}

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

return i;

}

void main( )

{ int x1,x2,x3,j ;

printf(\\

(1)fun(int x,int y.int z)

(2)return j;

解析:函数定义,注意有参函数的参数列表;函数返回值,通过return语句返回给主函数。

(1)定义函数时,如果函数本身声明的类型是int型,是可以缺省的,所以fun前面可以不加上int, 但是函数的形参必须声明类型,不可缺省,所以y和z缺少类型声明,需要补上。

(2)通过return语句将最小公倍数j返回给主函数。

几个自然数公有的倍数中最小的一个,叫做这几个数的最小公倍数。求几个数的最小公倍数的方法为:定义一个变量从1开始增加,每增加1即对几个数进行求余运算,直到几个数的余数全部为0,此时该数为这几个数的最小公倍数。

程序设计题

3.使VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:只删除字符前导和尾部的号,串中字母间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中尾部*号的个数。在编写函数时,不得使用C语言提供的字符串函数。

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

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

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

#include

void fun(char *a, int n,int h,int e)

{

}

void main( )

{ char s[81],*t,*f; int m=0, tn=0, fn=0;void NONO ( );

printf(\\

void fun(char *a.int n,int h,int e)

{

int i,j=0;

for(i=h;i<n-e;i++) /*第一个字母和最后一个字母之间的字符全不删除*/

a[j++]=a[i];

a[j]=’\\\\0’; /*在字符串最后加上结束标识*/ }

解析:本题考查:删除字符串前导*号和尾部*号,其主要思想就是把不删除的字符保留起来。

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号