改错题.docx
- 文档编号:8671589
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:18
- 大小:19.80KB
改错题.docx
《改错题.docx》由会员分享,可在线阅读,更多相关《改错题.docx(18页珍藏版)》请在冰豆网上搜索。
改错题
1、程序kk.c中有两个错误,请改正。
程序的功能是调用函数add实现两个整型数的加法。
#include
voidadd(intx,inty)
{
intz;
z=x+y;
returnz;
}
intmain()
{
intadd(x,y);
inta,b,c;
scanf("%d%d",&a,&b);
c=add(a,b);
printf("%d+%d=%d\n",a,b,c);
}
(1)intadd(intx,inty)
(2)intadd(intx,inty);或intadd(int,int);
2程序中有两个错误,请改正。
程序的功能猜数游戏,程序运行时产生一个随机数,此随机数与你从键盘输入的整数进行比较,然后给出相应的提示。
#include
#include
intmain()
{
intx,y,max;
srand((int)time(0));
x=1+(int)(100*rand()/(RAND_MAX+1.0));
scanf("%d",y);
if(x>y)
printf(“你输入的数太小了\n”);
elseif(x printf(“你输入的数太大了\n”); else printf(“你输入的数刚好\n”); return0; } (1)x=1+(int)(100.0*rand()/(RAND_MAX+1.0)); (2)scanf("%d",&y); 3 程序kk.c中有两个错误,请改正。 程序的功能是计算一个有10*10大棋盘中棋子的数量,存放棋子的规则是,第1个盘中棋子数为1个,以后的盘中比前一个盘中多一个棋子,程序编制如下。 #include intmain() { inti,sum; for(i=1,i<=100,i++) sum=sum+i; printf("从1加到100的和为%d。 \n",sum); return0; } sum=0; i=1;i<=100;i++ 4程序15_2_1.c中有两个错误,请改正。 程序的功能是输入一个整数,然后根据函数time产生一个随机数s,然后在switch语句中程序中产生2、3、4、5的4个随机分支,根据各分支的情况分别计算与输出x的值。 #include #include intmain() { intx,s; scanf("%d",&x); srand((int)time()); s=rand()%4; switch(s) { case4: x=x*2; case2: printf("%d",x);break; case3: x=x+2; case5: printf("%d",x*x);break; } return0; } time(0) switch(s+2) 5程序kk.c中有两个错误,请改正。 程序的功能是计算11/2+21/2+31/2+41/2+…+1001/2的值。 #include #include intmain() { inti,sum; double,sum; for(i=1;i<=100;i++) sum=sum+sqrt(i); printf("计算11/2+21/2+31/2+41/2+…+1001/2的和为%d\n",sum); return0; } inti; doublesum=0; 6程序中有两个错误,请改正。 程序的功能是模拟判断题的自动判题系统,共有20道题,考生可以输入字符‘T’或‘t’表示正确论述,输入字符‘F’或‘f’表示错误论述,输入一题答案按回车一次。 程序中用scanf输入表示考生的答案,参考答案在程序的数组Answer中已给出,1表示正确的论述,0表示错误的论述。 #include intAnswer[20]={1,0,1,1,0,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0}; intmain() { inti,right=0; charanswer[20]; for(i=0;i<20;i++) { printf("%d: 题目论述.....请你判断: ",i+1); scanf("%c%c",&answer[i]); printf("你的选择是: %c\n",answer[i]); if((answer[i]=='t'||answer[i]=='T')&&(Answer[i]==1)) right++; } if(right>=12) printf("恭喜你,"); else printf("你还需努力,"); printf("你总共得%d分\n",right); } 1.scanf("%c",&answer[i]); 2.添加: if((answer[i]=='f'||answer[i]=='F')&&(Answer[i]==0)) right++; 7 程序kk.c中有两个错误,请改正。 程序的功能是从键盘输入字符存入文件kk.txt中,直到读入字符‘#’结束,然后把文件中所有的内容输出在屏幕上。 #include #include intmain() { FILE*fp; charch; if((fp=fopen("kk.txt","w"))==NULL) {printf("cannotopenthisfile\n"); exit(0); } while(ch=getchar()! ='#') fputc(ch,fp); rewind(fp); while(! feof(fp)){ ch=fgetc(fp); putchar(ch); } fclose(fp); return0; } if((fp=fopen("kk.txt","r+"))==NULL) while((ch=getchar())! ='#') 8、程序12_2_1.c中有两个错误,请改正。 程序的功能是输入两个整数给a、b,通过函数swap交换a、b两个数,并在主函数中输出。 #include voidswap(int*x,int*y) { int*temp; temp=*x; *x=*y; *y=temp; } intmain() { inta,b; scanf("%d,%d",&a,&b); swap(a,b); printf("%d,%d\n",a,b); return0; } swap(&a,&b); inttemp; 9程序10_2.1.txt中有两个错误,请改正。 程序的功能是模拟打印某职工的图像,从数据库中读出两张图像,并测定图像的大小,根据界面的选定决定是高清晰打印还是一般的图像打印,高清晰打印是指打印图像像素大的图像。 设图像的像素大小为x、y;如界面选定用flag表示,flag为1,表示高清晰打印,flag为0,表示一般的图像打印。 x、y、flag的值用键盘输入进行模拟,打印的时间长短用函数sleep进行模拟,如sleep(5)打印需时间为5s,sleep函数在stdio.h库中,它的参数用像素值表示。 #include intmain() { intx,y,time,flag; scanf("%d%d",x,y); scanf("%d",&flag); if(x>y&&flag) time=x; else time=y; printf("正在打印中…请等待time=%dS\n",time); Sleep(time); return0; } scanf("%d%d",&x,&y); sleep(time); 10程序kk.c中有两个错误,请改正。 程序的功能是调用函数add实现对两个整型数的和求其平方根。 #include doubleadd(intx,inty) { doublez; z=sqrt(x+y); returnz; } intmain() { doubleadd(x,y); inta,b;doublec; scanf("%d%d",&a,&b); c=add(a,b); printf("sqrt(%d+%d)=%lf\n",a,b,c); } inta,b; doublec; doubleadd(int,int); 11程序中有两个错误,请改正。 程序的功能是对一个模拟网页进行翻页,每一屏有两页,总共有168页,用键盘输入1、2分别代表上翻与下翻,如果已到第1页时上翻键失效,到最后一页时下翻键失效,翻到任一页都有提示。 #include intmain() { intpage=1,x; while(0) { printf("目前处在第%d~%d页\n",page,page+1); scanf("%d",&x); if(x==1) if(page>2) page=page-2; else printf("目前已到第一页\n"); elseif(x==2) if(page<168) page=page+2; else printf("目前已到最后一页\n"); else ; } return0; } (1)while (1) (2)if(page<166) (3)gcc-okkkk.c 12 程序中有两个错误,请改正。 程序的功能是模拟汽车驾驶情况,汽车控制分: 启动、离合器操作、油门操作、换档位、刹车操作,分别用变量start、clutch、accelerator、shift、brakes表示,clutch、accelerator、shift、brakes的值为1表示放下离合器、加大油门、换档位、踩刹车等操作,clutch、accelerator、shift、brakes值为0表示、收起离合器、释放油门、不换档位、释放刹车等操作,start为1为启动、为0正常行驶,-1时要刹车。 在实际驾驶中刹车不能踩油门、换档要收起离合器。 #include intmain() { intstart=1,clutch=1,accelerator=0,shift=0,brakes=0; scanf("%d",&start); if(start==1) { accelerator=1; clutch=0; } elseif(start==0) { accelerator=0; clutch=1; } else { accelerator=0; brakes=1; } printf("目前汽车处于%s状态,请%s\n",(accelerator==1? "加速或正常行驶": "刹车"),(brakes==1? "松开油门、踩刹车": "别踩刹车")); return0; } (1)在if(start==1)中修改clutch=1; (2)在elseif(start==0)修改accelerator=1; (3)gcc-okkkk.c 13程序中有两个错误,请改正。 程序的功能模仿电梯的运行状态,杭州新亚科技大楼是9层的一座大楼,假设电梯芯片控制板中有一个4位的存储器,程序中用一个字符数组进行模拟,第0、1个字符分别表示电梯的当前状态(即当前电梯运行的位置及电梯中已按下将要前往的位置),第2、3个字符分别表示电梯外的人员当前位置及要前往的位置,程序的输出是电梯外的人还要等待多少层运行后电梯来到他的前面。 #include intmain() { chars[4]={'5','0'}; intn,flag1,flag2; while(0) { printf("当前电梯的位置是%c层,前往%c楼\n",s[0],s[1]); flag1=s[1]-s[0]; printf("请输入您当前的位置与前往的位置: "); scanf("%c%c%c",&s[2],&s[3]); printf("您现在的位置是%c层,前往%c楼\n",s[2],s[3]); flag2=s[3]-s[2]; if(s[2]>s[0]) if(flag1>0) n=2*s[1]-s[0]-s[2]; elseif(flag1<0) n=s[0]-s[1]-s[1]+s[2]; else if(flag1>0) n=s[1]-s[0]+s[1]-s[2]; elseif(flag1<0) n=s[0]-s[2]; printf("请您等待%d层\n",n); s[0]=s[2]; s[1]=s[3]; } return0; } (1)while (1) (2)n=s[2]-s[0]; 14程序kk.c中有两个错误,请改正。 程序的功能是从键盘输入的正整数,把正整数各个位的平方根相加 #include intmain() { intnum,digit; doublesum=0; printf("inputanumber\n"); scanf("%d",&num); for(;num==0;num=num/10) { digit=num%10; sum=sum+sqrt(digit); } printf("sum=%lf\n",sum); return0; } num! =0 #include 15 程序17_2_1.c中有两个错误或者说有一个错误及一个不合适的算法,请改正。 程序的功能是输入两个双精度数,并判断这两个数是否相等。 #include #include intmain() { doublex,y; scanf("%lf%lf",x,y); if(x==y) printf(“y=x\n”); else printf(“y! =x\n”); return0; } scanf("%d%d",&x,&y); if(abs(x-y)<0.00001) 16程序中有两个错误,请改正。 程序的功能猜数游戏,程序运行时产生一个随机数,此随机数与你从键盘输入的整数进行比较,然后给出相应的提示。 #include #include intmain() { intx,y,max; srand((int)time(0)); x=1+(int)(100*rand()/(RAND_MAX+1.0)); scanf("%d",y); if(x>y) printf(“你输入的数太小了\n”); elseif(x printf(“你输入的数太大了\n”); else printf(“你输入的数刚好\n”); return0; } (1)x=1+(int)(100.0*rand()/(RAND_MAX+1.0)); (2)scanf("%d",&y); 17程序kk.c中有两个错误,请改正。 程序的功能是,定义一个整型数组a,数组元素个数n及数组元素从键盘输入,对输入的元素从大到小进行排序,最后输出排序后的数组。 #include #defineSIZE100 intmain() { inta[SIZE],i,j,n,temp; printf("请输入数组元素的个数\n"); scanf("%d",&n); printf("请输入数组元素\n"); for(i=0;i scanf("%d",a[i]);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 改错