パソコンの隣ですぐに読める
                        書籍版苦C
                    void student_print(student data)
    void student_print(student data)
{
    printf("[学年]:%d\n", data.year);
    printf("[クラス]:%d\n", data.clas);
    printf("[出席番号]:%d\n", data.number);
    printf("[名前]:%s\n", data.name);
    printf("[身長]:%f\n", data.stature);
    printf("[体重]:%f\n", data.weight);
    return;
}
    #include <stdio.h>
#include <string.h>
typedef struct
{
    int year;       /* 学年 */
    int clas;       /* クラス */
    int number;     /* 出席番号 */
    char name[64];  /* 名前 */
    double stature; /* 身長 */
    double weight;  /* 体重 */
} student;
void student_print(student data);
int main(void)
{
    student data;
    data.year = 3;
    data.clas = 4;
    data.number = 18;
    strcpy(data.name, "MARIO");
    data.stature = 168.2;
    data.weight = 72.4;
    student_print(data); /* 呼び出し */
    return 0;
}
void student_print(student data)
{
    printf("[学年]:%d\n", data.year);
    printf("[クラス]:%d\n", data.clas);
    printf("[出席番号]:%d\n", data.number);
    printf("[名前]:%s\n", data.name);
    printf("[身長]:%f\n", data.stature);
    printf("[体重]:%f\n", data.weight);
    return;
}
    #include <stdio.h>
#include <string.h>
typedef struct
{
    int year;       /* 学年 */
    int clas;       /* クラス */
    int number;     /* 出席番号 */
    char name[64];  /* 名前 */
    double stature; /* 身長 */
    double weight;  /* 体重 */
} student;
int main(void)
{
    student data;
    student *pdata;
    pdata = &data;                  /* 初期化 */
    (*pdata).year = 10;             /* 通常変数モードへの切り替え */
    strcpy((*pdata).name, "MARIO"); /* 通常変数モードへの切り替え */
    return 0;
}
    (*構造体ポインタ変数名).要素名
    構造体ポインタ変数名->要素名
    int main(void)
{
    student data;
    student *pdata;
    pdata = &data;                /* 初期化 */
    pdata->year = 10;             /* ->記号によるアクセス */
    strcpy(pdata->name, "MARIO"); /* ->記号によるアクセス */
    return 0;
}
    #include <stdio.h>
#include <string.h>
typedef struct
{
    int year;       /* 学年 */
    int clas;       /* クラス */
    int number;     /* 出席番号 */
    char name[64];  /* 名前 */
    double stature; /* 身長 */
    double weight;  /* 体重 */
} student;
void student_print(student *data);
int main(void)
{
    student data;
    data.year = 3;
    data.clas = 4;
    data.number = 18;
    strcpy(data.name, "MARIO");
    data.stature = 168.2;
    data.weight = 72.4;
    student_print(&data); /* アドレスで呼び出す */
    return 0;
}
void student_print(student *data)
{
    printf("[学年]:%d\n", data->year); /* ->記号でアクセス */
    printf("[クラス]:%d\n", data->clas);
    printf("[出席番号]:%d\n", data->number);
    printf("[名前]:%s\n", data->name);
    printf("[身長]:%f\n", data->stature);
    printf("[体重]:%f\n", data->weight);
    return;
}
    普通に渡すことができる構造体を、ポインタ変数として渡す理由の
            苦しんで覚えるC言語(苦C)は
            C言語入門サイトの決定版です。
            C言語の基本機能を体系立てて解説しており、
            市販書籍と同等以上の完成度です。