首页 > 全部 > 二级C语言 > 国家二级C语言机试(操作题)模拟试卷558

国家二级C语言机试(操作题)模拟试卷558

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

国家二级C语言机试(操作题)模拟试卷558

程序填空题

1.下列给定程序中,函数fun的功能是计算下式

直到

(1)0

(2)i++或++i或i+=1或i=i+1

(3)2.0*i

解析:填空1:循环变量i从1开始参加运算,但是在每次循环的开始i都进行自加1操作,故i应赋初值为0。

填空2:循环变量i自增1运算。

填空3:根据公式确定表达式通项。注意x为double型,故应将i变为double型再进行运算。

程序修改题

2.下列给定程序中函数fun的功能是:将s所指字符串的正序和反序进行连接,形成的新串放在t所指的数组中。

例如,当s所指字符串为“ABCD”时,t所指字符串中的内容应为“ABCDDCBA”。

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

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

试题程序:

#include<conio.h>

#include<Stdio.h>

#include<string.h>

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

void fun(char s,char t)

{

int i,d;

d=strlen(s);

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

t[i]=s[i];

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

t[d+i]=s[d一1一i];

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

t[2*d一1]=’\0’;

}

main()

{

char s[100],t[100];

printf(\\

(1)void fun(char*s,char*t)

(2)t[2*d]=’\0’;或t[d+i]=’\0’;或 t[2*d]=0;或t[d+i]=0;

解析:(1)从调用函数来看,函数传递的是数组,所以函数的形参应为指针。

(2)循环结束后回文字符的个数为2*d个,因为数组下标是从0开始的,所以最后一个字符的下 标为2*d一1,在最后一个字符的后面加上结束符’\0’,因此为t[2*d]=’\0’;。

程序设计题

3.编写函数fun,其功能是:将S所指字符串中除了下标为奇数同时ASCII码值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。

例如,若S所指字符串的内容为 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指数组中的内容应为“135”。

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

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

试题程序:

#include<conio.h>

#include<stdio.h>

#include<string.h>

void fun(char*s,char t[])

{

}

main()

{

char s[100],t[100];

printf(\\

void fun(char* s,char t[])

{

int i,j=0,n;

n=strlen(s);

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

if((i%2)&&(s[i:%2))

{

t[j++]=s[i]; /*将下

标为奇数同时ASCII码值为奇数的字符放入数组t中*/

}

t[j]=’\0’; /*最后加上结束标识符*/

}

解析:本题要求除了下标为奇数同时ASCII码值也为奇数的字符,其余的所有字符都删除,即要留下下标为奇数同时ASCII码值也为奇数的字符。所以if的条件语句应为:if(i%2!=0&&s[i]%2!=0)。

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号