📄 5_41.cpp
字号:
#include <iostream.h>
#include <iomanip.h>
struct sport //结构声明(声明结构时不分配内存空间)
{
char num[4]; //数据成员1(结构中包含的数据变量称为数据成员)
double grade; //数据成员2
}; //不能缺少分号
void print(sport* s)
{
static int num=0;
cout<<setw(6)<<(num+1)<<setw(6)<<s->num<<setw(6)<<s->grade<<endl;
num++;
}
void main()
{
sport a[12]={{"001",13.6},{"002",14.8},{"010",12.0},
{"011",12.7},{"023",15.6},{"025",13.4},
{"031",14.9},{"036",12.6},{"037",13.4},
{"102",12.5},{"325",15.3},{"438",12.7}};
sport * pa[12]={&a[0],&a[1],&a[2],&a[3],&a[4],&a[5],
&a[6],&a[7],&a[8],&a[9],&a[10],&a[11]};
sport * temp; //定义sport类型的指针变量temp
int i,j;
int row=12;
for(i=0;i<row-1;i++) //直接插入排序,此为稳定排序。注意与冒泡法比较
{
temp=pa[i+1];
j=i;
while(j>-1 && temp->grade<pa[j]->grade)
{
pa[j+1]=pa[j];
j--;
}
pa[j+1]=temp;
}
cout<<setw(6)<<"名次"<<setw(6)<<"编号"<<setw(6)<<"成绩"<<endl;
for( i=0;i<12;i++)
print(pa[i]); //最后通过结构指针输出它们访问的结构变量值
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -