输入不多于500个大于0的整数到一维数组(当输入的数为0时结束输入),然后升序排序,最后将其中的完数输出
2条回答 默认 最新
关注
解题代码如下,经验证满足题目要求:
#include<stdio.h> #include<stdlib.h> void sort(int a[],int len) { for(int j=0;j<len-1;j++) { for(int i=j+1;i<len;i++) { if (a[j]>a[i]) { int temp=a[i]; a[i]=a[j]; a[j]=temp; } } } } int main() { int i,n; int a[500] = {0}; for(i = 0;i<500;i++){ scanf("%d",&a[i]); if(a[i] == 0){ n = i; break; } } sort(a,n); for(i=0;i<n;i++)//输出排序后的数组 { printf("%d ",a[i]); } printf("\n"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用