/* thong tin cua moi sinh vien: masv,ten,diem.lap chuong trinh thuc hien viec nhap va xuat thong tin theo mang... lap chuong trinh thuc hien theo yeu cau sau: a nhap ndl cho ds lop.. c
Trang 1/* thong tin cua moi sinh vien: masv,ten,diem.
lap chuong trinh thuc hien viec nhap va xuat thong tin theo mang
*/
#include"stdio.h"
#include"math.h"
typedef struct bg
{ char masv[5];
char ten[20];
float diem;
} tt;
tt *p; int n;
void ndl();
void ndl()
{
int i; float x;
printf("\n nhap vao so phan tu can nhap: "); scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("\n nhap vao thong tin cua nguoi thu %d : ",i);
fflush(stdin);
printf("\n masv: "); gets(p[i].masv);
printf("\n hoten: "); gets(p[i].ten);
printf("\n diem: "); scanf("%f",&x);
p[i].diem=x;
};
};
void xdl();
void xdl()
{
int i;
printf("\n danh sach vua nhap la: ");
for(i=1;i<=n;i++)
printf("\n %s %s %3.1f",p[i].masv,p[i].ten,p[i].diem);
};
main()
{
Trang 2ndl();
xdl();
getch();
}
/* bien cau truc:
cau truc 1 ban ghi: masv,hoten, quequan, truong, tuoi, sbd, diem lap chuong trinh thuc hien theo yeu cau sau:
a) nhap ndl cho ds lop
b) in ra ds vua nhap
c) sap xep danh sach theo thu tu tang dan cua diem
d) tim kiem thong tin khi biet diem (diem nhap vao tu ban phim) d) in ra nhung nguoi co diem cao nhat
*/
#include"stdio.h"
#include"math.h"
typedef struct ct
{
char masv[5];
char ht[25];
char qq[25];
int tuoi;
char truong[15];
int sbd;
float diem;
} bg;
bg a[40]; int n;
void ndl();
void ndl()
{
int i; float x;
printf("\n nhap vao so thanh vien cua lop: "); scanf("%d",&n); printf("\n nhap vao thong tin cua cac thanh vien: ");
Trang 3for(i=1;i<=n;i++)
{
printf("\n nhap vao thanh vien thu %d ",i);
fflush(stdin);
printf("\n nhap masv: "); gets(a[i].masv);
/* kiem tra tinh nhap trung masv */
printf("\n nhap ho ten: "); gets(a[i].ht);
printf("\n nhap que quan:"); gets(a[i].qq);
printf("\n nhap tuoi: "); scanf("%d",&a[i].tuoi);
fflush(stdin);
printf("\n nhap truong: "); gets(a[i].truong);
printf("\n nhap vao sbd: "); scanf("%d",&a[i].sbd);
printf("\n nhap vao diem: "); scanf("%f",&x);
a[i].diem=x;
};
};
void xdl();
void xdl()
{
int i;
printf("\n cac thanh vien trong lop vua nhap la:");
for(i=1;i<=n;i++)
{
printf("\n %s %s %s %d %s %d
%3.1f",a[i].masv,a[i].ht,a[i].qq,a[i].tuoi,a[i].truong,a[i].sbd,a[i].diem); };
};
void sx();
void sx()
{
int i,j; bg tg;
for(i=1;i<n;i++)
for(j=n;j>i;j )
if(a[j].diem<a[j-1].diem)
{
tg=a[j];
a[j]=a[j-1];
a[j-1]=tg;
Trang 4};
printf("\n danh sach lop sau khi sap xep tang dan theo diem: "); for(j=1;j<=n;j++)
printf("\n %s %s %s %d %s %d
%3.1f",a[j].masv,a[j].ht,a[j].qq,a[j].tuoi,a[j].truong,a[j].sbd,a[j].diem); };
void tk();
void tk()
{
int i,k;
printf("\n nhap vao diem can tim: "); scanf("%d",&k);
printf("\ nhung nguoi co diem= %d la: ",k);
for(i=1;i<=n;i++)
if(a[i].diem==k)
printf("\n %s %s %s %d %s %d
%3.1f",a[i].masv,a[i].ht,a[i].qq,a[i].tuoi,a[i].truong,a[i].sbd,a[i].diem); };
void ttcn();
void ttcn()
{
int i; float cn;
cn=a[1].diem;
for(i=2;i<=n;i++)
if(cn<a[i].diem)
cn=a[i].diem;
printf("\n nhung nguoi co diem cao nhat la:");
for(i=1;i<=n;i++)
if(a[i].diem==cn)
printf("\n %s %s %s %d %s %d
%3.1f",a[i].masv,a[i].ht,a[i].qq,a[i].tuoi,a[i].truong,a[i].sbd,a[i].diem); };
main()
{
bg tv;
ndl();
xdl();
sx();
Trang 5tk();
ttcn();
getch();
}
/* mang_cautruc_tep:
bien cau truc:
cau truc 1 ban ghi: masv,hoten, quequan, truong, tuoi, sbd, diem lap chuong trinh thuc hien theo yeu cau sau:
a) nhap ndl (hay nhap bo sung) va dl duoc luu vao 1 tep
b) in ra du lieu cau tep vua nhap
c) sap xep danh sach theo thu tu tang dan cua diem
d) tim kiem thong tin khi biet diem (diem nhap vao tu ban phim) d) in ra nhung nguoi co diem cao nhat
*/
#include"stdio.h"
#include"math.h"
typedef struct ct
{
char masv[5];
char ht[25];
char qq[25];
int tuoi;
char truong[15];
int sbd;
float diem;
} bg;
void ndl();
void ndl()
{
FILE *f;
bg tv,a[50]; float x; int i,n;
f=fopen("vd.txt","at");
Trang 6printf("\n nhap vao so ban ghi can bo sung :"); scanf("%d",&n); for(i=1;i<=n;i++)
{
printf("\n nhap vao thanh vien thu %d: ",i);
fflush(stdin);
printf("\n nhap masv: "); gets(a[i].masv);
printf("\n nhap ho ten: "); gets(a[i].ht);
printf("\n nhap que quan:"); gets(a[i].qq);
printf("\n nhap tuoi: "); scanf("%d",&a[i].tuoi);
fflush(stdin);
printf("\n nhap truong: "); gets(a[i].truong);
printf("\n nhap vao sbd: "); scanf("%d",&a[i].sbd);
printf("\n nhap vao diem: "); scanf("%f",&x);
a[i].diem=x;
fwrite(&a[i],sizeof(tv),1,f);
};
fclose(f);
};
void xdl();
void xdl()
{ FILE *f;
bg tv,tv1,a[50]; float x; int i;
f=fopen("vd.txt","rt");
i=1;
while(fread(&tv,sizeof(tv1),1,f)>0)
{
x=tv.diem;
printf("\n %s %s %s %d %s %d
%3.1f",tv.masv,tv.ht,tv.qq,tv.tuoi,tv.truong,tv.sbd,x);
i+=1;
};
fclose(f);
};
void sx();
void sx()
{
FILE *f; bg tg,tv,tv1,a[50];int n,i,j;
f=fopen("vd.txt","rt");
Trang 7i=0;
while(fread(&tv,sizeof(tv1),1,f)>0)
{
i+=1;
a[i]=tv;
};
n=i;
for(i=1;i<=n-1;i++)
for(j=n;j>=i+1;j )
if(a[j].diem<a[j-1].diem)
{
tg=a[j];
a[j]=a[j-1];
a[j-1]=tg;
};
printf("\n danh sach sau khi sap xep tang dan theo diem la: ");
for(j=1;j<=n;j++)
printf("\n %s %s %s %d %s %d
%3.1f",a[j].masv,a[j].ht,a[j].qq,a[j].tuoi,a[j].truong,a[j].sbd,a[j].diem); };
void tk();
void tk()
{
FILE *f;bg tv,tv1; float x;
f=fopen("vd.txt","rt");
printf("\n nhap vao diem can tim: "); scanf("%f",&x);
while(fread(&tv,sizeof(tv1),1,f)>0)
if(tv.diem==x)
printf("\n %s %s %s %d %s %d
%3.1f",tv.masv,tv.ht,tv.qq,tv.tuoi,tv.truong,tv.sbd,tv.diem);
};
void cn();
void cn()
{
FILE *f; bg tv,tv1,a[50]; float x; int n,i;
f=fopen("vd.txt","rt");
fread(&tv,sizeof(tv1),1,f);
x=tv.diem;
Trang 8i=0;
while(fread(&tv,sizeof(tv1),1,f)>0)
{
i+=1;
a[i]=tv;
if(tv.diem>x)
x=tv.diem;
};
printf("\n danh sach nhung nguoi co diem cao nhat la: ");
n=i;
for(i=1;i<=n;i++)
if(x==a[i].diem)
printf("\n %s %s %s %d %s %d
%3.1f",a[i].masv,a[i].ht,a[i].qq,a[i].tuoi,a[i].truong,a[i].sbd,a[i].diem); };
main()
{
ndl();
xdl();
sx();
tk();
cn();
getch();
}
/* cho danh sach lien ket kieu gom cau truc kieu ht:
struct hs
{ char ht[25];
int ns;
struct hs *tiep;
};
cho biet con tro tro toi dau danh sach lap doan chuong trinh thuc hien cac Y/C:
1) in cac sinh vien co nam sinh >=1972
Trang 92) xoa khoi danh sach cac hoc sinh sinh nam 1974 */
#include"stdio.h"
#include"math.h"
#include"conio.h"
typedef struct hs
{ char ht[25];
int ns;
struct hs *tiep;
} person;
main()
/* {ctrlscr(); */
{ int i;
char ht[25]; int ns;
person *pdau,*p,*p1;
pdau=NULL;
while(1)
{
fflush(stdin);
printf("\n Ho ten: "); gets(ht);
if(ht[0]==0) break;
if(pdau==NULL)
{
pdau=(person*)malloc(sizeof(person));
p=pdau;
}
else
{
p->tiep=(person*)malloc(sizeof(person));
p=p->tiep;
};
strcpy(p->ht,ht);
printf("\n nam sinh "); scanf("%d%*c",&ns);
p->ns=ns;
p->tiep=NULL;
};
Trang 10p=pdau;
while(p!=NULL)
{
printf("\n Ho ten: %-25s , tuoi: %d",(*p).ht,(*p).ns);
p=p->tiep;
};
/* nhung nguoi co nam sinh>1972 */
while(1)
{
printf("\n nam sinh:");
scanf("%d",ns);
if(ns==0) break;
/* duyet tu dau ds */
p=pdau;
while(p!=NULL)
{
if(strcmp(p->ns,ns)==0)
printf("\n Ho ten %-25s , nam sinh: %d",(*p).ht,(*p).ns);
p=p->tiep;
};
};
printf("\n Loai phan tu dau danh sach");
getch();
}
/*
co tep "sn.txt": gom cac phan tu nguyen duong duoc cach nhau boi 1 dau phay hay xuong dong
lap chuong trinh thuc hien cac yeu cau sau:
a) dua ra cac phan tu cua tep
b) dua ra cac phan tu cua tep da duoc sap xep theo thu tu tang dan
c) dua ra man hinh cac so trong tep la so chinh phuong
Trang 11d) dua ra man hinh cac so trong tep la so nguyen to e) dua cac phan tu cua tep la so chan vao tep "sn1.txt" */
#include"stdio.h"
#include"math.h"
void xdl();
void xdl()
{
FILE *f;int x;
f=fopen("sn.txt","rt");
printf("\n cac phan tu cua tep la: \n");
while(fscanf(f,"%d",&x)!=EOF)
{
printf("%d ",x);
};
fclose(f);
};
void sx();
void sx()
{
FILE *f; int x,n,i,j,tg,a[50];
f=fopen("sn.txt","rt");
i=0;
while(fscanf(f,"%d",&x)!=EOF)
{
i+=1;
a[i]=x;
};
n=i;
for(i=1;i<n;i++)
for(j=n;j>i;j )
if(a[j]<a[j-1])
{
tg=a[j];
a[j]=a[j-1];
a[j-1]=tg;
};
Trang 12printf("\n cac phan tu sau khi sap xep la:\n"); for(j=1;j<=n;j++)
printf("%d ",a[j]);
fclose(f);
};
void scp();
void scp()
{
FILE *f; int i,x;
f=fopen("sn.txt","rt");
printf("\n cac so chinh phuong trong tep la: \n"); while(fscanf(f,"%d",&x)!=EOF)
for(i=1;i<=x;i++)
if(x==i*i) /* cau lenh thay cho lenh nay ?? */ printf("%d ",x);
fclose(f);
};
void snt();
void snt()
{
FILE *f; int i,x;
f=fopen("sn.txt","rt");
printf("\n cac so nguyen to trong tep la: \n"); while(fscanf(f,"%d",&x)!=EOF)
{
for(i=2;i<x;i++)
if(((x%i)!=0)&(x>1)) /* ??????????? */ printf("%d ",x);
};
fclose(f);
};
void ddl();
void ddl()
{
FILE *f1,*f2; int x;
f1=fopen("sn.txt","rt");
f2=fopen("sn1.txt","wt");
Trang 13printf("\n cac phan tu duoc dem vao tep sn1.txt la: \n");
while(fscanf(f1,"%d",&x)!=EOF)
if(x%2==0)
{
printf("%d ",x);
fprintf(f2,"%d",x);
fprintf(f2,"%s"," ");
};
};
main()
{
xdl();
sx();
scp();
snt();
ddl();
getch();
}
/* lap chuong trinh thuc hien cac chuc nang sau:
a) nhap vao mang 2 chieu (cac phan tu la so nguyen)
b) in cac phan tu vua nhap
c) tin phan tu lon nhat, va phan tu am cuoi cung tren hang thu k (k duoc nhap vao tu ban phim)
d) neu ma tran vua nhap la vuong thi tinh tong cac phan tu nam tren duong chao chinh
e) sap xep theo day tang dan tren dong k(k nhap vao tu ban phim)
f) tim cac so chinh phuong, so nguyen to trong ma tran vua nhap
*/
#include"stdio.h"
#include"math.h"
#include"conio.h"
int a[10][10],n,m;
Trang 14void ndl(int c,int d);
void ndl(int c,int d)
{
int i,j;
for(i=1;i<=c;i++)
for(j=1;j<=d;j++)
{
printf("\n A[%d %d]= ",i,j); scanf("%d",&a[i][j]);
};
};
void xdl(int c,int d);
void xdl(int c,int d)
{
int i,j;
printf("\n cac phan tu vua nhap la: \n");
for(i=1;i<=c;i++)
{
for(j=1;j<=d;j++)
{
printf("%d ",a[i][j]);
};
printf("\n");
};
};
void tpt(int c,int d);
void tpt(int c,int d)
{
int i,l;
l=a[c][1];
for(i=1;i<=d;i++)
if(l<a[c][i])
l=a[c][i];
printf("\n phan tu lon nhat cua dong %d la: %d",c,l);
i=d;
while((a[c][i]>0)&(i>=1))
i-=1;
if(i>=1)
printf("\n phan tu am cuoi cuni cung la: %d va nam o vi tri %d %d",a[c] [i],c,i);
Trang 15else
printf("\n trong hang %d khong co so am",c);
};
void tt(int c,int d);
void tt(int c,int d)
{
int t,i,j;
t=0;
for(i=1;i<=c;i++)
for(j=i;j<=d;j++)
t+=a[i][j];
printf("\n tong cac phan tu nam phia tren duong cheo chinh la: %d",t); };
void sx(int c,int d);
void sx(int c,int d)
{
int tg,i,j,l;
l=c;
printf("\n cac phan tu tren hang % sau khi duoc sap xep la: ",l);
for(i=1;i<=d;i++)
for(j=d;j>i;j )
if(a[l][j]<a[l][j-1])
{
tg=a[l][j];
a[l][j]=a[l][j-1];
a[l][j-1]=tg;
};
for(j=1;j<=d;j++)
printf("%d ",a[l][j]);
};
main()
{
int k;
printf("\n nhap vao so hang cua ma tran: "); scanf("%d",&n);
printf("\n nhap vao so cot cua ma tran: "); scanf("%d",&m);
ndl(n,m);
xdl(n,m);
Trang 16printf("\n nhap vao so hang can tim: "); scanf("%d",&k);
tpt(k,m);
if(n==m)
tt(n,n);
else
printf("\n ma tran vua nhap khong phai la ma tran vuong");
printf("\n nhap vao so hang can sap xep: "); scanf("%d",&k);
sx(k,m);
getch();
}
/* tep nhi phan:
lap chuong trinh thuc hien theo cac yeu cau sau:
a) nhap (chen) vao tep vd1.txt cac phan tu la so nguyen
b) in ra man hinh cac phan tu cua tep
c) dua ra man hinh cac phan tu cua tep theo thu tu tang dan
d) dua ra man hinh phan tu lon nhat trong tep
e) dua ra man hinh cac phan tu am cua day
f) lay cac phan tu chia het cho 2 tu tep vd1.txt de dua vao tep vd2.txt
*/
#include"stdio.h"
#include"math.h"
int n;
void ndl();
void ndl()
{
FILE *f;
int i,n,k;
f=fopen("vd1.txt","ab");
printf("\n nhap vao so phan tu can bo sung vao tep: "); scanf("%d",&n); for(i=1;i<=n;i++)
{
printf("\n A[%d]= ",i); scanf("%d",&k);
putw(k,f);
Trang 17};
fclose(f);
};
void xdl();
void xdl()
{
FILE *f; int k;
f=fopen("vd1.txt","rb");
printf("\n cac phan tu cua tep la: \n");
while((k=getw(f))!=EOF)
printf("%d ",k);
fclose(f);
};
void sx();
void sx()
{
int n,k,i,j,tg,a[50];
FILE *f;
f=fopen("vd1.txt","rb");
i=0;
while((k=getw(f))!=EOF)
{
i+=1;
a[i]=k;
};
n=i;
for(i=1;i<n;i++)
for(j=n;j>i;j )
if(a[j]<a[j-1])
{
tg=a[j];
a[j]=a[j-1];
a[j-1]=tg;
};
printf("\n cac phan tu sau khi sap xep la: \n"); for(j=1;j<=n;j++)
printf("%d ",a[j]);
fclose(f);
Trang 18};
void ln();
void ln()
{
FILE *f; int x,i,l;
f=fopen("vd1.txt","rb");
l=getw(f);
while((x=getw(f))!=EOF)
if(l<x)
l=x;
printf("\n phan tu lon nhat trong day la: %d",l);
fclose(f);
};
void soam();
void soam()
{
FILE *f; int x,i,sa;
f=fopen("vd1.txt","rb");
printf("\n cac phan tu am trong day la: ");
while((x=getw(f))!=EOF)
if(x<0)
printf("%d ",x);
fclose(f);
};
void chan();
void chan()
{
FILE *f1,*f2; int x;
f1=fopen("vd1.txt","rb");
f2=fopen("vd2.txt","wb");
printf("\n cac phan tu da duoc dem vao tep vd1.txt la: \n"); while((x=getw(f1))!=EOF)
if(x%2==0)
{
printf("%d ",x);
putw(x,f2);
};