請問我這個(gè)問題在哪里?
#include <stdio.h>
int main()
{
? ? int score[10]={67,98,75,63,82,79,81,91,66,84};
? ? int sum=0,sam,sim,p,jump,i;
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? sum=sum+score[i];
? ? }
? ? int j;
? ? for(i=9;i>=0;i--)
? ? {
? ? ? ? for(j=0;j<10;j++)
? ? ? ? {
? ? ? ? ? ? if(score[j]<score[j+1])
? ? ? ? ? ? jump=score[j];
? ? ? ? ? ? score[j]=score[j+1];
? ? ? ? ? ? score[j+1]=jump;
? ? ? ? }
? ? }
? ? sam = score[0];
? ? sim = score[9];
? ? printf("考試總分為%d\n",sum);
? ? printf("最高分為%d\n",sam);
? ? printf("最低分為%d\n",sim);
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? if(i!=9)
? ? ? ? ? ? printf("%d,",score[i]);
? ? ? ? else
? ? ? ? ? ? printf("%d",score[i]);
? ? }
? ? return 0;
}
復(fù)制到c++中是沒有錯(cuò)誤能運(yùn)行的,但是最小數(shù)是20,排序中也出現(xiàn)了一樣的數(shù)字和數(shù)組中沒有的數(shù)字,太奇怪了
2020-10-31
#include <stdio.h>//看下面標(biāo)注
int main()
{
? ? int score[10]={67,98,75,63,82,79,81,91,66,84};
? ? int sum=0,sam,sim,p,jump,i;
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? sum=sum+score[i];
? ? }
? ? int j;
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? for(j=0;j<10;j++)
? ? ? ? {
? ? ? ? ? ? if(score[j]<score[j+1]){//不加大括號?
? ? ? ? ? ? jump=score[j];
? ? ? ? ? ? score[j]=score[j+1];
? ? ? ? ? ? score[j+1]=jump;}
? ? ? ? }
? ? }
? ? sam = score[0];
? ? sim = score[9];
? ? printf("考試總分為%d\n",sum);
? ? printf("最高分為%d\n",sam);
? ? printf("最低分為%d\n",sim);
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? if(i!=9)
? ? ? ? ? ? printf("%d,",score[i]);
? ? ? ? else
? ? ? ? ? ? printf("%d",score[i]);
? ? }
? ? return 0;
}