Tải bản đầy đủ (.docx) (50 trang)

Đề cương 24 bài tập có lời giải Lập trình C

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (122.27 KB, 50 trang )

PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

LẬP TRÌNH C
MỤC LỤC

1
PHOTO ĐỨC HẠNH

1

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 1:chen x vao cuoi mang
// sap xep giam dan cac so nguyen to
#include<stdio.h>
#include<conio.h>

PHOTO ĐỨC HẠNH

void nhap(int a[],int n) {
int i,tam;
for(i=0; i{
printf("\n a[%d]=",i);
scanf("%d",&tam);
a[i]=tam;
}


}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\t %d",a[i]);
}
void chen(int a[],int &n,int vt,int x)
{
int i;
for(i=n;i>=vt;i--)
{
a[i]=a[i-1];
a[vt]=x;
n++;
}
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else
return 0;
}
void doicho(int a[],int i,int j)
2

PHOTO ĐỨC HẠNH

2

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
{
int tam;
tam=a[i];
a[i]=a[j];
a[j]=tam;
}
void sxgiam_nt(int a[],int n)
{
int i,j;
for(i=0;ifor(j=i+1;jif(ktnt(a[i])==1&&ktnt(a[j])==1&&a[i]doicho(a,i,j);
}
main()
{
int i,a[50],n,x;
printf("\n nhap n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la: ");

xuat(a,n);
printf("\n nhap x=");
scanf("%d",&x);
chen(a,n,n,x);
printf("\n day sau khi chen la : ");
xuat(a,n);
sxgiam_nt(a,n);
printf("\n mang giam dan cac so nguyen to la : ");
xuat(a,n);
getch();
}

3
PHOTO ĐỨC HẠNH

3

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
// cau 2:chen x vao dau mang
//
TIM SO NGUYEN LON NHAT TRONG MANG
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i,tam;

for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&tam);
a[i]=tam;
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\t%d",a[i]);
}
void chen(int a[],int &n,int vt,int x)
{
int i;
for(i=n;i>=vt;i--)
a[i]=a[i-1];
a[vt]=x;
n++;
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else

return 0;
}
void max_nt(int a[],int n)
{
int i,max=0;
4
PHOTO ĐỨC HẠNH

4

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
for(i=0;iif(ktnt(a[i])==1&&a[i]>max)
max=a[i];
if(max==0)
printf("\n ko co so nguyen to");
else
printf("\n max so nguyen to la : %d",max);
}
main()
{
int i,n,a[50],x,max=0;
printf("\n nhap vao so phan tu cua n=");
scanf("%d",&n);
nhap(a,n);
printf("\n day sau khi nhap la : ");
xuat(a,n);

printf("\n nhap x=");
scanf("%d",&x);
chen(a,n,0,x);
printf("\n day sau khi chen la : ");
xuat(a,n);
max_nt(a,n);
getch();
}

5
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

5

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 3:xoa nguyen to trong mang
//
tbc cac so duong
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;
for(i=0;i{

printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\t%d",a[i]);
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else
return 0;
}
void xoa_nt(int a[],int &n)
{
int i,tam[100],m=0;
for(i=0;iif(ktnt(a[i])==0)
{
tam[m]=a[i];
m++;
}

for(i=0;i{
a[i]=tam[i];
n=m;
}
6
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

6

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
}
void tbc_duong(int a[],int n)
{
int i,t=0,dem=0;
float tbc=0;
for(i=0;iif(a[i]>0)
{
dem++;
t=t+a[i];
}
tbc=(float)t/dem;
if(dem==0)

printf("\n ko co so duong");
else
printf("\n tbc so duong la : %f ",tbc);
}
main()
{
int i,n,a[50];
printf("\n nhap vao n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");
xuat(a,n);
xoa_nt(a,n);
printf("\n mang sau khi xoa cac so nguyen to la:");
xuat(a,n);
tbc_duong(a,n);
getch();
}

7
PHOTO ĐỨC HẠNH

7

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 4:giam dan cac phan tu
//

tach_mang nguyen to va khong nguyen to
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\t%d",a[i]);
}
void doicho(int a[],int i,int j)
{
int tam;
tam=a[i];
a[i]=a[j];
a[j]=tam;
}
void sapxep(int a[],int n)
{
int i,j;
for(i=0;ifor(j=i+1;j

if(a[i]doicho(a,i,j);
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else
return 0;
8
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

8

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
}
void tach_mang(int a[],int n,int b[],int &m,int c[],int &t)
{
int i;
m=t=0;

for(i=0;iif(ktnt(a[i])==1)
{
b[m]=a[i];
m++;
}
else
{
c[t]=a[i];
t++;
}
}
main()
{
int i,n,a[50],b[50],m,c[50],t;
printf("\n nhap vap n= ");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");
xuat(a,n);
sapxep(a,n);
printf("\n day giam dan cac phan tu ");
xuat(a,n);
tach_mang(a,n,b,m,c,t);
printf("\n mang nguyen to la : ");
xuat(b,m);
printf("\n mang khong nguyen to la :");
xuat(c,t);
getch();
}


9
PHOTO ĐỨC HẠNH

9

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 5:xoa phan tu am trong mang
// tach mang chuong va ko chinh phuong
#include<stdio.h>
#include<conio.h>

PHOTO ĐỨC HẠNH

void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;i

printf("\ %d",a[i]);
}
void xoa_0(int a[],int &n,int x)
{
int i,tam[50],m=0;
for(i=0;iif(a[i]>=x)
{
tam[m]=a[i];
m++;
}
for(i=0;i{
a[i]=tam[i];
n=m;
}
}
int ktcp(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(i*i==a)
dem++;
if(dem==0)
return 0;
else
10
PHOTO ĐỨC HẠNH

10


PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
return 1;
}
void tach_mang(int a[],int n,int b[],int &m,int c[],int &k)
{
int i;m=k=0;
for(i=0;iif(ktcp(a[i])==1)
{
b[m]=a[i];
m++;
}
else
{
c[k]=a[i];
k++;
}
}
main()
{
int i,n,a[50],x,m,k,b[50],c[50];
printf("\n nhap vao n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");

xuat(a,n);
xoa_0(a,n,0);
printf("\n mang sau khi xoa la:");
xuat(a,n);
tach_mang(a,n,b,m,c,k);
printf("\n khong mang nguyen to la : ");
xuat(b,m);
printf("\n mang nguyen to la :");
xuat(c,k);
getch();
}

11
PHOTO ĐỨC HẠNH

11

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
//Cau 6:tang dan so nguyen to - giam dan so khong nguyen to
//
tim so chan
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;

for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\ %d",a[i]);
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else
return 0;
}
void doicho(int a[],int i,int j)
{
int tam;
tam=a[i];
a[i]=a[j];
a[j]=tam;
}

void sapxep(int a[],int n)
{
int i,j;
for(i=0;ifor(j=i+1;jif(ktnt(a[i])==1&&ktnt(a[j])==1&&a[i]>a[j])
12
PHOTO ĐỨC HẠNH

12

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
doicho(a,i,j);
for(i=0;ifor(j=i+1;jif(ktnt(a[i])==0&&ktnt(a[j])==0&&a[i]doicho(a,i,j);
}
int ktchan(int a)
{
if(a%2==0&&a!=0)
return 1;
else
return 0;
}
void vitri_chan(int a[],int n)

{
int i,dem=0;
for(i=0;iif(ktchan(a[i])==1)
dem++;
if(dem==0)
printf("\n ko co so chan");
else
{
printf("\n vi tri so chan la : ");
for(i=0;iif(ktchan(a[i])==1)
printf("\ a[%d] ",i);
}
}
main()
{
int i,n,a[50],x,m,k,b[50],c[50];
printf("\n nhap vao n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");
xuat(a,n);
sapxep(a,n);
printf("\n mang sau khi sap xep la :");
xuat(a,n);
vitri_chan(a,n);
getch();
}
13

PHOTO ĐỨC HẠNH

13

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH

14
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

14

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 7 : doi cho so dau vs so cuoi
//
sap xep giam dan cac so chinh phuong
#include<stdio.h>
#include<conio.h>

PHOTO ĐỨC HẠNH

void nhap(int a[],int n)
{

int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\ %d",a[i]);
}
void doicho(int a[],int i,int j)
{
int tam;
tam=a[i];
a[i]=a[j];
a[j]=tam;
}
int ktcp(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
dem++;
if(dem==0)
return 0;
else
return 1;
}

void sapxep_cp(int a[],int n)
{
int i,j;
for(i=0;ifor(j=i+1;jif(ktcp(a[i])==1&&ktcp(a[j])==1&&a[i]doicho(a,i,j);
15
PHOTO ĐỨC HẠNH

15

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
PHOTO ĐỨC HẠNH
}
main()
{
int i,j,n,a[50];
printf("\n nhap vao n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la :");
xuat(a,n);
doicho(a,0,n-1);
printf("\n mang sau khi doi cho la :");
xuat(a,n);
sapxep_cp(a,n);

printf("\n day giam dan cac so chinh phuong la : ");
xuat(a,n);
getch();
}

16
PHOTO ĐỨC HẠNH

16

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 8:xoa chinh phuong
// vi tri chia het cho 3 va 5
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;

for(i=0;iprintf("\t%d",a[i]);
}
int ktcp(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(i*i==a)
dem++;
if(dem==0)
return 0;
else
return 1;
}
void xoa_cp(int a[],int &n)
{
int i,tam[100],m=0;
for(i=0;iif(ktcp(a[i])==0)
{
tam[m]=a[i];
m++;
}
for(i=0;i{
a[i]=tam[i];
n=m;
}
17
PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH

17

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
}
void chiahet(int a[],int n)
{
int i,dem=0;
for(i=0;iif(a[i]%30==0&&a[i]>0)
dem++;
if(dem==0)
printf("\n ko co so chan");
else
{
printf("\n vi tri so chan chia het cho 3 va 5 la :");
for(i=0;iif(a[i]%30==0)
printf("\ a[%d]",i);
}
}
main()
{
int i,n,a[50],x;
printf("\n nhap n=");

scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");
xuat(a,n);
chiahet(a,n);
xoa_cp(a,n);
printf("\n day sau khi xoa la : ");
xuat(a,n);
getch();
}

18
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

18

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 9:
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;
for(i=0;i{

printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\t%d",a[i]);
}
void xoa_x(int a[],int &n,int x)
{
int i,tam[100],m=0;
for(i=0;iif(a[i]>=x)
{
tam[m]=a[i];
m++;
}
for(i=0;i{
a[i]=tam[i];
n=m;
}
}
void sole_dau(int a[],int n)
{
int i,le=0;
for(i=n-1;i>=0;i--)
if(a[i]%2==1)

le=a[i];
if(le==0)
printf("\n ko co so le");
else
printf("\n so le dau tien la : %d",le);
}
19
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

19

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
main()
{
int i,n,a[50],x;
printf("\n nhap n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mag sau khi nhap la : ");
xuat(a,n);
sole_dau(a,n);
printf("\n nhap x=");
scanf("%d",&x);
xoa_x(a,n,x);
printf("\n cac so sau khi xoa nho hon x la : ");

xuat(a,n);
getch();
}

20
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

20

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 10:hien thi so nguyen to
// thay the cac phan tu am thanh 0
#include<stdio.h>
#include<conio.h>

PHOTO ĐỨC HẠNH

void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);
}

}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\ %d",a[i]);
}
int ktnt(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(a%i==0)
dem++;
if(dem==2)
return 1;
else
return 0;
}
void dem_nt(int a[],int n)
{
int i,dem=0;
for(i=0;iif(ktnt(a[i])==1)
dem++;
if(dem==0)
printf("\n ko co so nguyen to ");
else
{
printf("\n so nguyen to la : ");
for(i=0;i

if(ktnt(a[i])==1)
21
PHOTO ĐỨC HẠNH

21

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
printf("\ %d",a[i]);
}
}
void am_0(int a[],int n)
{
int i;
for(i=0;iif(a[i]<0)
a[i]=0;
}
main()
{
int i,n,a[50];
printf("\n nhap n=");
scanf("%d",&n);
nhap(a,n);
printf("\n day sau khi nhap la: ");
xuat(a,n);
am_0(a,n);
printf("\n day thay the cac phan tu am = 0 la : ");

xuat(a,n);
dem_nt(a,n);
getch();
}

22
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

22

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
//cau 11: xoa cac phan tu la chinh phuong
//
chen so cp nho nhat vao cuoi mang
#include<stdio.h>
#include<conio.h>

PHOTO ĐỨC HẠNH

void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);

scanf("%d",&a[i]);
}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\ %d",a[i]);
}
int ktchan(int a)
{
if(a%2==0&&a!=0)
return 1;
else
return 0;
}
void xoa_chan(int a[],int &n)
{
int i,tam[100],m=0;
for(i=0;iif(ktchan(a[i])==0)
{
tam[m]=a[i];
m++;
}
for(i=0;i{
a[i]=tam[i];
n=m;
}

}
int ktcp(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(i*i==a)
dem++;
if(dem==0)
23
PHOTO ĐỨC HẠNH

23

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH
return 0;
else
return 1;
}
int min_cp(int a[],int n)
{
int min,i;
for(i=0;iif(ktcp(a[i])==1)
min=a[i];
for(i=0;iif((ktcp(a[i])==1)&&(a[i]min=a[i];

return min;
}
void chen_min(int a[],int &n,int vt,int x)
{
int i;
for(i=n;i>=vt;i--)
a[i]=a[i-1];
a[vt]=x;
n++;
}
main()
{
int i,n,a[50],dem=0,x;
printf("\n nhap n=");
scanf("%d",&n);
nhap(a,n);
printf("\n mang sau khi nhap la : ");
xuat(a,n);
chen_min(a,n,n,min_cp(a,n));
printf("\n mang sau khi chen cp min la:");
xuat(a,n);
for(i=0;iif(ktchan(a[i])==1)
{
dem++;
}
if(dem==0)
printf("\n mang k co so chan nao.");
else
xoa_chan(a,n);

printf("\n mang sau khi xoa so chan la : ");
xuat(a,n);
getch();
}

24
PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

24

PHOTO ĐỨC HẠNH


PHOTO ĐỨC HẠNH

PHOTO ĐỨC HẠNH

//cau 12:xoa cp
// chen min vao vi tri dau
#include<stdio.h>
#include<conio.h>
void nhap(int a[],int n)
{
int i;
for(i=0;i{
printf("\n a[%d]=",i);
scanf("%d",&a[i]);

}
}
void xuat(int a[],int n)
{
int i;
for(i=0;iprintf("\ %d",a[i]);
}
int ktcp(int a)
{
int i,dem=0;
for(i=1;i<=a;i++)
if(i*i==a)
dem++;
if(dem==0)
return 0;
else
return 1;
}
void xoa_cp(int a[],int &n)
{
int i,tam[100],m=0;
for(i=0;iif(ktcp(a[i])==0)
{
tam[m]=a[i];
m++;
}
for(i=0;i{

a[i]=tam[i];
25
PHOTO ĐỨC HẠNH

25

PHOTO ĐỨC HẠNH


×