考试一观 程序改错文档格式.docx
《考试一观 程序改错文档格式.docx》由会员分享,可在线阅读,更多相关《考试一观 程序改错文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
{
k*=num%10;
num\=10;
}while(num);
returnk;
}
main()
longn;
printf("
\nPleaseenteranumber:
"
);
scanf("
%ld"
n);
\n%ld\n"
fun(longn));
答案:
位置1:
longk=1;
位置2:
num/=10;
【或】num=num/10;
位置3:
scanf("
&
n);
位置4:
printf("
fun(n));
实验三
在一个已按升序排列的数组中插入一个数,插入后,数
组元素仍按升序排列。
#defineN11
inti,number,a[N]={1,2,4,6,8,9,12,15,149,156};
pleaseenteranintegertoinsertinthearray:
\n"
/**********ERROR**********/
%d"
number)
Theoriginalarray:
for(i=0;
i<
N-1;
i++)
%5d"
a[i]);
for(i=N-1;
i>
=0;
i--)
if(number<
=a[i])
a[i]=a[i-1];
else
a[i+1]=number;
exit;
}
a[0])a[0]=number;
Theresultarray:
N;
number);
for(i=N-2;
i--)【或】for(i=N-2;
0<
=i;
a[i+1]=a[i];
【或】a[1+i]=a[i];
break;
综合一
题目:
假定输入的字符串中只包含字母和*号。
编写程序只删除字符串的前面*号。
例如,******ACF*F*G****,删除后,字符串中的字符为ACF*F*G****
程序中共有3条错误语句,请改正错误。
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
#include<
string.h>
voidfun(chara[]);
{chara[80];
gets(a);
fun(a);
puts(a);
voidfun(chara[])
/**********ERROR**********/
inti=0,j;
while(a[i]!
='
*'
)i++;
while(a[i]=='
\0'
)a[j++]=a[i++];
a[j]='
;
inti=0,j=0;
while(a[i]=='
while(a[i])a[j++]=a[i++];
【或】while(a[i]!
=0)a[j++]=a[i++];
编程序求一维数组中的最大和最小的元素值.
#defineN10
intmax;
/***********ERROR***********/
intmaxmin(intarr[],n)
inti,min;
/***********ERROR***********/
max=min=0;
for(i=1;
n;
if(arr[i]<
max)max=arr[i];
min)min=arr[i];
returnmin;
main()
{
intarray[N]={10,7,19,29,4,0,7,35,-16,21},min;
min=maxmin(intarray,intN);
max=%d,min=%d"
max,min);
intmaxmin(intarr[],intn)【或】maxmin(intarr[],intn)
max=min=arr[0];
【或】max=arr[0],min=arr[0];
【或】max=arr[0];
min=arr[0];
if(arr[i]>
【或】if(max<
arr[i])max=arr[i];
min=maxmin(array,N);
综合二
用下面的和式求圆周率的近似值。
直到最后一项的绝对值
小于等于0.0001。
π111
-=1--+---+...
4357
#include"
stdio.h"
math.h"
fun()
inti=1;
ints=0,t=1,p=1;
while(fabs(t)<
=1e-4)
s=s+t;
p=-p;
i=i+2;
t=p/i;
pi=%d\n"
s*4);
fun();
floats=0,t=1,p=1;
【或】floats=0,p=1,t=1;
【或】floatp=1,s=0,t=1;
【或】floatp=1,t=1,s=0;
【或】floatt=1,p=1,s=0;
【或】floatt=1,s=0,p=1;
while(fabs(t)>
1e-4)【或】while(0.0001<
fabs(t))【或】while(1e-4<
fabs(t))【或】while(fabs(t)>
0.0001)
pi=%f\n"
定义一个4×
4的二维数组a,数组元素的值由键盘输入,
输出主对角线元素的最大值。
如:
输入2357
6673
3757
1357
输出:
主对角线元素的最大值是7
#defineN4
intfun(inta[N][N])
{inti,max;
max==a[0][0];
/**********ERROR**********/
if(a[i][i]<
max)
max=a[i][i];
returnmax;
main()
{inta[N][N],i,j;
printf(