谢谢解答
请给这段筛选100以内素数的代码加上注释
#include
#include
int main()
{int i,j,n,a[101];
for (i=1;i<=100;i++)
a[i]=i;
a[1]=0;
for (i=2;i<sqrt(100);i++)
for (j=i+1;j<=100;j++)
{if(a[i]!=0 && a[j]!=0)
if (a[j]%a[i]==0)
a[j]=0;
}
printf("\n");
for (i=2,n=0;i<=100;i++)
{ if(a[i]!=0)
{printf("%5d",a[i]);
n++;
}
if(n==10)
{printf("\n");
n=0;
}
}
printf("\n");
return 0;
}
为什么输出的最后一个数很奇怪
#include
int main()
{
int a[11],i,j,min=0;
for(i=0;i
{printf("a[%d]",i);
scanf("%d",&a[i]);
}
for(j=0;j
{
for(i=j+1;i
{
if(a[i]>a[j])
{a[min]=a[j];
a[j]=a[i];
a[i]=a[min];}//实现取最小
}
}
printf("\nThe sorted numbers:\n");
for (i=1;i<=10;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
请给这段代码加上注释
有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中
#include
int main()
{ int a[11]={1,4,6,9,13,16,19,28,40,100};
int temp1,temp2,number,end,i,j;
printf("array a:\n");
for (i=0;i
printf("%5d",a[i]);
printf("\n");
printf("insert data:");
scanf("%d",&number);
end=a[9];
if (number>end)
a[10]=number;
else
{for (i=0;i
{if (a[i]>number)
{temp1=a[i];
a[i]=number;
for (j=i+1;j<11;j++)
{temp2=a[j];
a[j]=temp1;//把a[i]放到了后面
temp1=temp2;
}
break;
}
}
}
printf("Now array a:\n");
for (i=0;i<11;i++)
printf("%5d",a[i]);
printf("\n");
return 0;
}
这段代码有两个错误,请更正
代码目的是输入两个整数,输出其中值较大者
#include
int main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max is %d",c);
return 0;
}
int max(int x,int y)
{
int z;
z=x>y?x:y;
return(z);
}