程序设计大赛试题Word文档下载推荐.docx

上传人:b****1 文档编号:14373167 上传时间:2022-10-22 格式:DOCX 页数:9 大小:31.55KB
下载 相关 举报
程序设计大赛试题Word文档下载推荐.docx_第1页
第1页 / 共9页
程序设计大赛试题Word文档下载推荐.docx_第2页
第2页 / 共9页
程序设计大赛试题Word文档下载推荐.docx_第3页
第3页 / 共9页
程序设计大赛试题Word文档下载推荐.docx_第4页
第4页 / 共9页
程序设计大赛试题Word文档下载推荐.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

程序设计大赛试题Word文档下载推荐.docx

《程序设计大赛试题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《程序设计大赛试题Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。

程序设计大赛试题Word文档下载推荐.docx

3.已知:

inta[6],*p=a;

则下列不能表示a[1]地址的表达式是()

A)a+1B)a++C)++pD)p+1

4.有以下程序

structst

{intn;

structst*next;

};

staticstructsta[3]={5,&

a[1],7,&

a[2],9,’\0’},*p;

则值为6的表达式是()

A)p++->

nB)p->

n++C)++p->

nD)(*p).n++

5.以下程序的运行结果是()

point(char*p){p+=3;

main()

{charb[4]={‘a’,‘b’,‘c’,‘d’},*p=b;

point(p);

printf(“%c\n”,*p);

A)aB)bC)cD)d

6.设有以下定义:

inta[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};

int (*prt)[3]=a,*p=a[0];

则下列能够正确表示数组元素a[2][2]的表达式是()

A)*(*(p+9))B)*(p+9)C)*((*prt+2)[2])D)(*prt+2)+2

7.有以下程序

{inti;

for(i=0;

3;

i++)

switch(i)

{case1:

printf(“%d\n”,i);

case2:

default:

}}

执行后的输出结果为()

A)120B)012C)012020D)011122

8.以下程序的运行结果是()

main()

{inta=1,b;

for(b=1;

b<

10;

b++)

{if(a>

=8)break;

if(a%2==1){a+=5;

continue;

a=3;

printf(“%d\n”,b);

A)6B)5C)4D)3

9.执行以下程序,若从键盘上输入6514<

回车>

则输出结果为()

{intm,n;

scanf(“%d%d”,&

m,&

n);

while(m!

=n)

{while(m>

n)m-=n;

while(m<

n)n-=m;

printf(“%d\n”,m);

A)0B)1C)2D)3

10.有以下程序

#include“stdio.h”

voidwritestr(char*fn,char*str)

{File*fp;

fp=fopen(fn,“w”);

fputs(str,fp);

fclose(fp);

{writestr(“t1.dat”,“start”);

writestr(“t1.dat”,“end”);

程序运行后,文件中的内容是()

A)endB)endrtC)startD)startend

二、改错题(每修改1处错误2分,共20分)

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

注意,每个小题不止一处错误,修改时不要改动main函数,不得更改程序的结构。

1.下列程序的功能是;

读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有为素数的因子)。

#include<

stdio.h>

conio.h>

IsPrime(intn)

{inti,m;

m=1;

for(i=2;

i<

n;

i++)

if(n%i)

{m=0;

break;

return(m);

main()

{intj,k;

printf(“\nPleaseenteranintegernumberbetween2and10000:

”);

scanf(“%d”,&

k);

printf(“%d”,k);

for(j=2;

j<

=k;

j++)

if((!

(k%j))&

(IsPrime(j)))printf(“\n%4d”,kj);

printf(“\n”);

2.下列程序中,函数fun的功能:

逐个比较a、b两个字符串对应位置中的字符,把ASCII码值或大或相等的字符依次存放到c数组中,形成一个新的字符串。

string.h>

voidfun(char*p,char*q,char*c,)

{intk=1;

while(*p!

=*q)

{if(*p<

*q)c[k]=*q;

elsec[k]=*p;

if(*p)p++;

if(*q)q++;

k++;

{chara[10]=“aBCDeFgH”,b[10]=“ABcd”,c[50]={‘\0’};

fun(a,b,c);

printf(“Theresultstringcis:

puts(c);

3.下列程序中,函数fun的功能:

找出100至n(不大于1000)之间三位数字相等的所有整数,把这些整数放在s所指数组中,个数作为函数值返回。

#defineN100

intfun(int*s,intn)

{inti,j,k,a,b,c;

j=0;

for(i=100;

n;

i++)

{k=n;

a=k%10;

k/=10;

b=k%10;

c=k/10;

if(a==b&

a==c)s[j++]=i;

returnj;

{inta[N],n,num=0,i;

do{printf(“\nPleaseentern(<

1000):

n);

while(n>

1000);

num=fun(a,n);

printf(“\nTheresult:

\n”);

for(i=0;

num;

i++)printf(“%5d”,a[i]);

4.下列程序中,函数fun的功能:

根据形参m的值(2≤m≤9),在m行m列的二维数组中存放如下所示的数据,由main()函数输出。

#defineM100

inta[M][M]={0};

fun(int**a,intm)

{inti,k;

for(j=0;

m;

j++)

for(k=100;

k<

k++)

a[j][k]=k*j;

main()

{inti,j,n;

printf(“\nPleaseentern:

fun(a,n);

for(j=100;

printf(“%5d”,a[i][j]);

三、填空题(每空2分,共10分)

1.阅读下面程序,则程序的执行结果为_____________【1】。

#include“stdio.h”

fun(intk,int*p)

{inta,b;

if(k==1||k==2)*p=1;

else{fun(k-1,&

a);

fun(k-2,&

b);

*p=a+b;

{intx;

fun(6,&

x);

printf(“%d\n”,x);

2.以下函数的功能是删除字符串s中的所有数字字符。

请填空。

voiddelete(char*s)

{intn=0,i;

for(i=0;

s[i];

if(!

(isdigit(s[i])))

______________【2】

s[n]=_________【3】;

3.设有以下定义

structlink

{intdata;

structlink*next;

}a,b,c,*q,*p;

且已建立如下图所示链表结构:

能够将c插入到结点a和b之间,形成新链表的语句组是:

_____________________【4】_____________________【5】。

 

四、编程题(50分)

1.填数字游戏。

在n×

n的奇数方阵中填写1~n2个数字。

要求每行每列及对角线上的数字之和均相等。

(15分)

2.编写一个用矩形法求定积分的通用函数,分别求、、。

(说明:

sin、cos、exp已在系统的数学函数库中)。

15分)

3.已知两个整数集合A和B,它们的元素分别依元素值递增有序存放在两个单链表HA和HB中,编写一个函数求出两个集合的并集C,并要求表示集合C的链表结点仍依元素值递增有序存放。

(20分)

五、附加题

决策系统(100分)

题目描述:

一个智能决策系统可以由规则库和事实库两部分组成,假定规则库的形式为:

 

RiC1&

C2&

…&

Cn->

A表示在条件C1,C2,…和Cn都满足的前提下,结论A成立(即采取行动A);

Ri表示这是规则库中的第i条规则。

事实库则由若干为真的条件(即命题)所组成。

对一个新的待验证的命题Q,可使用数据驱动或目标驱动两种推理方式之一,来确认它是

否可由某规则库和事实库推出:

1)数据驱动的推理是指从事实库开始,每次试图发现规则库中某条能满足所有条件的

规则,并将其结论作为新的事实加入事实库,然后重复此过程,直至发现Q是一个事实或

没有任何新的事实可被发现;

2)目标驱动的推理是指从目标

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1