Professional Documents
Culture Documents
Bai Tap C Thuong Gap
Bai Tap C Thuong Gap
Muc Luc
BAI 01 ..................................................................................................................... 3
BAI 01 ..................................................................................................................... 3
BAI 02 ..................................................................................................................... 4
BAI 03 ..................................................................................................................... 7
BAI 04 :................................................................................................................. 10
BAI 05 :................................................................................................................. 12
BAI 06 ................................................................................................................... 14
BAI 07 ................................................................................................................... 15
BAI 08 ................................................................................................................... 17
BAI 09 ................................................................................................................... 18
BAI 10 :................................................................................................................. 20
BAI 11 ................................................................................................................... 23
BAI 12 ................................................................................................................... 24
BAI 13 ................................................................................................................... 29
BAI 14 ................................................................................................................... 30
BAI 16 ................................................................................................................... 32
BAI 17 ................................................................................................................... 34
BAI 18 ................................................................................................................... 36
BAI 19 ................................................................................................................... 38
BAI 20 ................................................................................................................... 40
BAI 21 :................................................................................................................. 42
BAI 22 ................................................................................................................... 46
BAI 23 :................................................................................................................. 48
BAI 24 ................................................................................................................... 50
BAI 25 ................................................................................................................... 53
BAI 26 ................................................................................................................... 56
BAI 27 ................................................................................................................... 58
BAI 28 ................................................................................................................... 61
BAI 29 ................................................................................................................... 64
BAI 30 ................................................................................................................... 67
BAI 31 ................................................................................................................... 69
BAI 32 ................................................................................................................... 71
BAI 33 :................................................................................................................. 73
BAI 34 ................................................................................................................... 77
BAI 35 ................................................................................................................... 79
BAI 36 ................................................................................................................... 82
BAI 37 ................................................................................................................... 85
http://vndownloads.net
1 / 127
Bai 38 : .................................................................................................................. 87
Bai 39 : .................................................................................................................. 89
Bai 40 .................................................................................................................... 91
Bai 41 .................................................................................................................... 93
Bai 42 .................................................................................................................... 96
Bai 43 .................................................................................................................... 98
Bai 44 : ................................................................................................................ 102
Bai 45 : ................................................................................................................ 105
Bai 46 : ................................................................................................................ 109
HET ..................................................................................................................... 110
Bai 47 .................................................................................................................. 110
Bai 48 : ................................................................................................................ 119
Bai 49 : ................................................................................................................ 120
Bai 50 ; ................................................................................................................ 122
Mot So Bai Lam Them , Ti ay Ban Hay T Mnh Nhn Vao Bai Va Suy
Ra e Bai i Nhe . Hay Th Xem va Toi Ngh La Ban Se Lam c ieu
o . ...................................................................................................................... 124
Bai Them 1 : ....................................................................................................... 124
Bai Them 2:........................................................................................................ 126
Bai Them 3 : ....................................................................................................... 127
http://vndownloads.net
2 / 127
BAI 01
1. Y TNG THUAT TOAN
Xet 3 he so cua phng trnh trc het xet a=0 hoac a khac 0
a. TH1 : a=0
Ta xet them b =0 hay khac 0 . Neu a=0 ma b=0 th
phng trnh vo nghiem . Neu b khac 0 th giai bai toan
giong nh giai phng trnh bac nhat .
b.
TH2 : a khac 0
Ta tnh Delta va xet Delta a ra nghiem cua pt
Neu Delta < 0 : Phng trnh vo nghiem
Neu Delta = 0 : Phng trnh co nghiem kep
Neu Delta > 0 : Phng trnh co hai nghiem phan
biet .
2. Y NGHA MOT SO BIEN TRONG BAI :
a , b ,c la ba he so cua phng trnh .
Delta la bien dung e lu gia tr Delta sau khi tnh .
x1,x2 : la nghiem cua phng trnh neu pt co 2 nghiem phan biet
x : la nghiem neu phng trnh ch co mot nghiem ma thoi
3. BI GII :
#include<conio.h>
#include<stdio.h>
#include<math.h>
void main ()
{
clrscr();
float a,b,c,delta;
printf("ban hay nhap a,b,c vao ");
scanf("%f%f%f",&a,&b,&c);// cac he so cua pt bac 2
if (a!=0)
{
delta=b*b-4*a*c;
if (delta>0)
{
printf("phuong trinh co 2 nghiem\n");
printf("x1=%f",(-b-sqrt(delta))/(2*a));
printf("\n");
printf("x2=%f",(-b+sqrt(delta))/(2*a));
}
else //TH a<>0 va delta <=0
{
if (delta==0)
{
printf("phuong trinh co nghiem kep\n");
http://vndownloads.net
3 / 127
HET
BAI 02
http://vndownloads.net
4 / 127
a. Ta lam mot trng hp neu nhap vao khong hp le th bat nhap lai .
b. Ngc lai
Trc het ta quy oi ve so ngay het .
Ta xet t nam so 1 cho en nam nhap vao neu thoa
ieu kien nam nhuan th cong them 1
Ta xet t thang 1 cho en thang nhap vao va lan lt
cong vi so ngay tng ng ma thang o co ( v du :
thang 3 co 31 ngay ).
Sau khi c mot tong so co c bang cach thc hien 2
bc tren th ta cong so o vao so ngay nhap vao . Ta
c tong so ngay t ngay thang nam th nhat cho en
ngay thang nam hien tai
Theo quy luat cua ngay thang th c 7 ngay th lap lai mot th .
V the ta lay tong so ngay tnh c tat ca chia lay phan d cho 7 (
V du : neu c 0 th o la chu nhat )
3. BAI GIAI
#include <stdio.h>
#include <conio.h>
void main()
{
clrscr();
int ngay , thang , nam,s=0,x;
long t;
do
{
printf("Nhap vao Ngay :");
scanf("%d",&ngay);
printf("Nhap vao Thang :");
http://vndownloads.net
5 / 127
http://vndownloads.net
6 / 127
HET
BAI 03
1. Y TNG THUAT TOAN :
http://vndownloads.net
7 / 127
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();// nam so 0 khong duoc xet la nam nhuan
unsigned long ngay,nam=1;
int thang=1; //bat dau tu nam so 0
do
{
printf("Nhap vao so ngay : ");
scanf("%lu",&ngay);
}while(ngay<1);
while(ngay>=366)//dieu kien de xet so nam
{
if(((nam%4==0)&&(nam%100!=0))||(nam%400==0))
ngay-=366;
else
ngay-=365;
nam++;
if(ngay==0)
{
thang=12;
http://vndownloads.net
8 / 127
9 / 127
HT
BAI 04 :
1. Y TNG THUAT TOAN :
http://vndownloads.net
10 / 127
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
unsigned long nam;
int ngay, thang;
printf("Nhap vao ngay ");
scanf("%d",&ngay);
printf("Nhap vao Thang ");
scanf("%d",&thang);
printf("Nhap vao Nam ");
scanf("%lu",&nam);
switch(thang)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if((ngay>0)&&(ngay<32)&&(nam>0))
printf(" Ngay nay la ngay hop le");
else
printf(" Ngay nay la ngay khong hop le");
break;
case 2:
if(((nam%4==0)&&(nam%100!=0))||(nam%400==0))
{
if((ngay>0)&&(ngay<30))
printf(" Ngay nay la ngay hop le")
else
printf(" Ngay nay la ngay khong hop le");
}
else
{
if((ngay>0)&&(ngay<29))
printf(" Ngay nay la ngay hop le");
else
printf(" Ngay nay la ngay khong hop le");
}
break;
case 4:
case 6:
case 9:
case 11:
if((ngay>0)&&(ngay<31)&&(nam>0))
http://vndownloads.net
11 / 127
default :
}
getch();
}
HT
BAI 05 :
1. Y TNG THUAT TOAN :
http://vndownloads.net
12 / 127
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
char menu;
int a,b;
do
{
printf(" Bam phim 1 de ve hinh chu nhat \n");
printf(" Bam phim 2 de ve hinh Vuong \n");
printf(" Bam phim 3 de thoat chuong trinh \n");
printf(" Nhap vao mot so de thuc hien \n");
fflush(stdin);
scanf("%c",&menu);
/*-----------Ve Hinh Chu Nhat --------------------*/
if(menu=='1')
{
printf("Nhap vao chieu dai cua hinh ");
scanf("%d",&a);
printf("Nhap vao chieu rong cua hinh ");
scanf("%d",&b);
for(int i=0;i<a;i++)
printf("*");
printf("\n");
for(int j=0;j<b-2;j++)
{
printf("*");
for(int k=0;k<a-2;k++)
printf(" ");
printf("*\n");
http://vndownloads.net
13 / 127
HT
BAI 06
1. Y TNG THUAT TOAN :
t mt bin bng mt s nguyn t nh nht sau tng bin
ln 1
Gim s cn phn tch bng cch chia cho bin
Thc hin cho n khi no php chia bc b =1
http://vndownloads.net
14 / 127
HT
BAI 07
1. Y TNG THUAT TOAN :
http://vndownloads.net
15 / 127
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
clrscr();
float n;
int flag=0;
printf("Nhap vao mot so ");
scanf("%f",&n);
/*-------------------Cach 1 ------------------------------*/
for(float i=1;i<=n;i++)
{
if(n==i*i)
{
printf("La so chinh phuong");
flag=1;
break;
}
}
if(flag==0)
printf("Khong phai la so chinh phuong");
/*------------------Cach 2 -------------------------------*/
/*
if(sqrt(n)==(int)sqrt(n))
printf("La so chinh phuong ");
else
printf("Khong phai"); */
getch();
}
HT
http://vndownloads.net
16 / 127
BAI 08
1. Y TNG THUAT TOAN :
nh ngha : S nguyn t l s ch chia ht cho 1 v chnh n
iu kin l ln hn 1 .
i vi bi ny c rt nhiu cch lm nhng ti ngh cch sau l
cc bn d hiu nht
Cho mt vng lp for i chy t 2 cho n s cn
kim tra nu s chia ht cho i th m s ln
chia ht
http://vndownloads.net
17 / 127
9 n : l bin input
9 i : lu ng t 2 n n
9 dem : m s ln n chia ht cho i
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
unsigned long n;
int dem=0;
printf(" Ban hay nhap vao so ");
scanf("%lu",&n);
for(unsigned long i=2;i<=n;i++)
{
if(n%i==0)
dem++;
}
if(dem==1)
printf(" La so nguyen to");
else
printf(" khong la so nguyen to");
getch();
}
HT
BAI 09
1. Y TNG THUAT TOAN :
http://vndownloads.net
18 / 127
nhat la (x * y ) /b .
Neu ngc lai th c chung ln nhat la a va boi chung
nho nhat la ( x * y)/a
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
/* -------------tim Uoc so chung lon nhat ----------*/
unsigned long a,b,x,y;
printf("Nhap vao so thu nhat ");
scanf("%lu",&a);
printf("Nhap vao so thu hai ");
scanf("%lu",&b);
x=a ; y=b;
while((a!=0)&&(b!=0))
{
if(a>=b)
a-=b;
else
b-=a;
}
/* boi so chung nho nhat la tich cua hai so chia cho USCLN */
if(a==0)
{
printf(" Uoc so chung lon nhat la %lu \n" ,b);
printf(" Boi so chung nho nhat la %lu ",(x*y)/b);
}
else
{
printf("Uoc so chung lon nhat la %lu \n",a);
printf(" Boi so chung nho nhat la %lu ",(x*y)/a);
}
getch();
}
HT
http://vndownloads.net
19 / 127
BAI 10 :
1. Y TNG THUAT TOAN :
Trong bai nay th chu yeu la ta biet khong che va in ra lng dau *
cho phu hp vi nh dang cua hnh ma can in .
Thng la ta cho mot vong lap khong che so hang dau * in ra , mot
vong lap in ra so khoang trang va mot vong lap in ra dau * . Nhng
cung nen lu y hai vong lap nay phai ong thi lan nhau theo tng
nh dang hnh can in .
20 / 127
3. BAI GIAI :
// chuong trinh in tam giac ra man hinh //
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
int h,i,j,k,t;
printf("Nhap Vao Chieu Cao Cua Hinh Tam Giac h= ");
scanf("%d",&h);
printf("\n");
//-------------In Tam Giac Thu 1 & Thu 2---------------------//
for(t=0;t<2;t++)// in ra hai lan tam giac nhu nhau
{
for(i=1;i<=h;i++) // chay chieu cao cua hinh
{
for(j=1;j<=i;j++) // in ra so luong dau * tuong ung voi do dai
printf("*");
printf("\n");
}
printf("\n\n");
getch();
}
//------------In Tam Giac Thu 3-------------------------------//
printf("\n");
for(i=h;i>0;i--)// chay chieu cao cua hinh
{
for(j=0;j<i-1;j++) //in khoang trang
printf(" ");
for(k=j;k<h;k++) // roi moi in dau * xuong dong
printf("*"); //quay len in khoang trang tiep
printf("\n"); //khi i tang so luong khoang trang giam so luong * tang
}
http://vndownloads.net
21 / 127
http://vndownloads.net
22 / 127
BAI 11
1. Y TNG THUAT TOAN :
http://vndownloads.net
23 / 127
HT
BAI 12
1. Y TNG THUAT TOAN :
http://vndownloads.net
24 / 127
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
clrscr();
int i,nho=0,xuat,dem1=5,dem2=5,in,p=0,t;
long a,b,x,y,tmpb;
double s,k=1,kq=0,h=1;
do
{
printf("Ban Hay Nhap Vao So a= ");
scanf("%ld",&a);
printf("Ban Hay Nhap Vao So b= ");
scanf("%ld",&b);
http://vndownloads.net
25 / 127
}
else
{
xuat=dem1;
for(int i=1;i<=dem1;i++)
printf(" ");
printf("%ld\n",a);
for(int j=1;j<=(dem1+(dem1-dem2));j++)
printf(" ");
printf("%ld\n",b);
for(int m=1;m<=dem1;m++)
printf(" ");
for(int t=1;t<=dem1-5;t++)
printf("-");
printf("\n");
xuat=dem2;
for(int i=1;i<=dem2+(dem2-dem1);i++)
printf(" ");
http://vndownloads.net
26 / 127
while(tmpb>0)
{
demtmp=dem1-5; //gan lai do dai sau mot lan nhan
x=a;
// khong muon thay doi gia tri a
k=1;
// he so nhan len tung hang don vi
s=0;
// ket qua cua tung con so nhan voi so a
while(x>0)
{
t=(tmpb%10)*(x%10)+nho;//tung so b nhan voi tung so a cong nho
nho=t/10;
in=t%10;
if(((tmpb<10)||(a<10)||(tmpb%10<10))&&((tmpb*x+nho)>=10)&&(demtmp==1))
{
s+=t*k;//neu nhan voi chu so dau tien cua a > 10 thi in ra luon
nho=0;
}
else
s+=in*k;
// s la de luu lai gia tri cua bien in
k=k*10;
x=x/10;
//sau khi nhan giam x
demtmp--;
}
for(i=xuat;i>0;i--)
http://vndownloads.net
27 / 127
28 / 127
printf("%.0f",kq);
getch();
}
HET
BAI 13
1. Y TNG THUAT TOAN :
bai nay ta tnh tong cac so t 1 cho ti n , ta can co mot vong lap chay
t 1 cho en n sau o mot bien cong don khi vong lap chay .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Trong bai ch co bien n la bien in put
b. Bien s : la bien cong don khi vong for lap lai
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void main()
{
clrscr();
unsigned long s=0;
int n,i;
printf("Nhap vao so n= ");
scanf("%lu",&n);
http://vndownloads.net
29 / 127
HT
BAI 14
1. Y TNG THUAT TOAN :
a. Tng t nh bai 13 . nhan don nhng lu y oi vi phep nhan th co
gii han .
b. Bai nay se toi se trnh bay theo hai cach :
i. Cach 1 : tng t nh bai 13
ii. Cach 2 : Ta cung lam tng t nh cach tren nhng khi bien
nhan don ln hn 100000 th ta cong so mu vao la 5 va lay bien
s chia cho 100000 , vi thuat toan tren ban co the tnh c
1000 giai tha . ( lu y : bien s : kieu d lieu la double )
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Cach 1 : tng t
b. Cach 2 : co bien q : kieu d lieu la int dung e cong so mu khi s >
100000
3. BAI GIAI :
Cach 1 :
http://vndownloads.net
30 / 127
HT
Cach 2 :
#include<conio.h>
#include<stdio.h>
void main()
{
double
int i,q=0,n;
clrscr();
http://vndownloads.net
s=1;
printf("nhap n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
s*=i;
if(s>=100000)
{
s/=100000;
q=q+5;
}
31 / 127
getch();
}
HET
BAI 16
1. Y TNG THUAT TOAN :
bai nay ta dung cong thc phep lap Newton
X[ 0 ] = ( 1 + a ) /2
X[1] = (1/2)*(X[n] + a/X[n]) ; n= 1 , 2 ,
Sai so cho phep la tr tuyet oi cua
( X[n+1] X[n] ) / X[n] = 10 ^ -5
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Trong bai co
ham double can_2(double x) : dung e tra ve gia tr can bac 2 cua
mot so can tnh . ay c xem la bien x .
Trong ham con co bien kq : c xem tng ng nh phan t X[n+1]
trong cong thc tren
bien temp : c xem nh phan t X[ n ] trong cong thc tren .
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
#include<math.h>
http://vndownloads.net
32 / 127
http://vndownloads.net
33 / 127
BAI 17
1. Y TNG THUAT TOAN :
a. bai nay ta khong phai xuat cac phan t ngc tr lai ma van e la
phai thay oi c v tr cac phan t vi nhau theo e bai la ao
ngc ( VD : phan t au se ao thanh phan t cuoi ) .
b. Ta nen lu y ch cho mot vong lap chay t 0 cho en na so phan t
ma thoi sau o hoan oi v tr cua hai phan t vi nhau .
2. Y NGHA MOT SO BIEN TRONG BAI :
Trong bai co :
a. Bien a[ 100] : la mang e cha cac phan t .
b. Bien n : la bien input la so phan t trong mang .
c. Ham daomang(int a[100] , int n ) : nhiem vu ham nay la ao v tr cua
toan mang . trong ham co bien tmp dung e bac cau khi hai bien hoan
oi v tr cho nhau .
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[100],int n)
{
for(int i=0;i<n;i++)
{
printf("Nhap a[%d]",i);
scanf("%d",&a[i]);
}
http://vndownloads.net
34 / 127
HT
http://vndownloads.net
35 / 127
BAI 18
1. Y TNG THUAT TOAN :
a. Trc het ta phai viet mot ham kiem tra so nguyen to sau o viet
ham nhap mang .
b. So nguyen to la so ch chia het cho 1 va chnh no .
2. Y NGHA MOT SO BIEN TRONG BAI
Trong bai gom :
i. a[100] : mang toi a 100 phan t
ii. n : so phan t trong mang
iii. Ham int ktnt(int a[100] , int n) la ham kiem tra va tra ve gia tr
1 neu la so nguyen to va ngc lai tra ve 0
Trong ham co bien dem : dung e kiem soat so lan chia het
cho I neu la 1 lan th la so nguyen to ( v I chay t 2).
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
int ktnt(int x)
{
int dem=0;
for(int i=2;i<=x;i++)
{
if(x%i==0)
dem++;
http://vndownloads.net
36 / 127
HT
http://vndownloads.net
37 / 127
BAI 19
1. Y TNG THUAT TOAN :
bai nay theo y tng cua toi ta nen cho ho nhap vao tuy y phan t au
tien sau o da tren phan t o kiem soat va khong che theo e bai
i. TH1 : Kiem tra neu pt au tien la le th khi I chan phai la so
chan va I le phai la so le .
ii. TH2 : Kiem tra neu pt au tien la chan th khi I chan phai la
so le va I le phai nhap so chan .
2. Y NGHA MOT SO BIEN TRONG BAI :
a[100] : la mang phan t toi a la 100 k t
n : s phn t ca mng
I : l bin chy ca mt s hm for
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
int kt_chan_le(int x)
{
if(x%2==0)
return 1;
else
return 0;
}
void nhapmang(int a[100],int n)
{
printf("Nhap a[0]"); // Nhap va xet ngay so dau tien cua mang
http://vndownloads.net
38 / 127
http://vndownloads.net
39 / 127
HT
BAI 20
1. Y TNG THUAT TOAN :
a. bai nay ta ch can xuat ra theo kieu hnh ma tran la c
b. Ta ch nhap vao ma tran vi n dong va m cot sau o cho xuat ra ng
vi gia tr cot ta xuat tng ng ra cac gia tr dong ( VD : ma tran 3
x 3 th 00 , 01 , 11 ,30 , 31 , 32 ) Ta se xuat c ma tran chuyen
v cua ma tran nhap vao .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Trong bai ch co mang hai chieu a[ 50 ][50] cha toi a 50 dong va 50
cot
b. n : so dong cua ma tran
c. m : so cot cua ma tran
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[50][50],int n,int m)
{
printf("Moi ban nhap mang vao day \n");
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
printf("a[%d][%d]",i,j);
scanf("%d",&a[i][j]);
}
}
}
void xuat_1(int a[50][50],int n,int m)
{
printf("Ma tran vua nhap la\n");
for(int i=0;i<n;i++)
http://vndownloads.net
40 / 127
HET
http://vndownloads.net
41 / 127
BAI 21 :
1. Y TNG THUAT TOAN :
bai nay sau khi nhap ma tran ta gan cac phan t ve mang 1 chieu sau
o sap xep tang dan theo dang xoan oc bang cach gan cac phan t
mang b cho ma tran a .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Trong bai bao gom cac bien toan cuc:
i. a[50][50] : mang cha toi a 50 dong 50 cot
ii. b[2500] :cha toi a 2500 phan t
iii. k : so phan t cua mang b
iv. n , m : so dong va so cot cua ma tran a
b. Trong ham void ganlai_2c() : co nhiem vu gan lai mang a theo hnh
xoan oc co :
i. Bien tmpcot = so cot -1 ( v ta cho I chay t 0 )
ii. Bien tmpdong= so dong -1 ( tng t )
iii. Bien ptb : ngha la phan t cua b se gan cho ma tran a va v tr
se tang len sau khi gan ( ngha la chay len phan t ke tiep ) .
iv. dem : em so lan gan e khong che viec (VD : ma tran 3 x 4 th
ch gan 12 lan ma thoi )
v. ax : la bien tang dong vao ben trong , no phu thuoc vao x thay
oi theo x e tang ch so cac bien i sau vao ma tran .
vi. Dong for th nhat
Gan cho dong th nhat
vii. Dong for th hai :
1. Chay t tmpdong : la bien bien cot co nh
j : chay t 1 v a sap xep canh th nhat roi , j
tang se gan t t ma tran b vao cot bien .
http://vndownloads.net
42 / 127
http://vndownloads.net
43 / 127
printf("\n");
}
/* -----------Gan Sang Mang 1 chieu va sap xep tang dan ---------*/
void gan1c()
{
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
b[k++]=a[i][j];
}
}
void sapxep()
{
int tmp;
for(int i=0;i<k-1;i++)
for(int j=i+1;j<k;j++)
{
if(b[i]>b[j])
{
tmp=b[i];
b[i]=b[j];
b[j]=tmp;
}
}
}
/*-----------Gan lai mang 2 chieu luc dau && Xuat-----------------------*/
void ganlai_2c()
{
int x=0,tmpcot=m-1,tmpdong=n-1,ptb=0,ax,dem=0;
while(dem<n*m)//Lap lai qua trinh gan cho den het ma tran
{
ax=x;
for(int i=ax;i<=tmpcot;i++) //gan vao bien 1 hang canh thu 1
{
a[ax][i]=b[ptb++] ;
dem++;
http://vndownloads.net
44 / 127
}
for(int j=ax+1;j<=tmpdong;j++) //gan vao bien2 cot canh thu 2
{
a[j][tmpcot]=b[ptb++];
dem++;
}
if(dem==n*m)
break;
for(int z=tmpcot-1;z>=ax;z--) // gan vao bien 3 hang canh thu 3
{
a[tmpdong][z]=b[ptb++];
dem++;
}
for(int t=tmpdong-1;t>ax;t--) // gan vao bien 4 hang canh thu 4
{
a[t][ax]=b[ptb++];
dem++;
}
x++;
tmpcot--; //giam vi tri tung bien de thanh soan oc
tmpdong--;
}
void xuata()
{
textcolor(-4);
cprintf("Mang sau khi sap xep la :\n");
printf("\n\n");
for(int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{
//textcolor(4);
printf("%4d",a[i][j]);
}
printf("\n\n");
}
}
/*--------------------------------MAIN--------------------------------*/
http://vndownloads.net
45 / 127
HET
BAI 22
1. Y TNG THUAT TOAN :
a. bai nay ta xet tng phan t mot sau o em so sanh vi cac phan t
trong mang
b. e thc hien bai toan tren ta can co hai vong lap
i. Vong lap 1 chay t phan t au tien cho en phan t ke cuoi
ii. Vong lap 2 chay t phan t sau v tr cua phan t vong lap th
1 sau o so sanh .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. a[100] : mang 1 chieu toi a la 100 phan t
b. n : so phan t trong mang .
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[100],int n)
{
for(int i=0;i<n;i++)
{
printf("a[%d]",i);
scanf("%d",&a[i]);
}
}
void sapxep(int a[100],int n)
{
int tmp;
http://vndownloads.net
46 / 127
HT
http://vndownloads.net
47 / 127
BAI 23 :
1. Y TNG THUAT TOAN :
a. Trc het viet ham tm so nguyen to .
b. Cho vong lap e xac nh c so nguyen to au tien va gan cho no la
ln nhat .
c. Sau o tao mot vong lap quet het cac phan t va kiem tra neu thoa
i. Ln hn so nguyen to c xac nh luc au va
ii. La so nguyen to
d. Ta se tm c so nguyen to ln nhat .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. bai nay ch co ham int ktnt(int x ) : trong o x la oi so can kiem tra
i la bien chay , dem : la em so lan chia het cho i
b. Ham void search(int a[100] , int n ) , trong o :
i. max : la bien dung e gan gia tr la so nguyen to ln nhat
ii. vt : la tm v tr cua so nguyen to ln nhat
c. Ham main() co :
i. a[100] : mang toi a co 100 phan t
ii. n : so phan t trong mang
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[100],int n)
{
for(int i=0;i<n;i++)
{
printf("a[%d]",i);
scanf("%d",&a[i]);
}
}
int ktnt(int x)
{
int dem=0;
for(int i=1;i<=x;i++)
http://vndownloads.net
48 / 127
if(x%i==0)
dem++;
}
if(dem==2)
return 1;
else
return 0;
}
void xuatmang(int a[100],int n)
{
for(int i=0;i<n;i++)
printf("%3d",a[i]);
}
void search(int a[100],int n)
{
int max=0,vt;
// vi so nguyen to luon lon hon 0
for(int i=0;i<n;i++)
{
if(ktnt(a[i]))// neu kiem tra dung thi gan cho max
{
if(a[i]>max) // neu phan tu thu i lon hon max thi gan cho max
{
max=a[i];
vt=i+1;
}
}
}
if(max==0)
printf("Trong mang khong co so nguyen to ");
else
printf(" \n So nguyen to lon nhat trong mang la %d tai phan tu so %d" , max,vt);
}
http://vndownloads.net
49 / 127
void main()
{
clrscr();
int a[100],n;
printf(" Nhap so phan tu cua mang ");
scanf("%d",&n);
nhapmang(a,n);
xuatmang(a,n);
search(a,n);
getch();
}
BAI 24
http://vndownloads.net
50 / 127
http://vndownloads.net
51 / 127
http://vndownloads.net
52 / 127
HT
BAI 25
1. Y TNG THUAT TOAN :
http://vndownloads.net
53 / 127
http://vndownloads.net
54 / 127
55 / 127
BAI 26
1. Y TNG THUAT TOAN :
Tng t bai so nguyen to ln nhat bai 23 . Nhng bai nay ta can tm
ra so am au tien sau o t v tr so am o quet cho en het mang va tm
ra so am ln nhat .
2. Y NGHA MOT SO BIEN TRONG BAI :
http://vndownloads.net
56 / 127
http://vndownloads.net
57 / 127
void main()
{
clrscr();
int a[100],n;
printf(" Nhap so phan tu cua mang ");
scanf("%d",&n);
nhapmang(a,n);
xuatmang(a,n);
search_am(a,n);
getch();
}
HT
BAI 27
1. Y TNG THUAT TOAN :
bai nay ta can em so phan t cua mot mang con tang bang cach va
xet va em sau o lu lai v tr cua phan t bat au xet va lu lai v tr
cua phan t ket thuc mang con tang . e thc hien c nh vay ta can
co mot bien lu lai so phan t cua mang con tang sau o neu co mang
http://vndownloads.net
58 / 127
59 / 127
60 / 127
getch();
HET
BAI 28
1. Y TNG THUAT TOAN :
a. Ta cung can co mot ham kiem tra nguyen to tng t nh cac bai
trc e xet tng phan t . Neu tai o la so nguyen to th ta phai thc
hien ham di mang i mot k t .
b. Sau khi di ta gan tai v tr pha sau phan t o la 5
c. Lu y cho vong lap cong them 2 hi a gan
2. Y NGHA MOT SO BIEN TRONG BAI :
http://vndownloads.net
61 / 127
62 / 127
void main()
{
clrscr();
int a[100],n;
printf(" Nhap so phan tu cua mang ");
scanf("%d",&n);
nhapmang(a,n);
xuatmang(a,n);
insert(a,n);
http://vndownloads.net
63 / 127
printf("\n Mang sau khi chen voi dieu kien de bai la \n");
xuatmang(a,n);
getch();
HET
BAI 29
1. Y TNG THUAT TOAN :
a. bai nay ta ch can em so lan xuat hien cua so au tien la bao nhieu
lan sau o gan gia s cho no la ln nhat ,roi quet tren mang neu gap
phan t nao xuat hien nhieu hn th ta gan cho no la ln nhat .
b. Trc het ta can co mot ham em phan t , sau o la viet mot ham
em kiem soat , neu gap phan t giong phan t a em roi th khong
em na ngc lai th em va gan gia s la ln nhat nh a noi tren
2. Y NGHA MOT SO BIEN TRONG BAI :
http://vndownloads.net
64 / 127
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[100],int n)
{
for(int i=0;i<n;i++)
{
printf("a[%d]",i);
scanf("%d",&a[i]);
}
}
int ktnt(int x)
// Kiem tra co phai la so ngto khong
{
int dem=0;
for(int i=1;i<=x;i++)
{
http://vndownloads.net
65 / 127
void main()
{
clrscr();
int a[100],n;
printf(" Nhap so phan tu cua mang ");
scanf("%d",&n);
nhapmang(a,n);
xuatmang(a,n);
xoa_ngto(a,n);
printf("\n Mang sau khi xoa voi dieu kien de bai la \n");
xuatmang(a,n);
getch();
}
HT
http://vndownloads.net
66 / 127
BAI 30
1. Y TNG THUAT TOAN :
a. bai nay cung tng t nh nhng bai tren ta cung can co mot ham
kiem tra so o co phai la so nguyen to hay khong .
b. Neu phai th tai v tr o di mang tr ve mot phan t .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Ham kiem tra so nguyen to tng t nh li giai thch cua nhng bai
tren
b. Ham void xoa_ngto( int a[100] , int &n ) : lam nhiem vu xoa cac so
nguyen to co trong mang
c. Ham main() gom cac bien :
i. a[100]: mang toi a co 100 phan t
ii. n : so phan t cua mang
http://vndownloads.net
67 / 127
http://vndownloads.net
68 / 127
void main()
{
clrscr();
int a[100],n;
printf(" Nhap so phan tu cua mang ");
scanf("%d",&n);
nhapmang(a,n);
xuatmang(a,n);
xoa_ngto(a,n);
printf("\n Mang sau khi xoa voi dieu kien de bai la \n");
xuatmang(a,n);
getch();
}
HT
BAI 31
1. Y TNG THUAT TOAN :
bai nay ta ch can viet ham sap xep cac so dng bang cach co hai
vong lap
i. Vong lap th nhat : lam nhiem vu quet cac phan t t phan t
au tien cho en phan t ke cuoi
ii. Vong lap th hai : ng vi cac gia tr phan t cua vong lap th
nhat vong lap th hai quet en het mang sau o lam nhiem vu
hoan oi neu thoa ieu kien .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. Trong bai co :
i. a[100] : mang toi a 100 phan t
ii. n : so phan t trong mang
3. BAI GIAI :
http://vndownloads.net
69 / 127
http://vndownloads.net
70 / 127
HET
BAI 32
1. Y TNG THUAT TOAN :
a. bai nay ta nen u tien lay phan t gan vi x ma ng trc x
b. Ta phai co mot ham lam nhiem vu tm phan t gan vi x nhat .
2. Y NGHA MOT SO BIEN TRONG BAI :
a. ham void search_pt(int a[50][50] , int n ,int m , int x ) gom co :
i. min : la bien cha hieu cua so x va phan t a[0][0] .
ii. y : la bien cha hieu gia x va a[i][j] .
iii. pt : la bien cha gia tr cua phan t gan vi x nhat .
b. ham main() :
i. a[50][50] : mang co toi a 50 dong 50 cot
ii. n , m : la so dong va so cot
iii. x : la bien c input .
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
#include<math.h>
http://vndownloads.net
71 / 127
void main()
{
clrscr();
http://vndownloads.net
72 / 127
HT
BAI 33 :
1. Y TNG THUAT TOAN :
a. bai nay ta ch can ve mot ma tran vuong cap 4 chang han sau o
quan sat cac bien chay thay oi roi tm ra quy luat cua no .
b. V du muon tnh tong cac phan t tren ng cheo chnh chang han
trong ma tran cap 4 th cac phan t cac v tr nh sau ( 00 ,11 , 22 ,
33 ) th ta cho vong lap chay t 0 cho en n-1 sau o khai bao mot
bien cong don lai cac phan t a[i][i] khi vong lap chay .
2. Y NGHA MOT SO BIEN TRONG BAI :
Trong bai ch co mang a[50][50] : toi a 50 dong 50 cot , n : la cap ma
tran
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
/*----------------Nhap Mang & Xuat Mang -----------------*/
void nhapmang(int a[50][50],int n)
{
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
printf("a[%d][%d]",i,j);
scanf("%d",&a[i][j]);
http://vndownloads.net
73 / 127
/*--Sau Day la cac ham tinh tong tren duoi duong cheo chinh (ca duong cheo)--*/
void tongtg_tren0(int a[50][50],int n)
{
int sum=0;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
{
sum+=a[i][j];
}
printf("Tong Tam Giac tren duong cheo chinh khong ke dcheo la %d \n",sum);
}
void tongtg_tren1(int a[50][50],int n)
{
int sum=0;
for(int i=0;i<n;i++)
for(int j=i;j<n;j++)
{
sum+=a[i][j];
}
printf("Tong Tam Giac tren duong cheo chinh ke ca dcheo la %d\n",sum);
}
void tongtg_duoi0(int a[50][50],int n)
{
int sum=0;
for(int i=1;i<n;i++)
for(int j=0;j<i;j++)
{
sum+=a[i][j];
http://vndownloads.net
74 / 127
http://vndownloads.net
75 / 127
HT
http://vndownloads.net
76 / 127
BAI 34
1. Y TNG THUAT TOAN :
a. Trc het ta phai xac nh chuyen mang sang may dong may cot .
b. Sau o mi gan t mang 1 chieu sang mang 2 chieu .
2. Y NGHA MOT SO BIEN TRONG BAI :
Trong bai ch co cac bien :
i. a[100] : mang 1 chieu co 100 phan t
ii. c[100][100] : mang 2 chieu co toi a la 100 dong va 100 cot
iii. x: la so phan t tren mang 1 chieu
iv. n , m : la cac bien input chnh la so dong va so cot cua ma tran
3. BAI GIAI :
#include<conio.h>
#include<stdio.h>
void nhap(int a[100],int n)
{
for(int i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[100],int n)
{
printf("ta co mang:\n");
for(int i=0;i<n;i++)
{
printf("%5d",a[i]);
}
printf("\n\n");
http://vndownloads.net
77 / 127
HT
http://vndownloads.net
78 / 127
BAI 35
1. Y TNG THUAT TOAN :
Trong bai nay trc het ta kiem tra tren tng hang cua ma tran coi co
so 0 hay khong :
i. Co so 0 be khoi vong for xet tiep cac ieu kien e gan d
nhien la khong thoa .
ii. Neu dong o khong co so 0 th gan cho ma tran b
2. Y NGHA MOT SO BIEN TRONG BAI :
Trong bai co ham :
i. Void tao_mtb( int a[50][50] ,int b[50][50] , int &l , int n ,int m , int
&flag ) : lam nhiem vu tao ra ma tran b trong ham co :
1. p : la bien chay dong cua ma tran b .
2. vong for th nhat chay tren dong cua ma tran a .
3. vong for th hai ng vi vong for th nhat e chay tren
tng cot cua ma tran a
4. Neu vong for th hai chay en het ( ngha la khong co
so 0 tren dong hien tai ) th vong for th ba se gan ma
dong hien tai vao ma tran b .
ii. ham main() co :
1. a[50][50] : la mang co toi a la 50 dong va 50 cot .
2. n,m : la so dong va so cot cua ma tran a .
3. l : la so dong cua ma tran b
4. flag : la bien la c e biet b co nhan c gia tr nao hay
khong neu khong th khong xuat ra ma tran b .
3. BAI GIAI
http://vndownloads.net
79 / 127
#include<stdio.h>
#include<conio.h>
#include<math.h>
/*----------------Nhap Mang & Xuat Mang -----------------*/
void nhapmang_a(int a[50][50],int n,int m)
{
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
printf("a[%d][%d]",i,j);
scanf("%d",&a[i][j]);
}
}
void xuatmang_a(int a[50][50],int n,int m)
{
printf(" Ma Tran Luc Dau La \n");
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
printf("%3d",a[i][j]);
}
printf("\n");
}
printf("\n\n\n");
}
/*---------Khoi Tao mang b bang cach xoa cac dong chua so 0 o mang a di ---*/
void tao_mtb(int a[50][50],int b[50][50],int &l,int n,int m,int &flag)
{
int i,j,p=0;// bien flag muc dich de biet ma tran b co gia tri hay k
for(i=0;i<n;i++)
{
for(j=0;j<m;j++) // vong for kiem tra tren tung hang co so 0 hay khong
{
http://vndownloads.net
80 / 127
HT
http://vndownloads.net
81 / 127
BAI 36
1. Y TNG THUAT TOAN :
a. bai nay ta xet mot phan t roi so sanh het cac phan t trong mang
sau o oi cho , van e cho la ban phai xet phan t nh the nao va
quet theo tuan t nao .
b. Bai nay ta thc hien bang cach tao ra hai vong lap long nhau sau o
quet t phan t o cho het mang nhng quet theo tng cot . Nhng
lu y la v du nh mot ma tran 3 x 4 th gia s nh hai vong lap tren
xet ti phan t 03 th ta phai so sanh vi phan t th 01 tr i ( 11 , 21
, 31 .. 02 , 12 , 22,32 .) .
2. Y NGHA MOT SO BIEN TRONG BAI :
Trong bai co ham void sapxep(int a[50][50] , int n , int m )gom co cac bien
nh sau :
i. t : la bien nh v tr dong e xet en v tr ke tiep
ii. p : la bien chay quet tren tng cot ma ng mot gia tr p se
chay vong lap for k cho en khi k = n-1 hoan oi neu thoa va
xet tiep .
3. BAI GIAI :
#include<stdio.h>
#include<conio.h>
#include<math.h>
/*----------------Nhap Mang & Xuat Mang -----------------*/
void nhapmang(int a[50][50],int n,int m)
{
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
printf("a[%d][%d]",i,j);
scanf("%d",&a[i][j]);
}
http://vndownloads.net
82 / 127
http://vndownloads.net
83 / 127
HT
http://vndownloads.net
84 / 127
BAI 37
1. Y TNG THUAT TOAN :
bai nay e viet cac ham :
i. Xoa au chuoi : trc het ta phai xac nh la co khoang trang
hay khong va neu co th co may khoang trang e ta di mang
k t ve vi so lan di bang so khoang trang . Sau o gan tai v
tr n-1 so khoang trang la k t \0 .
ii. Xoa gia chuoi : Neu gap hai khoang trang lien nhau th ta xoa
i mot khoang trang bang cach la di tai v tr khoang trang
o ve 1 k t .
iii. Xoa cuoi chuoi : Nu gp k t trng cui chui th ta di k t
\ 0 v 1 k t .
2. Y NGHA MOT SO BIEN TRONG BAI :
N : la o dai cua chuoi
3. BAI GIAI :
#include<conio.h>
#include<stdio.h>
#include<string.h>
void nhap(char *str)
{
gets(str);
}
void xuat(char *str)
{
puts(str);
}
void xoadauchuoi(char *&str,int &n)
{
int i=0,dem=0;
if(str[0]==' ')
{
while(str[i]==' ')
{
dem++;
i++;
}
for(int j=dem;j<n;j++)
http://vndownloads.net
85 / 127
str[j-dem]=str[j];
}
str[j-dem]='\0';
n-=dem;
}
else
return;
}
void xoagiuachuoi(char *&str,int &n )
{
for(int i=0;i<n;i++)
{
while((str[i]==' ')&&(str[i+1]==' '))
{
for (int j=i;j<n;j++)
{
str[j]=str[j+1];
}
n-=1;
}
}
86 / 127
clrscr();
char str[32768];
printf("Nhap chuoi ki tu ban dau \n " );
nhap(str);
int n=strlen(str);
printf("Chuoi ban dau co %d ki tu \n\n ",n);
xoadauchuoi(str,n);
xoagiuachuoi(str,n);
xoacuoichuoi(str,n);
printf("Chuoi sau khi thay doi la \n\n ");
xuat(str);
printf("Con lai %d ki tu " ,n);
getch();
HET
Bai 38 :
1. Y TNG THUAT TOAN :
http://vndownloads.net
87 / 127
88 / 127
}
tmp[x]='\0'; //gan ki tu het chuoi cho chuoi tmp de so sanh voi s2
p=strcmp(s2,tmp);
if(p==0)
dem++;
if((n==m)||(m-i<n)) //se ngung neu so ki tu con lai cua s1 nho hon s2
break;
// khong the so sanh bang duoc
x=0;
i++;
}
}
void main()
{
clrscr();
char s1[100],s2[100],tmp[100];
int n,m,dem=0;
nhapchuoi1(s1);
m=strlen(s1); //Do dai cua chuoi s1
nhapchuoi2(s2);
n=strlen(s2); // Do dai cua chuoi s2
if(m>=n)
{
demchuoi(s1,s2,tmp,n,m,dem);
if(dem==0)
printf("Khong co chuoi s2 trong s1 ");
else
printf("So lan xuat hien cua chuoi s2 trong s1 la %d lan " ,dem);
}
else
printf("\nKhong co Chuoi s2 trong s1 ");
getch();
}
Bai 39 :
1. Y TNG THUAT TOAN :
http://vndownloads.net
89 / 127
90 / 127
Bai 40
#include<string.h>
#include<conio.h>
#include<stdio.h>
//---------------------HAM NHAP CHUOI --------------------------------------http://vndownloads.net
91 / 127
92 / 127
Bai 41
93 / 127
gets(str);
}
//--------------------XUAT CHUOI---------------------------------------------void xuat(char *str)
{
puts(str);
}
//---------------------DEM SO TU TRONG CHUOI ---------------------------------int dem(char *str)
{
int dem;
if (str[0]==' ')
dem=0;
else
dem=1;
for (int i=0;i<strlen(str);i++)
if((str[i]==' ')&&(str[i+1]!=' '))
dem+=1;
return dem;
}
http://vndownloads.net
94 / 127
HET
http://vndownloads.net
95 / 127
Bai 42
#include<conio.h>
#include<stdio.h>
#include<math.h>
struct sophuc
{
float thuc;
float ao;
};
void nhap(sophuc &c)
{
printf("ban hay nhap vao phan thuc ");
scanf("%f",&c.thuc);
printf("ban hay nhap vao phan ao ");
scanf("%f",&c.ao);
}
void cong(sophuc a,sophuc b)
{
sophuc c;
c.thuc=a.thuc+b.thuc;
c.ao=a.ao+b.ao;
printf("\n\n\nTong hai so phuc %f",c.thuc);
if(c.ao<0)
printf("%.2fi",c.ao);
else
printf("+%.2fi",c.ao);
}
void tru(sophuc a,sophuc b)
{
sophuc c;
c.thuc=a.thuc-b.thuc;
c.ao=a.ao-b.ao;
printf("\nHieu hai so phuc %.2f",c.thuc);
if(c.ao<0)
printf("%.2fi",c.ao);
else
printf("+%.2fi",c.ao);
http://vndownloads.net
96 / 127
97 / 127
HET
Bai 43
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
http://vndownloads.net
98 / 127
99 / 127
c.tu=a.tu*b.mau+a.mau*b.tu;
c.mau=a.mau*b.mau;
x=ucln(c.tu,c.mau);
c.tu/=x;
c.mau/=x;
return c;
}
else
}
exit(1);
100 / 127
101 / 127
HET
Bai 44 :
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct sinhvien
{
int mssv,phai;
char hoten[30];
float dtb;
http://vndownloads.net
102 / 127
103 / 127
sv[j]=tmp;
}
}
void main()
{
clrscr();
sinhvien sv[30];
int n;
printf("\n\nNhap vao so sinh vien can nhap ");
scanf("%d",&n);
nhap(sv,n);
sapxep(sv,n);
xuat(sv,n);
getch();
}
http://vndownloads.net
104 / 127
HET
Bai 45 :
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct sinhvien
{
int mssv,phai;
char hoten[30];
float dtb;
};
void nhap(sinhvien sv[30],int n)
http://vndownloads.net
105 / 127
float tmp;
for(int i=0;i<n;i++)
{
printf("\nNhap thong tin sinh vien thu %d ", i+1);
printf("\nMa so sinh vien ");
scanf("%d",&sv[i].mssv);
printf("Ho Ten Sinh vien ");
fflush(stdin);
gets(sv[i].hoten);
printf("Phai ");
scanf("%d",&sv[i].phai);
printf("Diem Trung Binh ");
scanf("%f",&tmp);
sv[i].dtb=tmp;
}
106 / 127
}
void timsv_ms(sinhvien sv[30] , int maso , int n)
{
for(int i=0;i<n;i++)
{
if(sv[i].mssv==maso)
{
printf("%d\t",sv[i].mssv);
printf("%s",sv[i].hoten);
int z=strlen(sv[i].hoten);
for(int j=z;j<=24;j++)
printf(" ");
printf("%d",sv[i].phai);
printf("\t%.2f\n",sv[i].dtb);
}
107 / 127
108 / 127
xuat(sv,n);
getch();
}
Bai 46 :
#include<stdio.h>
#include<conio.h>
void docfile(char x[30],unsigned long &dodai)
{
char ch;
// Bien dem ki tu
FILE *fp;
fp=fopen(x,"r");
if(fp==NULL)
("Khong The Mo Tap Tin ");
else
{
while((ch=getc(fp))!=EOF) //neu gap ki tu cuoi file thi ket thuc
{
putc(ch,stdout); //doc tung ki tu roi xuat ra man hinh
dodai++;
}
http://vndownloads.net
109 / 127
}
fclose(fp);
printf("\n\nDo dai cua File la %lu ",dodai);
}
void main()
{
clrscr();
unsigned long dodai=0;
char x[30]="bt46.txt";
docfile(x,dodai);
getch();
}
HET
Bai 47
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct date
// khai bao bien cau truc ngay thang nam
{
int ngay,thang;
unsigned long nam;
};
struct nhanvien // dinh nghia kieu du lieu nhan vien bao gom
{
int msnv,phai;
char hoten[30];
char diachi[100];
char phone[10];
float luong;
date ngaybd,birthday;
http://vndownloads.net
110 / 127
http://vndownloads.net
111 / 127
hang
for(int i=0;i<n;i++)
{
fprintf(fp,"%d\t",nv[i].msnv);
fputs(nv[i].hoten,fp);
int z=strlen(nv[i].hoten);
for(int j=z;j<=25;j++) //xuat ra khoang trang de canh trai thang
fprintf(fp," ");
fprintf(fp,"%d\t",nv[i].phai);
fprintf(fp,"%d/%d/%lu\t",nv[i].birthday.ngay,nv[i].birthday.thang,nv[i].bir
thday.nam);
fputs(nv[i].diachi,fp);
http://vndownloads.net
112 / 127
http://vndownloads.net
113 / 127
printf("%d/%d/%lu\t",nv[i].birthday.ngay,nv[i].birthday.thang,nv[i].birthd
ay.nam);
puts(nv[i].diachi);
z=strlen(nv[i].diachi);
for(int k=z;k<=35;k++)
printf(" ");
puts(nv[i].phone);
printf("\t");
printf("%d/%d/%lu\t",nv[i].ngaybd.ngay,nv[i].ngaybd.thang,nv[i].ngaybd.n
am);
tmp=nv[i].luong;
printf("%.2f",tmp);
printf("\n");
}
/*-------------------------Ham sua thong tin nhan vien ---------------*/
void repair(nhanvien nv[50],int stt)
{
float tmp;
printf("\nBan Can sua Thong Tin cua Nhan Vien Thu %d ",stt);
printf("\nMa so Nhan vien ");
scanf("%d",&nv[stt-1].msnv);
printf("Ho Ten Nhan vien ");
fflush(stdin);
gets(nv[stt-1].hoten);
printf("Phai ");
scanf("%d",&nv[stt-1].phai);
printf("nhap vao ngay thang nam sinh ");
scanf("%d",&nv[stt-1].birthday.ngay);
scanf("%d",&nv[stt-1].birthday.thang);
scanf("%lu",&nv[stt-1].birthday.nam);
printf("Dia chi cua Nhan vien thu %d",stt);
fflush(stdin);
gets(nv[stt-1].diachi);
http://vndownloads.net
114 / 127
}
/*---------------Tim luong thap nhat -----------------------------*/
float min_luong(nhanvien nv[50],int n)
{
float min=nv[0].luong;
for(int i=1;i<n;i++)
{
if(nv[i].luong<min)
min=nv[i].luong;
}
return min;
}
/*---------------Tim luong trung binh -----------------------------*/
float average_luong(nhanvien nv[50],int n)
{
float luongtb,sum;
for(int i=0;i<n;i++)
{
sum+=nv[i].luong;
}
luongtb=sum/n;
return luongtb;
}
http://vndownloads.net
115 / 127
116 / 127
void main()
{
clrscr();
nhanvien nv[50];
char x[30]="bt47.txt",ch;
int n,stt;
printf("nhap so luong nhan vien cong ty ");
scanf("%d",&n);
nhap(nv,n);
while(1) // sua va luu file cho den khi nao bam so phim so 0
{
savefile(nv,n,x);
printf("Ban can sua thong tin k - Nhan phim so 0 de
thoat Nhan phim bat ki de tiep tuc \n");
ch=getch();
if(ch=='0')
break;
printf("\nBan can sua thong tin cua nhan vien thu
may");
scanf("%d",&stt);
repair(nv,stt);
}
printf("\n Luong thap nhat cua co quan la %.2f
",min_luong(nv,n));
printf("\n Luong trung binh la %.2f:",average_luong(nv,n));
In_danhsach(nv,n);
in_list_max(nv,n);
getch();
http://vndownloads.net
117 / 127
http://vndownloads.net
118 / 127
Bai 48 :
#include<conio.h>
#include<stdio.h>
#include<string.h>
/*-------------Ham dem so lan xuat hien cua mot ki tu -----------*/
119 / 127
getch();
#include<conio.h>
#include<stdio.h>
#include<string.h>
Bai 49 :
120 / 127
while(x!= NULL)
{
dem+=count_sotu(str);
x=fgets(str,255,fp);
}
fclose(fp);
return dem;
void main()
{
clrscr();
char s[50]="bt49.txt";
printf(" Trong file co %ld tu",count_tu(s));
getch();
}
http://vndownloads.net
121 / 127
Bai 50 ;
#include<conio.h>
#include<stdio.h>
#include<string.h>
void ghi(char s[50],char s1[50],char s2[50])
{
FILE *fp=fopen(s1,"rt");
FILE *fq=fopen(s2,"rt");
FILE *fk=fopen(s,"a+t");
char c[255];
int n;
//
char *x=fgets(c,255,p);
/*
while(x!=NULL)
{
fputs(c,q);
x=fgets(c,255,fp);
} */
char ch; int dem=1;
while((ch=getc(fp))!=EOF) //neu gap ki tu cuoi file thi ket thuc
{
fprintf(fk,"%c",ch);
}
fclose(fp);
while((ch=getc(fq))!=EOF)
{
if(dem==1)
{
if(ch>65&&ch<97)
{
fprintf(fk,"\n");
fprintf(fk,"%c",ch);
dem++;
}
else
fprintf(fk,"%c",ch);
dem++;
}
else
http://vndownloads.net
122 / 127
}
void main()
{
clrscr();
char s1[50]="bt50a.txt";
char s2[50]="bt50b.txt";
char s[50]="filenoi.txt";
ghi(s,s1,s2);
getch();
}
http://vndownloads.net
123 / 127
http://vndownloads.net
124 / 127
}
http://vndownloads.net
125 / 127
}
void main()
{
int a[10][10],n;
clrscr();
printf("nhap n:");
scanf("%d",&n);
nhap(a,n);
xuat(a,n);
yenngua(a,n);
getch();
}
Bai Them 2:
#include<conio.h>
#include<stdio.h>
long double gt(int n)
{
int kq=1,q=0,i;
for(i=1;i<=n;i++)
{
kq*=i;
if(kq>=100000)
{
kq/=100000;
q+=5;
}
}
}
void main()
{
return kq;
http://vndownloads.net
126 / 127
Bai Them 3 :
http://vndownloads.net
127 / 127