c++新手入门级代码校对 结构体的输入,输出,交换函数,根据结构体中一元素给结构体排序,数组如何取地址。(建议仔细分析)



慈心积善,为有缘人做大证明。口中言语,光亮世间人心。
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


//定义函数很方便呀。 
#include<iostream>
using std::cout;
using std::cin;
using std::endl;

//定义公共结构类型
struct student {
       int  num;
       char  name[10];
       float maths;
       float physics;
       float chemistry;
       double  total;
};
 
//定义结构输入函数,这个就很方便。 
void input_Rec(struct student *p)   //参数为student类型的结构指针变量
{
    cin>>p->num;
    cin>>p->name;
    cin>>p->maths;
    cin>>p->physics;
    cin>>p->chemistry;
}

//定义结构数据交换函数
void swap_Rec(struct student *p1,struct student *p2)
{
    struct student x;

    //交换两个记录的数据
    x=*p1;
    *p1=*p2;
    *p2=x;
}

//输出结构的值
void put_Rec(struct student *p)
{
    cout<<p->num<<'\t';
    cout<<p->name<<'\t';
    cout<<p->maths<<'\t';
    cout<<p->physics<<'\t';
    cout<<p->chemistry<<'\t';
    cout<<p->total<<endl;
}

//定义main()函数
main() 
{
    int i,j;
    // 声明结构指针变量和结构数组,数组还真有用。C++中也得弄好数组 
    struct student *p1,a[3];  

    //输入3个学生的数据并计算总成绩 ,0,1,2 三个 。通过改变a[]的大小,想有几个就有几个。真方便 
    cout<<"num\tname\tmaths\tphysics\tchemistry"<<endl;
    for (p1=a;p1<=a+2;p1++)  {
         input_Rec(p1);
         p1->total=p1->maths+p1->physics+p1->chemistry; //这句话也可以用函数来解决的 
    }

    //对3个学生的数据排序,冒泡排序,挺好的这种。一带多的典范 ,这个死板了。冒泡算法可以做成函数的。 
    for (i=0;i<=2;i++)  
         for (j=i+1;j<=2;j++)
             if (a[i].total<a[j].total)  //从大到小 
                 //展示了数组如何取地址,很重要。 
				 swap_Rec(&a[i],&a[j]);   //交换两个结构变量中的数据
     cout<<"-------------------"<<endl;	  //输出一分界线

     //输出排序后的结构数组
    cout<<"num\tname\tmaths\tphysics\tchemistry\ttotal"<<endl;
    for (p1=a;p1<=a+2;p1++)
          put_Rec(p1);
          
          return 1; 
//这个程序还可以优化,但是作为一个新手,已经够了。 
}



//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
技术第一,勿要不明理而盲目复制。此代码是我从百度上搜索得到,经过整理校对,修改程序中的错误,适当添加语句后,运行成功后写入博客。
适合自学的人们分析观看。                                               
                                                                                

你可能感兴趣的:(C++,代码,函数,技术,新手入门)