你好!!!
使用个宏定义数组的大小,可以很方便的该表数组的大小;使用的是动态开辟空间,使用冒泡法排序,当然也可以用选择法排序或是其他的方法,代码如下,仅供参考!!
#include
#define N 10 //定义数组的大小
int main()
{
int *a=new int [N];//动态开辟空间
cout<<"输入10个学生的成绩:"<
for(int i=0;i
for(i=0;i
int temp;
temp=a[j+1];
a[j+1]=a[j];
a[j]=temp;
}
for(i=0;i
return 0;
}
测试:
输入10个学生的成绩:
60 70 90 50 45 60 78 80 98 100
100 98 90 80 78 70 60 60 50 45
Press any key to continue
哇唔 回答的人真多啊 我也来凑热闹,,
现在程序讲究效率跟代码量,, 我也贴个吧 只有 20行满足你的题目要求
如果有什么不明白的可以来问我哈。。。。。
#include
using namespace std;
int main()
{
int i=0,*score=new int[10];int k;
cout<<"请输入10个学生的成绩"<
{
int j=i;
while(k>=score[j]&&j>=0)
{
score[j]=score[j-1];
j--;
}
score[j+1]=k;
++i;
}
for(int x=0;x!=10;++x)
cout<
return 0;
}
你好,以下是简单的示例程序。
#include
using namespace std;
#define NUM 10
int main()
{
// 分配空间
int* score = new int[NUM];
// 初始化成绩
cout<<"请依次输入10个同学的成绩"<
cin>>score[i];
}
// 从高到底排序
for (int i=0; i
for (int j = i+1;j
if (score[j] > score[j-1])
{
int temp = score[j];
score[j] = score[j-1];
score[j-1] = temp;
}
}
}
// 输出成绩
cout<<"从高到底输出成绩:";
for (int i = 0; i
cout<
// 释放空间
delete[] score;
getchar();
return 0;
}
#include
#define N 10
void main()
{
int a[N];
for(int i=0;i
for(i=N-1;i>0;i--)
{
int r=1;
for(int t=0,j=0;j if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
r=0;
}
if(r==1)
break;
}
for(i=0;i
}
上面是一维数组冒泡排序法,申请动态数组空间这个int *p=new int[10];就行,指针p可以当做数组名使用。
int *p=new int[10];
for(int *q=p;q!=p+10;q++)
{.......
}
delete []p;