prog23.cpp
来自「C++语言程序设计题典」· C++ 代码 · 共 66 行
CPP
66 行
#include <stdio.h>
#include <string.h>
#define N 5
class person
{
char name[10];
char num[10];
public:
void setname(char na[]) { strcpy(name,na); }
void setnum(char nu[]) { strcpy(num,nu); }
char *getname() { return name; }
char *getnum() { return num; }
};
class compute
{
person pn[N];
public:
void getdata();
void getsort();
void outdata();
};
void compute::getdata()
{
int i;
char na[10],nu[10];
printf("输入姓名和电话号码:\n");
for (i=0;i<N;i++)
{
printf(" 第%d个人:",i+1);
scanf("%s%s",na,nu);
pn[i].setname(na);
pn[i].setnum(nu);
}
}
void compute::getsort()
{
int i,j,k;
person temp;
for (i=0;i<N-1;i++)
{
k=i;
for (j=i+1;j<N;j++)
if (strcmp(pn[k].getname(),pn[j].getname())>0)
k=j;
temp=pn[k];
pn[k]=pn[i];
pn[i]=temp;
}
}
void compute::outdata()
{
int i;
printf("输出结果:\n");
printf(" 姓名 电话号码\n");
printf("-------- --------\n");
for (i=0;i<N;i++)
printf(" %-8s%-8s\n",pn[i].getname(),pn[i].getnum());
}
void main()
{
compute obj;
obj.getdata();
obj.getsort();
obj.outdata();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?