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

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

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

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

程序填空题

1.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)

例如,形参s所指字符串为\\

(1)1 (2)s[k]或*(s+k) (3)c

解析:本题考查:指针型变量; if…else语句; 赋值语句。

程序修改题

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

s=aa… aa-…-aaa-aa-a (此处aa… aa表示n个a,a和n的值在1至9之间)

例如,a=3,n=6, 则以上表达式为:

s=33333-33333-3333-333-33-3

其值是296298。

a和n是fun函数的形参,表达式的值作为函数值传回main函数。

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

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

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

#include

long fun (int a, int n)

{ int j ;

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

long s = 0, t = 1 ;

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

t = t * 10+a ;

s = t ;

for (j = 1 ; j < n ; j++) {

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

t = t % 10 ;

s = s-t ;

}

return(s) ;

}

void main( )

{ int a, n ;

printf(\\

(1)long s=0.t=0;

(2)t=t/10;

解析:变量赋初值操作;求余运算和除法运算的区别。

(1)t用来存放每次循环后的多位数,第一次循环时,t应当是个位数,所以的初始值应为0。

(2)根据题意,这里不需要求余数,而是要去掉个位数,重新组合一个数,因此应用除法运算。去掉数值n的个位的方法是采用除法运算,如果需要取出个位数才使用求余运算,不要混淆。

程序设计题

3.使VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数void fun(char *tt,int pp[]),统计在tt所指的字符串中’a’到’z’26个小写字母各自出现的次数,并依次放在pp所指的数组中。

例如,当输入字符串abcdefgabcdeabc后,程序的输出结果应该是:

3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

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

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

#include

#include

void fun(char *tt, int pp[])

{

}

void main( )

{ char aa[1000] ;

int bb[26], k ;

void NONO ( );

printf(\\

void fun(char *tint pp[])

{

int i;

pp[i]=0: /*初始化pp数组各元素为0*/

for(:*tt!=’\\\\0’;tt++)

if(tt>=’a’&&*tt<=’z’)

pp[*tt-’a’]++; }

解析:

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号