C语言程序设计考试模拟题(V20090531)(2)

2019-03-28 18:27

(14)调用函数swap,将a和b的值交换,最后在屏幕上显示交换后的a,b之值

#include

/*********Found************/ void swap(int x, int y) {

int tmp;

/*********Found************/ ___________ *x = *y;

/*********Found************/ y = x; }

void main() {

int a = 3, b = 4;

/*********Found************/ swap(a, b);

printf(\}

(15)调用函数swap,将a和b的值交换,最后在屏幕上显示交换后的a,b之值

#include

void swap(int *x, int *y) {

int *tmp, xy;

/*********Found************/ *tmp = x; *x = *y;

/*********Found************/ y = *tmp; }

void main() {

int a = 3, b = 4;

/*********Found************/ swap(*a, *b);

/*********Found************/ printf(\}

(16)worker的信息使用结构体存储,从键盘读入其各项信息并显示

#include

void main() {

struct WKER {

long ID;

6

long int num; char name[20]; char sex;

/*********Found************/ } ;

worker.ID = 1L;

/*********Found************/

scanf(\ /*********Found************/

printf(\

worker.num, worker.name, worker.sex); }

(17)函数userLogin的功能主要是统计并返回登录的用户数,用户名最长30字节

#include

long userLogin(char *userName) {

/*********Found************/ long userCount = 0;

userCount++;

printf(\ userName, userCount); /*********Found************/ return ; }

void main( ) {

/*********Found************/ char *userName; int i;

while (1) {

printf(\ scanf(\ i = userLogin(userName); } }

(18)从键盘上读入10个大于0的数,调用函数dispMaxNum显示其中最大的一个

#include

int maxNum = 0;

void dispMaxNum() {

/*********Found************/

printf(\}

void main( ) {

int i, oneNumber, maxNumber = 0;

7

printf(\ {

int maxNumber = 0;

/*********Found************/ ___________

for (i = 0; i < 10; i++) {

scanf(\ if (oneNumber > maxNumber) {

maxNumber = oneNumber; } } }

/*********Found************/ ___________

/*********Found************/ ___________ dispMaxNum(); }

(19)将inBuf中字符串拆分成一个个的单词

/* 单词之间的分隔符由串divChar,程序中定义为“;?!,.>/\\”。

函数getStrFromBuf的功能是从Buf的开始处寻找第一个单词,将找到的单词作为一个字符串复制到Str处,divStr指明单词间的分隔符。GetStrFromBuf的返回值指向已找到单词的下一个字符。

函数charInStr的功能是判断字符t是否出现在串Str中。 主程序的功能是将inBuf中的所有单词在屏幕上显示出来。 */

#include #define Yes 1 #define No 0

char *getStrFromBuf(char *Buf, char *Str, char *divStr); int charInStr(char *Str, char t);

void main() {

char inBuf[100] = \ char divChar[] = \

p = inBuf; while (*p) {

/*********Found************/

getStrFromBuf(p, oneWord, divChar); if (*oneWord) {

puts(oneWord); } } }

int charInStr(char *Str, char t) {

for (; *Str; Str++) {

8

/*********Found************/ if (*Str == *t) {

/*********Found************/ return No; } }

/*********Found************/ return Yes; }

char *getStrFromBuf(char *Buf, char *Str, char *divStr) {

for (; *Buf; Buf++) {

if (charInStr(divStr, *Buf) == No) {

break; }

}

for (; *Buf; Buf++) {

if (charInStr(divStr, *Buf) == Yes) {

break; }

/*********Found************/ Str = *Buf; Str++; }

/*********Found************/ *Str = '0';

/*********Found************/ return ; }

1.2 程序设计 5小题、60分

本部分给出了5个(类)程序设计题的主要内容,在部分给出的程序运行效果示例中,带下划线部分表示是从键盘输入的内容,考生的程序设计要严格实现题中给出的程序效果。

程序设计题基本评分标准为:编译通过并且结果基本正确,边界条件未处理好则酌情扣分——即评分时只看结果是否正确,原则上不检查程序内容。

请考生注意:

(1)实际考题将在此基础上适当变换——并不限于其中已提示的可能变换。

(2)虽然部分题中没有对输入/输出格式作详细规定,但实际考题都会对输入/输出格式作明确要求,考生练习时可以参考已给出的其它程序设计题的运行效果及输入/输出格式规定,答题时严格遵循题中的规定。

9

(3)对于理工类考生,第1~5类题将各出2(①a、①b)、2(②a、②b)、1(③)、1(④)、1(⑤)道题(括号中为题的编号),每类题的分值分别为7×2、8×2、10、15、20。考生每小题的得分用f(x)表示、x为题号,则计算考生得分时,取Fa和Fb中最大者:

Fa = f(①a) + f(①b)+ f(②a) + f(②b) + f(③)

Fb = max(f(①a), f(①b)) + max(f(②a),f(②b)) + f(③) + f(④) + f(⑤) 上述分值计算公式意味者:编程能力一般的考生,可选做①a、①b、②a、②b、③题,最高可得40分;编程能力较强的考生,可选做①a与①b中任一题、②a与②b中任一题、③、④、⑤题,最高可得60分。

(4)对于文管类考生,不做第(5)题及拆分单词的(4)-2题,第1~4类题将各出2(①a、①b)、2(②a、②b)、1(③)、1(④)道题(括号中为题的编号),每类题的分值分别为7×2、9×2、15、20。考生每小题的得分用f(x)表示、x为题号,则计算考生得分时,取Fa和Fb中最大者:

Fa = f(①a) + f(①b)+ f(②a) + f(②b) + f(③)

Fb = max(f(①a), f(①b)) + f(②a) + f(②b) + f(③) + f(④)

上述分值计算公式意味者:编程能力一般的考生,可选做①a、①b、②a、②b、③题,最高可得47分;编程能力较强的考生,可选做①a与①b中任一题、②a、②b、③、④题,最高可得60分。

由于考生在考前均作了大量练习,知道考题的大概——实际考题与此公布的考题相似度很高但并不完全相同,因此,请考生考试时务必仔细阅读实际考题的要求,严格按实际考题的要求做,避免先入为主,切记!

1.2.1 第1(类)题

(1)编写一程序实现以下功能

x(x只考虑整数int、但5x完全可能超过int的表示范围)通过键盘输入(输入前给出提示Please input x:),然后计算并在屏幕上输出如下函数值,输出格式举例为:若x为3,则输出为F(3)=24。编程时,可以不用其它的子函数实现,可直接在main函中完成所有代码。

程序运行效果: Please input x: 3

F(x)= -2x (x<0) 0 (x=0) 5x+9 (x>0) 10


C语言程序设计考试模拟题(V20090531)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018最新退休返聘人员劳务合同-精选word文档(3页)

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

马上注册会员

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