计算机二级上机考试(程序改错题)1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1
1、第一大类(交换类)共7道
/**found**/
t=*x; *x=y;
/**found**/
return(t);
2. 程序修改(第60套)
void fun(int *a,int *b)
/**found**/
t=*b;*b=*a;*a=t;
2.程序修改(第88套)
/**found**/
void fun(int *x, int *y)
/**found**/
t=*x,*x=*y,*y=t;
2、第二大类(计算类)共22道
2.程序修改(第1套)
求岀以下分数序列的前n 项之
和。
2/1+3/2+5/3+8/5+13/8+21/1
3+……和值通过函数值返回
main函数。
例如n=5,则应输
出:。
/**foun d**/
double fun (i nt n)
/**foun d**/
s=s+(double)a/b;
2.程序修改(第6套)
给定程序中函数
fun的功能是:
用递归算法计算列中第n 项的
值。
从第一项起,斐波拉
契数列为:1、1、2、3、5、8、
13、21、/**found**/ switch(g)
/**found**/
case 1:case 2:return 1;
2.程序修改(第13套)
long s=0,t=0;
t=t/10;
2.程序修改(第21套)
double f(double x)
/**found**/ return s;
2.程序修改(第27套)
/**found**/
double fun(double a,double
x0)
/**found**/
if(fabs(x1-x0)> 2程序修改(第29
套)
/**found**/
#define FU(m,n) (m)/(n)
return (value);
2.程序修改(第33套)
/**found**/
for (i =2 ; i<= m; i++)
/**found**/
y+=1.0/ ( i* i);
2.程序修改(第37套)
/**found**/
while((fabs(t))>=num)
/**found**/
t=s/n
2.程序修改(第45套)
/**found**/
/**found**/
t+=i;
2
/**found**/
result *=n__;
2.程序修改(第
48套)
/**found**/
for (i =2 ; i<= m; i++)
/**found**/
y+=1.0/ ( i* i);
s=s +(double)(n+1)/n;
/**found**/
return t;
2.程序修改(第52套)
/**found**/
int fun(int n)
/**found**/
if(n==1) 2.程序修改(第58套)
给定程序中函数fun的功能
是:求K! <k<13>,所求阶乘
的值作为函数值返回。
例如,
若K=10,则应输出3628800。
/**found**/
if(k>1)
/**found**/
else if(k= =0) 2.程序修改(第63
套)
给定程序中函数fun的功能是:
计算整数n的阶乘。
/**found**/
result *=n__;
/**found**/
return result;
2.程序修改(第65套)
给定程序中,函数fun的功能
是:根据形参m,计算下列公
式的值:t=1+1/2+1/3+1/4+ …
+1/m例如,若输入5,则应输
岀
/**found**/
double fun(int m)
/**found**/
for(i=100;i<=m;i+=100) 2.程序修
改(第78套)
/**found**/
float fun(int n)
/**found**/
for(i=2;i<=n;i++)
2.程序修改(第85套)
/**found**/ t-=i;
/**found**/ return t;
2.程序修改(第91套)
return s ;
2.程序修改(第95套)
/**found**/
double fun(int n)
/**found**/
s=s+(double)a/b;
2.程序修改(第96套)
/**found**/
{
3
过形参传入。
例如,当n=10
时,程序的输岀结果应为。
/**found**/
double fun(int n)
/**found**/
return sum
3、第二大类(ASCII类)共4
道
/**fou nd**/ int k=0;
/**fou nd**/ while (*p||*q)
2.程序修改(第34套)给定程
序中函数fun的功能
/**found**/
q=p+i;
/**found**/
while(q>p) 2.程序修改(第79
套)
给定程序中函数fun 的
功能是:读入一个字符串
(长度<20),将该字符串中的
所有字符串按ASCII码升序排序
后输岀。
例如,若输入edcba,
则应输出:abcde。
/**found**/
for(i=strlen(t)-1;i;i--)
/**found**/
if(t[j]>t[j+1])
3、第三大类(字母类)共8道
2.程序修改(第8套)
/**fou nd**/
if((tt[i]>=a ' )&&(tt[i
]<='z')
/**fou nd**/
tt[ i ]- =32;
2.程序修改(第19套)
/**found**/ s[j++]=s[i];
/**found**/
s[j]= ' 0';2.程序修改(第
/**found**/
while(*s)
/**found**/
s++;
2.程序修改(第64套)
2.程序修改(第80套)
/**found**/
void fun(char *s, int num[5])
/**found**/
num[k]=0;
/**found**/
switch(*s)
2.程序修改(第81套)
/**found**/
void fun(char *s, int *a, int *b)
/**found**/
(*a)++;
4
给定程序中函数fun的功能
是:将大写字母转换为对应的小
写字母之后的第5个字
母,若小写字母为v〜z,使其
值减21。
转换后的小写字母作
为
函数值返回。
例如,若形参是字
母A,则转换为小写字母 f ;形参
是字母W,则转换为小写字母b。
/**found**/
c=c+32;
/**found**/
c=c+5;
4、第四大类(高位或者低位类)
共5道
s/=10;
2.程序修改(第20套)
给定程序中函数fun的功能是:
从低位开始取岀长整形变量s中
奇数位上的数,构成一个新数存
放在t中。
高位仍在高位,低位
仍在低位。
例如,
当s中的数为7654321时,t
中的数为7531。
/**found**/ void fun(long s ,
long *t)
/**found**/
s1=s1*10;
2.程序修改(第26套)
/**found**/
void fun(long s ,long *t)
/**found**/
s1=s1*10;
5、第五大类(平均类)共5道
2.程序修改(第40套)
2.程序修改(第83套)给定程
序中函数fun的功能
t+=s[k];
/**found**/ *aver=ave;
(m<=10)名学生来,将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。
/**found**/ t=calloc(m,sizeof (STU));
/**found**/
t : k] =b : j ];
7、第七大类(ABC类)共4道2.程序修改(第7套)给定程序中函数fun的功能是:
先将s所指字符串中的字符按逆
序放到t所指字符串中,然后把
s所指的字符串中的字符按正序
连接到t所指串的后面。
例如:
当s所指的字符串为” ABCDE
时,t所指的字符串应为”
EDCBAABCDE
/**found**/
int i,s1;
/**found**/
t[i]=s[s1-i-1];
2.程序修改(第54套)
/**found**/
printf ( "%c" , *a);
2.程序修改(第23套)
/**found**/
while (*w)
/**found**/
if ( *r ==*p ) 2.程序修改(第
54套)
5
6
a=NULL
/**found**/
if(*r==*p)
2.程序修改(第56
套)
/**found**/
if(*r==*p) {叶+;p++; }
/**found**/
if(*r==
' O')2.程序修改(第
76套)
while(ivj)
/**found**/
*c='\0: 9、第九大类(单向链表
类)共3 道
2.程序修改(第72套)
/**found**/ p=s;
/**found**/
s->data=rand()%(m - 1);
/**found**/
return h;
2.程序修改(第86套)
/**found**/ while (p!=NULL)
/**found**/ p= p - >next;
2.程序修改(第87套)
/**found**/
p=p->next;
10、第十类(字符串类)共12
道
2.程序修改(第2套)
/**fou nd**/
for(i=0;str[i];i++)
/**fou nd**/
if(substr[k+1]== ' \0
')
2.程序修改(第9套)
/**fo un d**/ for
(j=i+1;j<6;j++) /**fo un d**/
*(pstr+i)=*(pstr+j);
2.程序修改(第16套)
/**found**/
n=n*8+*p- ' O';
2.程序修改(第24套)
/**found**/
char *fun(char (*sq)[M])
/**found**/
return sp;
2.程序修改(第30套)
/**found**/
n=strlen (aa);
/**found**/
ch =aa [i];
7
/**found**/
r=t;
/**found**/
r=t;
/**found**/
s [j++]=s [ i ];
/**found**/
s [ j ]= ' \ 0 ';
2.程序修改(第50套)
/**found**/
for(i=0,t=0;p[i];i++)
/**found**/
c[t]= ' \0';
2.程序修改(第59套)
给定程序中函数fun的功能是:
将m (1三m W 10)个字符串
连接起来,组成一个新串,放入
pt所指存储区中。
例如,把三
个
/**found**/ pt[i]=str[k][i];
2.程序修改(第62 套)给定程
序中函数fun的功能
是:比较两个字符串,将长的那
个字符串的首地址作为函数值返
回。
/**found**/
char *fun (char *s ,char
*t)
/**found**/
ss++;
/**found**/
tt++;
2.程序修改(第68套)
/**found**/
p=s ;
/**found**/
p++;
/**found**/
a[i]=0;
2.程序修改(第75套)
/**found**/
for (i = 0; str[i]; i ++ ) 11、第十
一类(无规则类)共27 道
/**found**/
t=a;a=b;b=t;
/**found**/
return (b);
}
2.程序修改(第10套)
/**fo un d**/
long k=1;
/**fo un d**/
num/=10;
2.程序修改(第11套)
float k ;
/**fo un d**/
if(*a< *c)
2.程序修改(第14套)
给定程序中函数fun 的
功能是:从整数1到55之间,
查找岀能被3整除、且有一位上
的数是5的数,把这些数放在b
所指的数组中,这些数的个数作
为函数值返回。
规定函数中a1
放个位数,a2放十位数。
/**found**/
a2=k/10;
/**found**/
return i;
2.程序修改(第18套)
/**found**/
while((high>=2) && (n<10))
/**found**/
yes=0;break;
2.程序修改(第22套)
8
9
/**found**/ c=k%10;
2.程序修改(第70套)
/**found**/
d=1 ; s=0 ;
/**found**/
d=d/10 ;
2.程序修改(第71套)
/**found**/
int i,j=0,k,sum;
2.程序修改(第72套)
/**found**/
y=1;
/**found**/
d=a-i;
2.程序修改(第74套)给定程序
中函数fun的功能
/**found**/
return 3;
/**found**/
return 1;
2.程序修改(第82套)
/**found**/
2.程序修改(第84套)
/**found**/
void fun(int m, int k)
/**found**/
aa[i]=m%k;
/**found**/
printf(“%c” ,aa[i-1]);
2.程序修改(第89套)
/**found**/
if(t==0)
/**found**/
*zero=count;
2.程序修改(第92套)
/**found**/
for(i=1;i<=y;i++)
/**found**/
t=t%1000 ;
2.程序修改(第94套)
/**found**/
v1.0可编辑可修改if((k%13= =0 I |(k%17=
=0))
/**found**/
加}
2.程序修改(第100套)
下列给定程序中,函数
fun的功能是:找出一个大于
给定整数m且紧随m的素数,
并作为函数返回。
/**found**/
if(i%k==0)
/**found**/
if(k==i)
10。