wordpptexecl.docx
- 文档编号:8024258
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:19
- 大小:32.20KB
wordpptexecl.docx
《wordpptexecl.docx》由会员分享,可在线阅读,更多相关《wordpptexecl.docx(19页珍藏版)》请在冰豆网上搜索。
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.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- word ppt execl