ĐỀ SỐ 1:
CÂU 1: (4 điểm): Viết chương trình có sử dụng hàm kiểm tra n (nhập từ bàn phím) có
phải số nguyên tố không ?
Câu 2: (6 điểm): Viết chương trình có sử dụng hàm
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=10). Xuất mảng A ra màn
hình (2điểm)
b. Xuất ra màn hình các nguyên tố trong A trên
#include <stdio.h>
#include <conio.h>
#include <math.h>
int kt (int n)
{
int i;
if (n<2) return 0;
for (i=2; i<=(int)sqrt(n); i++)
if (n%i==0) return 0;
return 1;
}
main ()
{
int i, n;
printf ("nhap so nguyen n : ");
scanf ("%d",&n);
if (kt(n)) printf ("la so nguyen to");
else printf ("khong la so nguyen to");
getch ();
}
CÂU 2:
#include <stdio.h>
#include <conio.h>
#include <math.h>
void nhap (int a[], int n)
{
int i;
for (i=0; i
{
printf ("a[]",i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
int i;
for (i=0; i
printf ("%4d",a[i]);
}
int kt (int n)
{
int i;
if (n<2) return 0;
for (i=2; i<=(int)sqrt(n); i++)
if (n%i==0) return 0;
return 1;
}
void cacsont (int a[], int n)
{
int i;
for (i=0; i
if (kt(a[i])) printf ("%4d",a[i]);
}
main ()
{
int a[100];
int n;
do {
printf ("nhap n:");
scanf ("%d",&n);}
while (n<10);
nhap (a,n);
xuat (a,n);
printf ("\ncac so nguyen to trong day");
cacsont (a,n);
getch ();
}
ĐỀ SỐ 2
Câu 1: (4 điểm): Số hoàn hảo là số nguyên dương bằng tổng các ước thực sự của nó. Ví
dụ: 6=1+2+3. Viết chương trình có sử dụng hàm kiểm tra n (nhập từ bàn phím) có phải số
hoàn hảo không ?
Câu 2:(6 điểm): Viết chương trình có sử dụng hàm
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=10).Xuất mảng A ra màn
hình (2điểm)
b. Xuất ra màn hình các hoàn hảo trong A trên (4 điểm)
CÂU 1:
#include <stdio.h>
#include <conio.h>
int ktsohoanchinh (int n)
{
int i, s=0;
for (i=1;i
{
if (n%i==0) s=s+i;
}
if (s==n) return 1;
return 0;
}
main()
{
int i, n;
printf ("nhap n:");
scanf ("%d",&n);
if (ktsohoanchinh(n)) printf ("la so hoan hao");
else printf (“khong phai là so hoan hao”);
getch ();
}
CÂU 2:
#include <stdio.h>
#include <conio.h>
void nhap (int a[], int n)
{
int i;
for (i=0;i
{
printf (" a[%d]",i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
int i;
for (i=0; i
printf ("%4d", a[i]);
}
int ktsohoanchinh (int n)
{
int i, s=0;
for (i=1;i
{
if (n%i==0) s=s+i;
}
if (s==n) return 1;
return 0;
}
void cacsohoanhao (int a[], int n)
{
int i;
for (i=0; i
if (ktsohoanchinh(a[i])) printf ("%4d",a[i]);
}
main()
{
int n, a[100];
do {
printf ("nhap n:");
scanf ("%d",&n);
}
while (n<10);
nhap (a,n);
xuat (a,n);
printf ("\ncac so hoan hao trong mang:");
cacsohoanhao (a,n);
getch();
}
ĐỀ SỐ 3
Câu 1: (4 điểm): Số tổ hợp Ckn có công thức truy hồi:
Câu 2: (6 điểm): Viết chương trình có sử dụng hàm
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=10). Xuất mảng A ra màn
hình (2điểm)
b. Xóa các số hoàn hảo trong A trên, xuất lại mảng A sau khi xóa các số hoàn hảo.
CÂU 1:
#include <stdio.h>
#include <conio.h>
int C (int n, int k);
int main()
{
int n, k;
printf ("Tinh to hop chap k cua n C(n,k) \nn= ");
scanf ("%d", &n);
printf ("k= ");
scanf ("%d", &k);
printf ("C(%d,%d)=%d ",n,k,C(n,k));
int C (int n, int k)
{
if(k==0 || k==n) return 1;
return C(n-1,k-1)+C(n,k);
}
}
CÂU 2:
#include <stdio.h>
#include <conio.h>
void nhap (int a[], int n)
{
int i;
for (i=0;i
{
printf (" a[%d]= ",i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
int i;
for (i=0; i
printf ("%4d", a[i]);
}
int ktsohoanchinh (int n)
{
int i, s=0;
for (i=1;i<=n/2;i++)
{
if (n%i==0) s=s+i;
}
if (s==n) return 1;
return 0;
}
void cacsohoanhao (int a[], int n)
{
int i;
for (i=0; i
if (ktsohoanchinh(a[i])) printf ("%4d",a[i]);
}
void xoasohoanhao (int a[], int *n)
{
int i, j;
for (i=0; i<*n; i++)
if (ktsohoanchinh(a[i]))
{
for (j=i; j<*n-1;j++)
a[i]=a[j+1];
(*n)--;
continue;
}
i++;
}
main()
{
int n, a[100];
do {
printf ("nhap n:");
scanf ("%d",&n);
}
while (n<10);
nhap (a,n);
xuat (a,n);
printf ("\ncac so hoan hao trong mang:");
cacsohoanhao (a,n);
printf ("\nmang sau khi xoa cac so hoan hao trong mang:");
xoasohoanhao (a,&n);
xuat (a,n);
getch();
}
ĐỀ SỐ 4
Câu 2: (6 điểm): Cho đoạn chương trình sau:
int Chiahet(int a[], int n)
{int i;
int s=0;
for (i=0; i
if(a[i]%5==0)s+=a[i];
return s;
}
a. Viết chương trình nhập mảng một chiều với n phần tử là số nguyên với n>=10.Xuất
mảng A ra màn hình
b. Đưa hàm trên vào chương trình và xuất kết quả tổngra màn hình (4 điểm)
CÂU 1:
#include <stdio.h>
#include <conio.h>
int main()
{
int n, k;
float x, a=1, s=1;
printf ("nhap n= ");
scanf ("%d",&n);
printf ("nhap x= ");
scanf ("%f", &x);
for (k=1;k<=n; k++)
{
s= s+a;
a=a*x/k;
}
printf ("ket qua %0.2f",s);
getch();
return 0;
}
CÂU 2:
#include <stdio.h>
#include <conio.h>
#include <math.h>
void nhap (int a[], int n)
{
int i;
for (i=0; i
{
printf ("a[%d]=",i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
int i;
for (i=0; i
printf ("%4d",a[i]);
}
void chiahet (int a[], int n)
{
int i;
int s=0;
for (i=0; i
if (a[i]%5==0) s+=a[i];
printf ("%d",s);
}
main()
{
int n, a[100];
do
{
printf ("nhap n= ");
scanf ("%d",&n);
}
while (n<10);
nhap (a,n);
xuat (a,n);
printf (" \ntong cac so chia het cho 5 la: ");
chiahet(a,n);
getch();
}
ĐỀ SỐ 5
Câu 2: (6 điểm): Cho đoạn chương trình sau:
int Check(long n)
{
long k=2;
while (k*k<=n && n%k!=0) k++;
return k*k>n;
}
a. Viết chương trình nhập mảng một chiều với n phần tử là số nguyên với n>=10. Xuất
mảng A ra màn hình
b.Đưa hàm trên vào chương trình và xuất kết quả ra màn hình (4 điểm)
CÂU 1:
#include <stdio.h>
#include <conio.h>
int main()
{
int n, k;
float x, a=1, s=1;
printf ("nhap n= ");
scanf ("%d",&n);
printf ("nhap x= ");
scanf ("%f", &x);
for (k=1; k<=n;k++)
{
a=a*x;
s=s+a/k;
}
printf ("tong %0.2f",s);
getch();
}
CÂU 2:
ĐỀ SỐ 6
Câu 1: (4 điểm): Viết chương trình sử dụng hàm: Giải và biện luận phương
trình bậc 2 (tính cả trường hợp suy biến).
Câu 2: (6 điểm):Viết chương trình có sử dụng hàm
a.Nhập mảng số nguyên A gồm n phần tử và nhập số nguyên k. (2 điểm)
b. Xóa phần tử có chỉ số k ra khỏi mảng A. Xuất mảng A sau khi xóa chỉ số
chỉ số k ra màn hình (4 điểm)
CÂU 1:
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
float a, b, c, delta, x1, x2, x;
printf ("nhap a= ");
scanf ("%f", &a);
printf ("nhap b= ");
scanf ("%f", &b);
printf ("nhap c= ");
scanf ("%f", &c);
delta= b*b-4*a*c;
if (delta>0)
{
printf ("phuong trinh co 2 nghiem phan biet");
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf ("x1= %4.2f\n",x1);
printf ("x2= %4.2f",x2);
}
else if (delta==0) printf ("phuongtinh co 1 nghiem duy nhat :x= %f", -b/(2*a));
else printf ("phuong trinh vo nghiem");
getch();
}
CÂU 2:
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{ printf("nhap so phan tu :" );
scanf("%d",&n);
for(int i=0;i
{ printf(" phan tu thu %d :",i);
scanf("%d",&a[i]);
}
}
int xuatmang(int a[],int n)
{for(int i=0;i
{
printf("%d \t",a[i]);
}
}
void xoa1vitrik(int a[],int n)
{
int k;
printf("nhap vi tri can xoa: ");
scanf("%d",&k);
for(int i=0;i
a[k]=a[k+1];
n=n-1;
xuatmang(a,n);
}
int main()
{
int a[50],n;
nhapmang(a,n);
xoa1vitrik(a,n);
return 0;
}
ĐỀ SỐ 7
Câu 1: (4 điểm): Viết chương trình nhập lãi suất năm r (%), tiền vốn p và thời hạn gửi
tiền n năm. In ra vốn tích lũy a của từng năm. Biết công thức a = p * (1+r)n
Câu 2: (6 điểm):
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=9). Xuất mảng A ra màn
hình (2điểm)
b. Nhập số k từ bàn phím,kiểm tra k có trong mảng không?(4 điểm)
CÂU 1:
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
float r, n, a, p;
printf ("nhap p= ");
scanf ("%f", &p);
printf ("nhap n= ");
scanf ("%f", &n);
printf ("nhap r= ");
scanf ("%f", &r);
a= p*pow((1+r),n);
printf ("von tich luy a cua tung nam: %4.2f", a);
getch();
}
CÂU 2:
#include <stdio.h>
#include <conio.h>
#include <math.h>
void nhap (int a[], int n)
{
int i;
for (i=0; i
{
printf ("a[%d]= ",i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
int i;
for (i=0; i
printf ("%4d",a[i]);
}
int k (int n)
{
int i, k;
for (i=1; i<=n; i++)
if (i==k) return 0;
return 1;
}
void kt (int a[], int n)
{
int i;
for (i=0; i
if (k(a[i]))
printf ("\nk co trong mang, vi tri thu %d", i);
else printf ("\nk khong co trong mang");
}
main()
{
int n, k, a[100];
do
{
printf ("n= ");
scanf ("%d",&n);
printf ("k= ");
scanf ("%d", &k);
}
while (n<9);
nhap (a,n);
xuat (a,n);
kt (a,n);
getch();
}
ĐỀ SỐ 8
Câu 1: (4 điểm):Viết chương trình giải phương trình bậc bốn trùng phương (ax4 + bx2
+
ếm số nghiệm khác nhau của phương trình.
Câu 2: (6 điểm): Viết chương trình có sử dụng hàm
c. Viết chương trình nhập mảng một chiều A với n phần tử (n>=9).Xuất mảng A ra màn
hình (2điểm)
d. Sắp xếp các số trong mảng theo thứ tự tăng dần, xuất ra lại màn hình (4 điểm)
CÂU 1:
CÂU 2:
#include <stdio.h>
#include <conio.h>
void nhap (int a[], int n)
{
for (int i=0; i
{
printf ("a[%d]= ", i);
scanf ("%d",&a[i]);
}
}
void xuat (int a[], int n)
{
for (int i=0; i
printf ("%4d",a[i]);
}
void hoandoi (int *x, int *y)
{
int tam;
tam=*x;
*x=*y;
*y=tam;
}
void sapxeptangdan (int a[], int n)
{
int i, j;
for (i=0; i
for (j=i+1; j
if (a[i]>a[j]) hoandoi (&a[i], &a[j]);
}
main()
{
int a[100], n;
printf ("nhap n= ");
scanf ("%d", &n);
nhap (a,n);
xuat (a,n);
sapxeptangdan (a,n);
printf ("\nday tang dan cua mang la:");
xuat (a,n);
getch();
}
ĐỀ SỐ 9
Câu 1: (4 điểm):Viết chương trình nhập giờ h, phút m và giây s hiện tại và một số
nguyên dương n. In ra màn hình giờ, phút, giây sau n giây.
Câu 2: (6 điểm): Viết chương trình có sử dụng hàm
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=9).Xuất mảng A ra màn
hình (2điểm)
b. Sắp xếp các phần tử chẵn ra đầu mảng, các phần tử lẻ ra cuối mảng,xuất ra lại màn
hình (4 điểm)
CÂU 1:
Chương trình:
#include <conio.h>
#include <stdio.h>
int main()
{
int n, h, m, s;
printf("Nhap gio: ");
scanf("%d", &h);
printf("Nhap phut: ");
scanf("%d", &m);
printf("Nhap giay: ");
scanf("%d", &s);
printf("Nhap so nguyen n: ");
scanf("%d", &n);
h = (h + ((n + s)/60 + m)/60)%24;
m = (m + (n + s)/60)%60;
s = (n+ s)%60;
printf("Ket qua gio, phut, giay sau n giay: ");
printf("%d : %d : %d\n", h, m, s);
getch();
CÂU 2:
ĐỀ SỐ 10
Câu 1: (4 điểm):Viết chương trình in ra màn hình bảng chân trị của các phép toán logic:
AND, OR, NOT. Ví dụ, với phép OR thì có kết quả in ra là
OR 0 1 1
000
111
Dùng các phép logic tương ứng là: &&, ||, !.
Câu 2: (6 điểm): Viết chương trình có sử dụng hàm
a. Viết chương trình nhập mảng một chiều A với n phần tử (n>=9). Xuất mảng A ra màn
hình (2điểm)
b. Sắp xếp mảng theo thứ tự giảm dần,xuất ra lại màn hình (4 điểm)
CÂU 1:
CÂU 2:
#include <stdio.h>
#include <conio.h>
void nhap (int a[], int n)
{
for (int i=0; i
{
printf ("a[%d]= ", i);
scanf ("%d",&a[i]);
}
}