功能:用"冒泡法"对连续输入的十个字符排序后按从小到大的次序
输出.
------------------------------------------------------*/
#define N 10
#include “stdio.h”
#include “string.h”
main( )
{
int i;
char str[N];
void sort(char str[N]);
/ERROR/
for(i=0;i<N;i++)scanf("%c",str[i]);
/ERROR/
sort(str[N]);
for(i=0;i<N;i++)
printf("%c",str[i]);
printf("\n");
}
void sort(char str[N])
{
int i,j; char t;
for(j=0;j<N-1;j++)
/ERROR/
for(i=0;i<N-j;i–)
/ERROR/
if(str[i]<str[i+1])
{
t=str[i];
str[i]=str[i+1];
str[i+1]=t;
}
}
【参考答案】
for(i=0;i<N;i++)scanf("%c",&str[i]);
sort(str);
for(i=0;i<N-j;i++)
if(str[i]>str[i+1])
/*------------------------------------------------------
【程序改错】
功能:在一个已按升序排列的数组中插入一个数,插入后,数
组元素仍按升序排列。
------------------------------------------------------*/
#include <stdio.h>
#define N 11
main()
{
int i,number,a[N]={1,2,4,6,8,9,12,15,149,156};
printf(“please enter an integer to insert in the array:\n”);
/ERROR/
scanf("%d",&number)
printf(“The original array:\n”);
for(i=0;i<N-1;i++)
printf("%5d",a[i]);
printf("\n");
/ERROR/
for(i=N-1;i>=0;i–)
if(number<=a[i])
/ERROR/
a[i]=a[i-1];
else
{
a[i+1]=number;
/ERROR/
exit;
}
if(number<a[0]) a[0]=number;
printf(“The result array:\n”);
for(i=0;i<N;i++)
printf("%5d",a[i]);
printf("\n");
}
【参考答案】
scanf("%d",&number);
for(i=N-2;i>=0;i–)
a[i+1]=a[i];
break;
/*------------------------------------------------------
【程序改错】
功能:判断m是否为素数,若是返回1,否则返回0。
------------------------------------------------------*/
#include <stdio.h>
/ERROR/
void fun( int n)
{
int i,k=1;
if(m<=1) k=0;
/ERROR/
for(i=1;i<m;i++)
/ERROR/
if(m%i=0) k=0;
/ERROR/
return m;
}