C言語で書かれたプログラムをrubyで作りなおそうと思うのですが
struct student {
char name[40];
int lit,math,eng;
int total;
};

と

void read_student(student *p,char *s)
{
sscanf(s,%s %d %d %d,
p ->name ,
&(p->lit),
&(p->math),
&(p->eng), );
}

をrubyで表現するとどうなりますか?
Cが良く判らないのでご教授いただけると幸いです。