不是答案,而是扩展的评论。
链接到相关文档:
请注意,命令替换将返回一个值列表,代表命令输出的每行。这样一来,您可以使用for line in (cat ...)
来避免在bash中出现问题。
,
#include <stdio.h>
#include <stdlib.h>
int cmp(void const *a,void const *b)
{
if (*(int *)a < *(int *)b)
return -1;
else if (*(int *)a == *(int *)b)
return 0;
else
return 1;
}
int main(void)
{
int k,*a,i;
FILE *fp;
fp = fopen("input.txt","r");
fscanf(fp,"%d",&k);
a = malloc(k * sizeof(int));
for (i = 0; i < k; i++)
fscanf(fp,&a[i]);
for (i = 0; i < k; i++)
printf("%d ",a[i]);
printf("\n");
printf("\n");
qsort(a,k,sizeof(int),cmp);
for (i = 0; i < k; i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
是答案
本文链接:https://www.f2er.com/3056065.html