wordpptexecl.docx

上传人:b****5 文档编号:8024258 上传时间:2023-01-28 格式:DOCX 页数:19 大小:32.20KB
下载 相关 举报
wordpptexecl.docx_第1页
第1页 / 共19页
wordpptexecl.docx_第2页
第2页 / 共19页
wordpptexecl.docx_第3页
第3页 / 共19页
wordpptexecl.docx_第4页
第4页 / 共19页
wordpptexecl.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

wordpptexecl.docx

《wordpptexecl.docx》由会员分享,可在线阅读,更多相关《wordpptexecl.docx(19页珍藏版)》请在冰豆网上搜索。

wordpptexecl.docx

wordpptexecl

一、程序阅读题

1.执行如图所示的流程图,如果输入的N,a1,a2,....,aN的值分别为10,10,20,30,80,70,60,50,90,10,90,则输出A+B的值为【1】。

2.若从键盘输入58,则下面程序执行后的输出结果是【2】。

#include

intmain()

{

inta;

scanf("%d",&a);

if(a>50)printf("%d",a);

if(a>40)printf("%d",a);

if(a>30)printf("%d",a);

return0;

}

3.下面程序执行后的输出结果是【3】。

#include

intmain()

{

inta=16,b=18,m=0;

switch(a%2)

{

case0:

m++;

case1:

m++;

switch(b%3)

{

case0:

m++;

case1:

m++;break;

default:

m++;

}

}

printf("%d\n",m);

return0;

}

4.下面程序执行后的输出结果是【4】。

#include

intmain()

{

intn[2],i,j,k;

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

n[i]=0;

k=2;

for(i=0;i

for(j=0;j

n[j]=n[j]+1;

printf("%d%d\n",n[0],n[1]);

return0;

}

5.有如下定义和赋值,chars[20]="upc\0718c++\0\ncpu";,则执行strlen(s)求出的字符串长度为【5】。

6.下面程序执行后的输出结果是【6】。

#include

voidswap(char*x,char*y)

{

chart;

t=*x;

*x=*y;

*y=t;

}

intmain()

{

chars1[]="abc",s2[]="123";

swap(s1,s2);

printf("%s,%s\n",s1,s2);

return0;

}

7.下面程序执行后的输出结果是【7】。

#include

intfun(intx[],intn)

{

staticintsum=0,i;

for(i=0;i

returnsum;

}

intmain()

{

inta[]={1,2,3,4,5},b[]={6,7,8,9},s=0;

s=fun(a,5)+fun(b,4);

printf("%d\n",s);

return0;

}

8.下面的程序中函数fun的功能是:

在带有头结点的单向链表中,查找数据域中值为ch的结点。

找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。

请在相应的位置填上适当的代码。

#include

#include

#defineN8

typedefstructlist

{

intdata;

structlist*next;

}SLIST;

SLIST*creatlist(char*);

voidoutlist(SLIST*);

intfun(SLIST*h,charch)

{

SLIST*p;intn=0;

p=h->next;

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

while(【8】)

{n++;

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

if(p->data==ch)return【9】;

elsep=p->next;

}

return0;

}

intmain()

{

SLIST*head;intk;charch;

chara[N]={'m','p','g','a','w','x','r','d'};

head=creatlist(a);

outlist(head);

printf("Enteraletter:

");

scanf("%c",&ch);

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

k=fun(【10】);

if(k==0)printf("\nNotfound!

\n");

elseprintf("Thesequencenumberis:

%d\n",k);

return0;

}

SLIST*creatlist(char*a)

{

SLIST*h,*p,*q;inti;

h=p=(SLIST*)malloc(sizeof(SLIST));

for(i=0;i

{q=(SLIST*)malloc(sizeof(SLIST));

q->data=a[i];p->next=q;p=q;

}

p->next=0;

returnh;

}

voidoutlist(SLIST*h)

{

SLIST*p;

p=h->next;

if(p==NULL)printf("\nThelistisNULL!

\n");

else

{printf("\nHead");

do

{printf("->%c",p->data);

p=p->next;

}while(p!

=NULL);

printf("->End\n");

}

}

二、程序改错题(请修改并且只能修改/************found************/的下一行)

1.给定程序中,函数fun的功能是:

计算正整数num的各位上的数字之积,例如,若输入:

252,则输出应该是:

20。

若输入:

202,则输出应该是:

0。

#include

intfun(intnum)

{

/************found************【1】/

intk;

do

{k*=num%10;

/************found************【2】/

num\=10;

}while(num);

return(k);

}

intmain()

{

intn;

printf("Pleaseenteranumber:

");

/************found************【3】/

scanf("%d",n);

printf("\n%d\n",fun(n));

return0;

}

2.给定程序中函数fun的功能是:

将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。

例如,当s所指字符串为:

"ABCD"时,则t所指字符串中的内容应为:

"ABCDDCBA"。

#include

#include

/************found************【4】/

voidfun(chars,chart)

{

inti,d;

d=strlen(s);

for(i=0;i

t[i]=s[i];

for(i=0;i

/************found************【5】/

t[d+i]=s[d-i];

/************found************【6】/

t[2*d-1]='\0';

}

intmain()

{

chars[100],t[100];

printf("\nPleaseenterstringS:

");

scanf("%s",s);

fun(s,t);

printf("\nTheresultis:

%s\n",t);

return0;

}

3.给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。

#include

voidfun(char*s,inta,doublef)

{

FILE*fp;

charch;

fp=fopen("file1.txt","w");

fprintf(fp,"%s%d%f\n",s,a,f);

fclose(fp);

/**********found**********【7】/

fp=fopen("file1.txt","w");

while(!

feof(fp))

{

fscanf(fp,"%c",&ch);

putchar(ch);

}

/**********found**********【8】/

free(fp);

}

intmain()

{

chara[10]="Hello!

";

intb=12345;

doublec=98.76;

fun(a,b,c);

return0;

}

4.给定程序中函数fun的功能是:

从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。

例如,当s中的数为:

7654321是,t中的数为7531。

#include

/************found************【9】/

voidfun(ints,intt)

{

intsl=10;

*t=s%10;

while(s>0)

{s=s/100;

*t=s%10*sl+*t;

/************found************【10】/

sl=sl*100;

}

}

intmain()

{

ints,t;

printf("\nPleaseenters:

");

scanf("%d",&s);

fun(s,&t);

printf("Theresultis:

%d\n",t);

return0;

}

三、程序设计题(每题10分,共60分)

1.在黄岛校园里,没有自行车上课办事会很不方便。

但实际上,并非去办任何事情都是骑车快。

因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。

假设找到自行车,开锁并骑上自行车的时间为27秒,停车锁车的时间为33秒;步行每秒行走1.2米,骑车每秒行走3.0米。

请判断走不同的距离去办事,是骑车快还是走路快。

输入

一个整数,表示一次办事要行走的距离,单位为米。

输出

如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All"。

样例输入

50

样例输出

Walk

2.今年以来校内的讲座很多,如果是励志类的,逸夫楼学术报告厅会爆满;其他讲座,如果采取自愿听的话,估计没有多少学生去。

为了保证上座率,某辅导员每次都让学生在编号从1到30当中抓阄,凡是抓到的编号末尾数字为1、3、5的学生就要去听讲座。

现给出部分学生的抓到编号,请依次判断每个学生是否参加了听讲座?

输入

输入有多行,第一行是一个整数n(n≤30),表示评教学生的个数。

接下来n行每行一个整数,表示学生抓到的编号。

输出

输出有n行,每行为对应学生是否参加了听讲座,如果参加了,输出“YES”,否则输出“NO”。

样例输入

3

26

14

3

样例输出

NO

NO

YES

提示:

输出的YES和NO必须都是大写形式。

3.在表格内填写日期时常按yyyy-mm-dd格式输入(yyyy、mm、dd均为整数,且1900≤yyyy≤2099),请根据年份,编写fun函数,验证输入的日期是否是有效日期。

输入

第一行为数字n,余下n行每行为一个yyyy-mm-dd格式的字符串。

输出

输出为n行,对应每行日期,如果日期为有效日期,输出VALID,否则输出INVALID。

样例输入

2

1995-02-29

2036-06-24

样例输出

INVALID

VALID

提示请勿改动主函数main和其它函数中的任何内容,仅完成fun函数的编写。

#include

intLoop(intyear)//此函数功能为判断year是否为闰年

{

if((year%4==0&&year%100!

=0)||(year%400==0))

return1;

else

return0;

}

//在此处编写函数fun

intmain()

{

intyyyy,mm,dd,flag;

scanf("%d-%d-%d",&yyyy,&mm,&dd);

flag=fun(yyyy,mm,dd);

if(flag)

{

printf("VALID\n");

}

else

{

printf("INVALID\n");

}

return0;

}

4.输入一个长度不超过100的字符串,删除串中的重复字符。

输入

输入要检查的字符串,长度不超过100个字符。

输出

按照原来的顺序输出删除重复字符后的字符串。

样例输入

abacaeedabcdcd

样例输出

abced

提示请勿改动主函数main和其它函数中的任何内容,仅完成fun函数的编写。

#include

//请在此处完成fun函数的编写

intmain()

{

chars[100];

gets(s);

fun(s);

puts(s);

return0;

}

5.学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:

把分数低于平均分的学生数据放在b所指的数组中,函数返回低于平均分的学生人数。

提示请勿改动主函数main和其它函数中的任何内容,仅完成fun函数的编写。

#include

#defineN16

typedefstruct

{

charnum[10];//存放学号

intscore;//存放成绩

}STREC;

//请在此位置完成fun函数编写

intmain()

{

STRECs[N]={{"GA05",85},{"GA03",76},{"GA02",69},{"GA04",85},

{"GA01",91},{"GA07",72},{"GA08",64},{"GA06",87},

{"GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},

{"GA011",91},{"GA017",64},{"GA018",64},{"GA016",72}

};

STRECh[N];

inti,n;

n=fun(s,h);

for(i=0;i

printf("%s%4d\n",h[i].num,h[i].score);

return0;

}

6.将数字1~9分成3个三位数,要求第2个三位数是第1个三位数的两倍,第3个三位数是第1个的三倍。

即假定m为第1个三位数,则第2个恰好为2*m,第3个为3*m,请输出这几个三位数。

输入

第一个三位数的百位数

输出

满足题目条件的所有三位数

得分

一、程序阅读题

1.100

2.585858

3.4

4.22

5.8

6.1bc,a23

7.60

8.p或p!

=0或p!

=NULL

9.n

10.head,ch

 

得分

二、程序改错题

 

1.intk=1;

2.num/=10;

3.scanf("%d",&n);

4.voidfun(char*s,char*t)

5.t[d+i]=s[d-i-1];

6.t[2*d]='\0';

7.fp=fopen("file1.txt","r");

8.fclose(fp);

9.voidfun(ints,int*t)

10.sl=sl*10;

 

得分

三、程序设计题

1.

#include

intmain()

{

inti,n,m[31],a;

scanf("%d",&n);

for(i=0;i

scanf("%d",&m[i]);

for(i=0;i

{

a=m[i]%10;

if(a==1||a==3||a==5)

printf("YES\n");

else

printf("NO\n");

}

return0;

}

2.

#include

intmain()

{

doubledistance,time1,time2;

scanf(“%lf”,&distance);

time1=27+33+distance/1.2;

time2=distance/3.0;

if(time1

printf(“Bike\n”);

elseif(time1>time2)

printf(“Walk\n”);

else

printf(“All\n”);

return0;

}

3.4.

intfun(inty,intm,intd)

{

intflag=0;

if(y<1900||y>2099||m<1||m>12||d<0||d>31)

return0;

else

{

switch(m)

{

case1:

case3:

case5:

case7:

case8:

case10:

case12:

if(d>=1&&d<=31)

flag=1;

break;

case2:

if(Loop(y)==0&&d<=1&&d>=28)

flag=1;

elseif(Loop(y)&&d<=1&&d>=29)

flag=1;

break;

default:

if(d<=1&&d>=30)

flag=1;

}

}

if(flag)

return1;

elsereturn0;

}

include

voidfun(chars1[100])

{

chars2[100]={0};

inti,j;

s2[0]=s1[0];

for(j=1;s1[j]!

=0;j++)

{

for(i=0;s2[i]!

=0;i++)

if(s1[j]==s2[i])

break;

if(s2[i]==0)

s2[i]=s1[j];

}

strcpy(s1,s2);

}

intfun(STRECs[N],STRECh[N])

{

inti,j;

doubleave=0;

for(i=0;i

ave+=s[i].score;

ave/=N;

for(i=0,j=0;i

if(s[i].score

{

h[j]=s[i];

j++;

}

returnj;

}

5.6.

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

当前位置:首页 > 经管营销 > 公共行政管理

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

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