TÔI CHẮC CHẮN LÀM ĐƯỢC
Bài 1: Cho đoạn chương trình sau:
#include <stdio.h>
#include <math.h>
main()
{ int i = 4, j = 21, k, b, y;
float x = 94.55;
Hãy xác định lần lượt giá trị các phép gán sau:
a) k = i*j;
b) y = x + i;
c) y = j+j;
d) x = i;
e) i = i+j;
f) j = j ;
g) B = (i > j) && (j = -j);
1 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
h) B = (i < j) && (j == j);
i) B = i-5;
j) k = i++;
k) k = i;
l) i += j;
lời giải:
#include <stdio.h>
#include <conio.h>
void main()
{ int i = 4, j = 21, k, y, B;
float x = 94.55;
Min = Max = a;
if (Min > b) Min = b;
else Max = b;
if (Min > c) Min = c;
else if (Max < c) Max = c;
if (Min > d) Min = d;
else if (Max < d) Max = d;
printf("\nBon so da cho: %5d, %5d, %5d, %5d", a, b, c, d);
3 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
printf("\nSo lon nhat : %5d", Max);
printf("\nSo nho nhat : %5d", Min);
getch();
return 0;
}
Bài 3: Giải và biện luận hệ hai phương trình tuyến tính hai ẩn với các hệ số a, b, c,
d, m, n nhập từ bàn phím.
Lời giải:
#include <stdio.h>
#include <conio.h>
#include <math.h>
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
Bài 4: Viết chương trình xây dựng bảng cửu chương và in lên màn hình.
Lời giải:
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main(void)
{ clrscr();
char *s = "B A N G C U U C H U O N G";
gotoxy((80-strlen(s))/2, 1);
printf("%s", s);
for (int i = 0; i < 9; i++)
{ int x = (i % 5)*15 + 1;
for (int j = 0; j < 9; j++)
{ int y = (i / 5)*10 + j + 3;
gotoxy(x, y);
printf("%2d x %2d = %2d", (i+1), (j+1), (i+1)*(j+1));
}
}
6 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
getch();
return 0;
}
Bài 5: Lập trình tính giai thừa của số N.
7 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
Lời giải :
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(void)
{ clrscr();
printf("\nC H U O N G T R I N H T I N H G I A I T H U A");
printf("\nCho so N: ");
int N;
scanf("%d", &N);
double GT = 1;
for (int i = 2; i <= N; i++)
GT *= i;
printf("\nGiai thua cua %3d la %-10.0f", N, GT);
getch();
return 0;
}
8 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
Bài 6 : Lập chương trình in lên màn hình các số từ 1 đến 6 thành hình sau:
1
{ for (int j = 1; j <= i; j++)
printf("%d",j);
printf("\n");
}
for (i = 1; i < 7; i++)
{ printf("\n\t");
for (int j = i; j >= 1; j )
printf("%d\b\b",j);
}
for (i = 1; i < 7; i++)
{ printf("\n%*s", 7-i, "");
10 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
int j = 1, k = 1;
do {
printf("%d",j);
if (j == i) k = -1;
j += k;
} while (j >= 1);
}
getch();
return 0;
}
Bài 7 : Viết chương trình in lên màn hình các số từ 0 đến 9 thành hình sau:
1
232
getch();
return 0;
}
Bài 8 : Viết chương trình tính gần đúng y = e
x
, biết hàm này có thể được triển khai
dưới dạng chuỗi như sau:
e
x
= 1 + x/1! + x
2
/2! + + x
i
/i! +
lời giải :
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main(void)
{ double ex, ex0, sh = 1;
double x;
printf("\nCho x: ");
scanf("%lf", &x);
ex = sh;
int i = 1;
13 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
clrscr();
for (a = 1; a <= 9; a++)
for (b = 0; b <= 9; b++)
for (c = 0; c <= 9; c++)
for (d = 0; d <= 9; d++)
{ Number = 1000*a + 100*b +10*c + d;
if (a*a*a*a + b*b*b*b + c*c*c*c + d*d*d*d==
Number)printf("%6d", Number);
}
getch();
}
15 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
Bài 10 : Lập trình tính y = ax + by + cz với a, b, c và x, y, z là các số thực nhập từ
bàn phím.
Lời giải :
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(void)
{ float a, b, c, x, y, z;
printf("\nCho a, b, c: ");
scanf("%f%f%f", &a, &b, &c);
printf("\nCho x, y, z: ");
scanf("%f%f%f", &x, &y, &z);
for (int j = n2; j >= 1; j )
{ n1 = 200 - i*5 - j * 2;
if ((n1 > 0) && (i + j + n5 <= 50))
{
17 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
printf("\n%3d\t:%6d,%4d,%4d", ++k,
i, j, n1);
}
if (!(k%100)) getch();
}
}
printf("\n\nTong so hoan vi: %d", k);
getch();
return 0;
}
Bài 12 : Viết hàm tính a
n
với a là số thực và n nguyên dương.
Lời giải :
#include <stdio.h>
#include <conio.h>
float LT(float, int); //Khong dung de qui
float LT1(float, int); //Dung de qui
int main(void)
tròn, chữ nhật, hình thang, tam giác theo nhu cầu.
Lời giải :
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <math.h>
char *M[30] = {"Tinh dien tich hinh vuong",
"Tinh dien tich hinh chu nhat",
"Tinh dien tich hinh tam giac",
"Tinh dien tich hinh tron",
"Tinh dien tich hinh thang",
"Ket thuc"};void HinhVuong();
void ChuNhat();
void TamGiac();
void HinhTron();
void HinhThang();
void Khung(int, int, int, int, char ;
20 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
int Menu(char *M[30], int, int);
int main(void)
{ int k = 0;
clrscr();
{
gotoxy(i, Y); cprintf("%c",196);
gotoxy(i, Y+H); cprintf("%c",196);
}
for (i = Y+1; i <= Y+H-1; i++)
{
gotoxy(X, i); cprintf("%c",179);
gotoxy(X+W, i); cprintf("%c",179);
}
gotoxy(X + (W - strlen(Title)) / 2, Y);
cprintf("%s", Title);
textattr(WHITE + (BLUE << 4));
22 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
for (i = Y+1; i <= Y+H-1; i++)
{
for (j = X+1; j <= X+W-1; j++)
{
gotoxy(j, i); cprintf("%c",32);
gotoxy(j, i); cprintf("%c",32);
}
}
window(X+1, Y+1, X+W-1, Y+H-1);
}
int Menu(char *M[30], int N, int k)
{ Khung((80 - 40)/2 - 1, 2, 40, N+1, "Menu chinh");
cprintf("Dien tich hinh vuong la: %-10.3f", s);
getch();
}
void ChuNhat()
{ Khung(1, 6, 40, 12, "Hinh Chu Nhat");
float a, b;
24 25/05/2014
THẦN ĐIÊU ĐẠI HIỆP
TÔI CHẮC CHẮN LÀM ĐƯỢC
gotoxy(1, 1); cprintf("\nCho canh a va b cua hinh chu nhat: ");
cscanf("%f%f", &a, &b);
float s = a*b;
gotoxy(1, 4);
cprintf("Dien tich hinh chu nhat la: %-10.3f", s);
getch();
}
void TamGiac()
{ char *M[30] = {"Cho canh day va chieu cao",
"Cho ba canh",
"Cho hai canh va goc xen giua",
"Cho hai goc va canh ke hai goc do",
"Ket thuc"};
int k = 0, error = 1;
float s;
do {
k = Menu(M, 5, k);
if (k < 4) Khung(1, 6, 40, 12, "Tam giac");
switch (k)