Tải bản đầy đủ (.pdf) (7 trang)

Bài tập ngôn ngữ lập trình c (phần3)

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 (312.62 KB, 7 trang )

VAA. TVTHK

Tin H c

Lab 

iC

ng

Lab02

 L nh R Nhánh

N i Dung Chính

Lab 02: L nh r nhánh............................................................................................................... 2 
0. M c tiêu .............................................................................................................................. 2 
1. Yêu c u tr

c khi vào bu i th c hành này......................................................................... 2 

2. L u ý quan tr ng ................................................................................................................ 2 
3. Ch

ng trình ...................................................................................................................... 2 

Bài 01: Nh p vào 1 s nguyên. Và ki m tra s đó có ch n không? .................................... 2 
Bài 02: Nh p vào 2 s nguyên a, b. Ki m tra xem a có chia h t cho b không .................... 3 
Bài 03: Nh p vào 2 s nguyên a, b. Tìm s l n nh t, nh nh t .......................................... 3 
Bài 04: Nh p vào 3 s nguyên a, b, c. Tìm s l n nh t, nh nh t. ..................................... 4 


Bài 05: Nh p 3 s a, b, c in ra theo th t t ng d n ........................................................... 4 
Bài 06:

i m trung bình và x p h ng .................................................................................. 4 

Bài 06: T o âm thanh BEEP theo s nh p t bàn phím .................................................... 4 
ng trình bài 06 s d ng l nh switch .................................................... 5 

Bài 07: Vi t l i ch
Bài 08: In s ng
Bài 09: Tính c
Bài 10: Ch

c............................................................................................................. 5 
c taxi ......................................................................................................... 5 

ng trình máy tính đ n gi n ............................................................................. 5 

Bài 11: Gi i và bi n lu n ph

ng trình b c nh t: ax+b=0 ................................................... 6 

Bài 12: Gi i và bi n lu n ph

ng trình b c 2: ax2 + bx + c = 0 ........................................... 6 

Bài 13 Tính ti n thuê phòng D a vào s ngày thuê và l ai phòng ...................................... 6 
Bài 14 Nh p vào ngày, tháng c a n m hi n t i. Vi t ch
Bài 15


i ch hoa – th

ng .............................................................................................. 7 

Bài 16: Ki m tra ch hoa, ch th

Lab

 if  if else  switch 

ng trình: .................................... 6 

ng................................................................................ 7 

Trang   


VAA. TVTHK

Tin H c

iC

ng

Lab02

Lab 02: L nh r nhánh
0. M c tiêu



S d
o
o
o

ng thành th o c u trúc l nh r nhánh trong C:
if
if…else
switch

1. Yêu c u tr





c khi vào bu i th c hành này

Ôn l i các tóan t quan h :
==, !=, <, <=, >, >=
Ôn l i tóan t logic:
!, &&, ||
N m v ng c u trúc l nh if, if-else, switch
Tóan t %, ki u int, float,…

2. L u ý quan tr ng




3. Ch

Các đ an mã ngu n trong các bài sau có th có l i khi biên d ch. Hãy s a l i và
thêm các file header phù h p n u c n.
Không s d ng các file header mà ANSI C 1999 không cung c p

ng trình

Bài 01: Nh p vào 1 s nguyên. Và ki m tra s đó có ch n không?




Gi i thu t: S ch n là s chia h t cho 2.
Mô t : N u s A chia cho 2 có ph n d = 0 thì A là s ch n
Th c hi n trong c: (c % 2)
/**********************************************************************
* Lab 02, Bai 01.c
* Tac gia: Nguyen Van An, MSSV: 123456789
* Lop: DV2, Khoa 3,
* Kiem tra chan le cua so nguyen nhap vao tu ban phim
* Created date
**********************************************************************/
#include <stdio.h>
int main()
{
int iNum, iRemain;
printf("Nhap so nguyen : ");
scanf("%d", &iNum);
iRemain = iNum % 2 ;

if (iRemain == 0 )
printf("%d La So Chan. \n", iNum);
getchar();

Lab

 if  if else  switch 

Trang   


VAA. TVTHK

Tin H c

iC

ng

Lab02

return 0;
}
-

S a l i ch

ng trình trên đ thông báo a là s l trong tr

ng h p ng


cl i

Bài 02: Nh p vào 2 s nguyên a, b. Ki m tra xem a có chia h t cho b không



Gi i thu t: Nh p 2 s nguyên a, b
Ki m tra: if (a % b) ==0 å printf ( S a chia h t cho s b)

Bài 03: Nh p vào 2 s nguyên a, b. Tìm s l n nh t, nh nh t
G i ý: Khai báo bi n max và min đ ch a giá tr l n nh t và nh nh t t
Tìm s l n nh t:
max = b
N u (a>b) then max =b

Ch

ng ng.

Tìm s nh nh t:
min = a
N u (a>b) then min =b

ng trình nh sau:
/**********************************************************************
* Lab 02, Bai 03.c
* Tac gia: Nguyen Van An, MSSV: 123456789
* Lop: DV2, Khoa 3,
* Nhap 2 so nguyên, In ra gia tri lon nhat, nho nhat

* Created date:
**********************************************************************/
#include <stdio.h>
int main()
{
int iNum1, iNum2, max, min;
printf("Nhap so thu nhat : ");
scanf("%d", &iNum1);
printf("Nhap so thu hai : ");
scanf("%d", &iNum2);
max = iNum1 ;
if ( iNum2 > max )
max = iNum2 ;
min = iNum1 ;
if ( min > iNum2 )
min = iNum2 ;
printf("So lon nhat la %d", max,”\n”);
printf("So nho nhat la %d", min,”\n”);
getch();
return 0;
}

Lab

 if  if else  switch 

Trang   


VAA. TVTHK


Tin H c

iC

ng

Lab02

Bài 04: Nh p vào 3 s nguyên a, b, c. Tìm s l n nh t, nh nh t.
Gi i thu t:
S l n nh t
Gi s Max = a
IF ( B > Max) Then Max = B
IF (C > Max) Then Max = C

Bài 05: Nh p 3 s a, b, c in ra theo th t

S nh nh t
Gi s Min = a
IF ( Min > B) Then Min = B
IF (Min > C Then Min = C

t ng d n

a. Xem bài trên đ tìm đ c s l n nh t, nh nh t
b. G i iMiddle là s đ ng gi a thì iMiddle = (a+b+c) – (max+min)
c. In ra: Min, Middle, Max
Bài 06: i m trung bình và x p h ng
Nh p vào đi m trung bình c a sinh viên (Thang đi m 100) và Hi n th x p lo i theo tiêu chí

sau:
90 <= A
80 <= B < 90
70 <= C < 80
60 <= D < 70
E < 60
G i ý: Bi n average ch a đi m trung bình c a SV. Mã ngu n nh sau:
if (average >= 90)
grade = 'A';
else if (average >= 80)
grade = 'B';
else if (average >= 70)
grade = 'C';
else if (average >= 60)
grade = 'D';
else
grade = 'E';
Bài 06: T o âm thanh BEEP theo s nh p t

bàn phím

/**********************************************************************
* Lab 02, Bai 06.c
* Tac gia: Nguyen Van An, MSSV: 123456789
* Lop: DV2, Khoa 3,
* In Ra tu tuong ung voi so
* Created date:
**********************************************************************/
#include <stdio.h>
int main()

{
int iNum;
Lab

 if  if else  switch 

Trang   


VAA. TVTHK

Tin H c

iC

ng

Lab02

printf("Nhap so bat ky : ");
scanf("%d", &iNum);
if ( a == 1 )
printf(“Mot”;
else if ( a == 2 )
printf(“Hai”;
else if ( a == 3 )
printf(“Ba”;
else if ( a == 4 )
printf(“Bon”;
else if ( a == 5 )

printf(“Nam”;
else
printf(“Mot so khac”;
getchar;
return 0;
}
Bài 07: Vi t l i ch
Bài 08: In s ng

ng trình bài 06 s

d ng l nh switch

c

Vi t ch ng trình nh p s nguyên có 3 ch s và hi n th các ch s theo th t ng
VD: N u s nh p là a = 356 thì hi n th là 653.

c l i.

G i ý:
Gi
Gi
S
S
S

i thu t
s s nh p là n có ba ch s .
hàng đ n v = n % 10

hàng ch c = ( n / 10 ) % 10
hàng đ n v = n / 100

Bài 09: Tính c
Vi t ch




Mã ngu n C
tram = n;
donvi = tram % 10;
tram = tram / 10;
chuc = tram % 10;
tram = tram /10;

c taxi

ng trình tính giá c

c taxi theo công th c sau:

2 Km đ u tiên giá là 12000
M i km ti p theo, giá 5500
T Km th 31 giá là 5000/km

Ch ng trình cho phép ng
ti n ph i tr .

i s d ng nh p vào s km (bao g m s l VD: 2.5km) và in ra s


Chú ý: N u s km là 2.01 thì s ti n là 12000 + 5500 = 17500
Bài 10: Ch

ng trình máy tính đ n gi n

Nh p vào 2 s a, b và m t phép toán p, th c hi n tính k t qu tr v d a vào d li u nh p
vào. Ví d a = 5, p = '+', b = 6, K t qu hi n th là 5 + 6 = 11.

Lab

 if  if else  switch 

Trang   


VAA. TVTHK

Tin H c

iC

ng

Lab02

G i ý:




Phép tóan p: +, -, *, /
Tr ng h p phép chia: nh ki m tra (≠0)

Bài 11: Gi i và bi n lu n ph

ng trình b c nh t: ax+b=0

Bài 12: Gi i và bi n lu n ph

ng trình b c 2: ax2 + bx + c = 0

G i ý:



s d ng th vi n tóan math: # include <math.h>
tính delta s d ng hàm: double sqrt(double x); C n b c 2 c a x, tr v giá tr double

Bài 13 Tính ti n thuê phòng D a vào s ngày thuê và l ai phòng
X
X
X
X

L ai A: 250 /ngày
L ai B: 200 /ngày
L ai C: 150 /ngày
N u s ngày thuê nhi u h n 10 ngày thì gi m giá % trên t ng s ti n nh sau: A: 10%,
B,C: 5%


Bài 14 Nh p vào ngày, tháng c a n m hi n t i. Vi t ch
X
X
X
X

ng trình:

Ki m tra tính h p l ngày, tháng nh p.
Cho bi t tháng nh p có bao nhiêu ngày.
Cho bi t ngày hôm sau c a ngày đã nh p là ngày nào.
Cho bi t ngày hôm tr c c a ngày đã nh p là ngày nào.

VD: N u ngày nh p là 1/12/2009 thì ngày tr

c đó là 30/11/2009.

G i ý:





Lab

Tháng 1, 3, 5, 7, 8, 10, 12: 31 ngày
Tháng: 3, 4, 6, 9, 11:
30 ngày
Tháng 2: Nhu n/Không nhu n: 29/28 ngày
N m nhu n là (nh ng n m chia h t cho 400) ho c (chia h t cho 4 và không chia h t cho 100). Ví

d 2000 là n m nhu n nh ng 2100 không ph i là n m nhu n. Code C nh sau:
if(year%400 ==0 || (year%100 != 0 && year%4 == 0))

 if  if else  switch 

Trang   


VAA. TVTHK
Bài 15

i ch

Tin H c
hoa – th

iC

ng

Lab02

ng

Nh p m t ch cái, n u là ch th ng thì đ i thành ch hoa, ng
thành ch th ng. Ví d : nh p A in ra a, nh p b thì in ra B.
Bài 16: Ki m tra ch hoa, ch

th


c l i, n u là ch hoa thì đ i

ng

Nh p m t ký t b t k , cho bi t ký t đó thu c lo i nào: là ch hoa, là ch th
hay các ký t khác

Lab

 if  if else  switch 

ng, là ch s

Trang   



×