输入n个正整数到数组中,将它们从小到大排序后输出,要求使用冒泡排序法。
#include<stdio.h>#include<malloc.h>main(){inti,*a,t,n,j;printf("qingshuruchangdu\n");...
#include <stdio.h>
#include <malloc.h>
main()
{
int i,*a,t,n,j;
printf("qing shu ru chang du\n");
scanf("%d",&n);
a=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
scanf("%d",*(a+i));
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(*(a+i)>*(a+i+1)){t=*(a+i);*(a+i)=*(a+i+1);*(a+i+1)=t;}
}
}
for(i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
free(a);
}
哪里不对??? 展开
#include <malloc.h>
main()
{
int i,*a,t,n,j;
printf("qing shu ru chang du\n");
scanf("%d",&n);
a=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
scanf("%d",*(a+i));
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(*(a+i)>*(a+i+1)){t=*(a+i);*(a+i)=*(a+i+1);*(a+i+1)=t;}
}
}
for(i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
free(a);
}
哪里不对??? 展开
展开全部
#include <stdio.h>
#include <malloc.h>
main()
{
int i,*a,t,n,j;
printf("qing shu ru chang du\n");
scanf("%d",&n);
a=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
scanf("%d",a+i);
}
for(j=0;j<n;j++)
{
for(i=0;i<j;i++)
{
if(*(a+i)>*(a+i+1)){t=*(a+i);*(a+i)=*(a+i+1);*(a+i+1)=t;}
}
}
for(i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
free(a);
}
追问
那个循环比较大小的那个没大看懂
循环还是不对啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询