改错题_如何改错题
改错题由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“如何改错题”。
程序改错
==== 题号:20301 /*----------------【程序改错】
--------------------------
给定程序的功能是:从键盘上接收一字符串到a字符数组中,在cpy函数中将a数组中字符AscII值为偶数的复制到b数组,并在主函数中输出b数组。例如输入“aabcde”则输出“bd”。
请改正**********ERROR**********下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
----------------*/ #include #include void cpy(char *p1,char *p2){
while(*p1)
{if(*p1%2==0)/**********ERROR**********/
p2++=*p1;p2前缺少*号
p1++;
}
/**********ERROR**********/
*p2=“ ”;*p2=’ ’ } void main(){char a[30],b[30];gets(a);/**********ERROR**********/ cpy(a,b)缺少分号
printf(“%sn”,b);}
程序改错
==== 题号:20343 /*---------------------------【程序改错】
---------------------------
给定程序的功能是:分别统计字符串中大写字母和小写字母的个数。
例如,输入字符串:AaaaBBbl23CCccccd,则输出结果应为:upper=5,lower=9。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
---------*/ #include #include #include void main(){
char s[100];
char *q;
int upper=0;/**********ERROR**********/
int lower=100;int lower=0;
printf(“nPlease a string: ”);
gets(s);
q=s;/**********ERROR**********/
while(*q==' ')while(*q!=' ')
{
if(*q>='A' && *q
upper++;
if(*q>='a' && *q
lower++;/**********ERROR**********/
q--;q--;
}
printf(“n upper=%d lower=%dn”, upper,lower);}
程序改错
==== 题号:20453 /*---------------------------【程序改错】
---------------------------
给定的程序功能为:从键盘输入十个无序数据存入数组中,并找出其中数值最大的元素的下标。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
---------*/ #include main(){ int a[10];int i,j;
/**********ERROR**********/
for(i=0;i
/**********ERROR**********/ scanf(%d,&a[i]);scanf(“%d”,&a[i]);
for(i=0,j=0;i
/**********ERROR**********/
if(a[i]>a[j])j==i;j=i;printf(“n%d”,j);}
程序改错
==== 题号:20331 /*---------------------------
【程序改错】
---------------------------
给定程序的功能是:将字符串s1中的ASCII码为奇数且下标也为奇数的字符复制到字符数组s2中。
如:输入bcdefg输出结果为ceg。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。------------------*/ #include main(){
char s1[80],s2[40];
int i=0,j=0,k=0;
printf(“please input string1:n”);
/**********ERROR**********/
getchar(s1);gets(s1);
printf(“n”);
/**********ERROR**********/
while(s1[i]==' ')while(s1[i]!=' ')
{
if(s1[i]%2==1 && k%2==1)
{
s2[j]=s1[i];
i++;
j++;
k++;
}
else
{
i++;
k++;
} /**********ERROR**********/
s2[j]=' 's2[j]=' ';
} printf(“%sn”,s2);}
程序改错
==== 题号:20325 /*--------------【程序改错】
-----------------------------
程序中函数fun的功能是:根据整型形参m,计算如下公式的值:y=1+1/2!+1/3!+1/4!+...+1/m!例如:若m=6,则应输出:1.718056。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
------------*/ #include “stdio.h” double fun(int m){ double y=0, t=1;int i;/**********ERROR**********/ for(i=2;i
{ t=t*1.0/i;/**********ERROR**********/ y=t;y+=t;} return(y);} void main(){ int n;printf(“Enter n: ”);/**********ERROR**********/ printf(“%d”, &n);printf(“nThe result is %lfn”, fun(n));}
程序改错
==== 题号:20325 /*--------------【程序改错】
-----------------------------
程序中函数fun的功能是:根据整型形参m,计算如下公式的值:y=1+1/2!+1/3!+1/4!+...+1/m!例如:若m=6,则应输出:1.718056。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
------------*/ #include “stdio.h” double fun(int m){ double y=0, t=1;int i;/**********ERROR**********/ for(i=2;i
程序改错
==== 题号:20331 /*---------------------------
【程序改错】
---------------------------
给定程序的功能是:将字符串s1中的ASCII码为奇数且下标也为奇数的字符复制到字符数组s2中。
如:输入bcdefg输出结果为ceg。
请改正****ERROR****下一行语句中的错误,并调试出正确结果。不得增加或删减程序行,且不得修改其它行。
------------------*/ #include main(){
char s1[80],s2[40];
int i=0,j=0,k=0;
printf(“please input string1:n”);
/**********ERROR**********/
getchar(s1);gets(s1);
printf(“n”);
/**********ERROR**********/
while(s1[i]==' ')while(s1[i]!=' ')
{
if(s1[i]%2==1 && k%2==1)
{
s2[j]=s1[i];
i++;
j++;
k++;
}
else
{
i++;
k++;
} /**********ERROR**********/
s2[j]=' 's2[j]=' ';
} printf(“%sn”,s2);}