怎么在程序名前面加序号?
发布网友
发布时间:2022-04-26 09:01
我来回答
共1个回答
热心网友
时间:2022-06-26 07:13
主函数没问题。主要是sort()中排序出错了。
看你两两比较数据,似乎是想用冒泡排序法。
将sort()稍作修改即可:
void sort(char (*p)[10],int *q)
{
int i,j,m;
char t[10];
for(i=0;i<9;i++)
{
for(j=0;j<9-i;j++)
if(*(q+j)>*(q+j+1))
{
m=*(q+j);*(q+j)=*(q+j+1);*(q+j+1)=m;
strcpy(t,*(p+j));
strcpy(*(p+j),*(p+j+1));
strcpy(*(p+j+1),t);
}
}
for(i=0;i<10;i++)
printf("%s %d\n",*(p+i),*(q+i));
}
我把形参的类型改了,不然会有警告的。
当然,你也可以用顺序排序或插入排序等等方法。C语言书上都有例子的。