您的位置首页百科问答

PTA中C语言编程问题(答案没有给我满分,请帮我指出一下我程序的错误)

问题补充说明:7-2选择法排序(20分)本题要求将给定的n个整数从大到小排序后输出。输入格式:输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。输出格式:在一行中输出从... 7-2 选择法排序(20 分)本题要求将给定的n个整数从大到小排序后输出。输入格式:输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。输出格式:在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。输入样例:45 1 7 6输出样例:7 6 5 1我的程序:#include int main() { int n,a[11],i,temp,j; scanf("%d",&n); for(i=0;i

PTA中C语言编程问题(答案没有给我满分,请帮我指出一下我程序的错误)

#include <stdio.h>

int main() 

{

int n,a360问答[11],i,te名镇么名往语者心换mp,j;

scan越级标新f("%d",&n);

for(i=0;i<n;i++)

scanf("%d",&a[i]);

for(j=0;j<n;j++)

for(i=0;i<n-j-1;i++)//改了下这里 当i=n-1时 i+1就越界了,所以i<n-j-1

if(a[i]<a[i+1])

{temp=a[i];a[i]=a[i+1];a[i+1]=temp;}

for(i=0;i<n-1;i++)

printf("%d ",a[i]);

printf("%d",a[i]);

return 0;

}