#include <stdio.h>
#include <stdlib.h>
// khai bao struct
struct sinhvien {
char MSV[ 20 ] ; // ma sinh vien
char hoten[ 30 ] ; // ho ten sinh vien
double toan, tin, anh; // cac diem toan, tin, anh
} ;
/* Hay thay tat ca __fpurge(stdin); thanh fflush(stdin) khi ban lam tren windowns*/
int main( ) {
/* khai bao 2 bien sv1, sv2 va 1 mang
* CNPMK10A gom 100 sinh vien
*/
struct sinhvien sv1, sv2, CNPMK10A[ 100 ] ;
printf ( "Nhap du lieu cho sv1:\n " ) ;
printf ( "MSV: " ) ; __fpurge( stdin ) ;
gets ( sv1.MSV ) ;
printf ( "Ho ten: " ) ; __fpurge( stdin ) ;
gets ( sv1.hoten ) ;
printf ( "Diem toan, tin, anh: " ) ; __fpurge( stdin ) ;
scanf ( "%lf %lf %lf" , & sv1.toan , & sv1.tin , & sv1.anh ) ;
printf ( "Nhap du lieu cho sv2:\n " ) ;
printf ( "MSV: " ) ; __fpurge( stdin ) ;
gets ( sv2.MSV ) ;
printf ( "Ho ten: " ) ; __fpurge( stdin ) ;
gets ( sv2.hoten ) ;
printf ( "Diem toan, tin, anh: " ) ; __fpurge( stdin ) ;
scanf ( "%lf %lf %lf" , & sv2.toan , & sv2.tin , & sv2.anh ) ;
printf ( "\n --------- Thong tin sinh vien -----\n " ) ;
printf ( "%-20s %-30s %-7s %-7s %-7s\n " , "MSV" , "Ho ten" , "Toan" , "Tin" , "Anh" ) ;
printf ( "%-20s %-30s %-7.2lf %-7.2lf %-7.2lf\n " , sv1.MSV , sv1.hoten , sv1.toan , sv1.tin , sv1.anh ) ;
printf ( "%-20s %-30s %-7.2lf %-7.2lf %-7.2lf\n " , sv2.MSV , sv2.hoten , sv2.toan , sv2.tin , sv2.anh ) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KIAovLyBraGFpIGJhbyBzdHJ1Y3QKc3RydWN0IHNpbmh2aWVuIHsKICAgIGNoYXIgTVNWWzIwXTsgLy8gbWEgc2luaCB2aWVuCiAgICBjaGFyIGhvdGVuWzMwXTsgLy8gaG8gdGVuIHNpbmggdmllbgogICAgZG91YmxlIHRvYW4sIHRpbiwgYW5oOyAvLyBjYWMgZGllbSB0b2FuLCB0aW4sIGFuaAp9OwogCi8qIEhheSB0aGF5IHRhdCBjYSBfX2ZwdXJnZShzdGRpbik7IHRoYW5oIGZmbHVzaChzdGRpbikga2hpIGJhbiBsYW0gdHJlbiB3aW5kb3ducyovCiAKaW50IG1haW4oKSB7CiAgICAvKiBraGFpIGJhbyAyIGJpZW4gc3YxLCBzdjIgdmEgMSBtYW5nCiAgICAgKiBDTlBNSzEwQSBnb20gMTAwIHNpbmggdmllbgogICAgICovCiAgICBzdHJ1Y3Qgc2luaHZpZW4gc3YxLCBzdjIsIENOUE1LMTBBWzEwMF07CiAKICAgIHByaW50ZigiTmhhcCBkdSBsaWV1IGNobyBzdjE6XG4iKTsKICAgIHByaW50ZigiTVNWOiAiKTsgX19mcHVyZ2Uoc3RkaW4pOwogICAgZ2V0cyhzdjEuTVNWKTsKICAgIHByaW50ZigiSG8gdGVuOiAiKTsgX19mcHVyZ2Uoc3RkaW4pOwogICAgZ2V0cyhzdjEuaG90ZW4pOwogICAgcHJpbnRmKCJEaWVtIHRvYW4sIHRpbiwgYW5oOiAiKTsgX19mcHVyZ2Uoc3RkaW4pOwogICAgc2NhbmYoIiVsZiAlbGYgJWxmIiwgJnN2MS50b2FuLCAmc3YxLnRpbiwgJnN2MS5hbmgpOwogCiAgICBwcmludGYoIk5oYXAgZHUgbGlldSBjaG8gc3YyOlxuIik7CiAgICBwcmludGYoIk1TVjogIik7IF9fZnB1cmdlKHN0ZGluKTsKICAgIGdldHMoc3YyLk1TVik7CiAgICBwcmludGYoIkhvIHRlbjogIik7IF9fZnB1cmdlKHN0ZGluKTsKICAgIGdldHMoc3YyLmhvdGVuKTsKICAgIHByaW50ZigiRGllbSB0b2FuLCB0aW4sIGFuaDogIik7IF9fZnB1cmdlKHN0ZGluKTsKICAgIHNjYW5mKCIlbGYgJWxmICVsZiIsICZzdjIudG9hbiwgJnN2Mi50aW4sICZzdjIuYW5oKTsKIAogICAgcHJpbnRmKCJcbiAtLS0tLS0tLS0gVGhvbmcgdGluIHNpbmggdmllbiAtLS0tLVxuIik7CiAgICBwcmludGYoIiUtMjBzICUtMzBzICUtN3MgJS03cyAlLTdzXG4iLCAiTVNWIiwgIkhvIHRlbiIsICJUb2FuIiwgIlRpbiIsICJBbmgiKTsKICAgIHByaW50ZigiJS0yMHMgJS0zMHMgJS03LjJsZiAlLTcuMmxmICUtNy4ybGZcbiIsIHN2MS5NU1YsIHN2MS5ob3Rlbiwgc3YxLnRvYW4sIHN2MS50aW4sIHN2MS5hbmgpOwogICAgcHJpbnRmKCIlLTIwcyAlLTMwcyAlLTcuMmxmICUtNy4ybGYgJS03LjJsZlxuIiwgc3YyLk1TViwgc3YyLmhvdGVuLCBzdjIudG9hbiwgc3YyLnRpbiwgc3YyLmFuaCk7CiAKICAgIHJldHVybiAwOwp9