计算机小混子 2022-03-13 09:29 采纳率: 100%
浏览 22
已结题

关于C++指针求解释下列问题

求解释下列问题?
1-函数必须要返回值?
2-p->num;这是什么意思?给指针指向的位置赋值?
3-cout << p->chemistry 这又是什么意思?输出p指针指向的地址所对应的值?
4-for (p1 = a; p1 < a + 2; p1++)这后面括号里的是什么?


// 69.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
using namespace std;    //定义公共结构类型
    struct student
    {
        int num;
        char name[10];
        float maths;
        float physics;
        float chemistry;
        double total;
    };
    //定义结构输入函数
    int input_Rec(struct student* p)//参数为student类型的结构指针变量
    {
        cin >> p->num;
        cin >> p->name;
        cin >> p->maths;
        cin >> p->physics;
        cin >> p->chemistry;
        return 0;
    }
    //定义结构数据交换函数
    int swap_Rec(struct student* p, struct student* p2)
    {
        struct student x;
        //交换两个记录的数据
        x = *p;
        *p = *p2;
        *p2 = x;
        return 0;
    }
    int 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;
        return 0;
    }
    int main()
    {
        int i, j;
        //声明结构指针变量和结构数组
        struct student* p1, a[3];
        //输入3个学生的数据并计算总成绩
        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;
        }
        //对三个学生的数据排序
        for (int 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);








    }



  • 写回答

2条回答 默认 最新

  • yun6853992 2022-03-13 09:42
    关注

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月21日
  • 已采纳回答 3月13日
  • 创建了问题 3月13日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。