Bài th c hành 6
Ôn l i các c u trúc đi u khi n ch ng trình (for, while) ươ
Bài 1: Ôn t p c u trúc đi u khi n for
C u trúc chung c a câu l nh for
for (bi u th c kh i t o ; bi u th c đi u ki n ; b c nh yướ ){
kh i các câu l nh;
}
a. Ch ng trình sau in ra các s t 1 đ n 20ươ ế
1:#include <stdio.h>
2:#include <conio.h>
3: int count;
4: main()
5: {
6:
7: for (count = 1; count <= 20; count++)
8: printf("%d\n", count);
9: getch();
10: return 0;
11: }
Thay dòng 7 b ng dòng sau đ in ra các s gi m d n t 20 đ n 1: ế
for (count = 20; count > 0; count--)
Thay dòng 7 b ng dòng sau đ in ra các s chia h t cho 5 t 10 đ n 50: ế ế
for (count = 10; count <= 50; count+=5)
b. Ch ng trình nh p t bàn phím các s nguyên vào m t m ng A và in raươ
#include <stdio.h>
#include <conio.h>
int count;
main()
{
int mang[20];
int n;
printf("Nhap so phan tu: ") ;
scanf ("%d", &n);
for (int i=0; i<n; i++)
{
printf("Nhap phan tu a[%d]", i);
scanf("%d", &mang[i]);
}
printf("In ra cac phan tu cua mang\n");
13: for (int i = 0; i <n ; i++)
14: printf("%d\n", mang[i]);
getch();
return 0;
}
Thay 2 dòng đ m ch ng trình trên (dòng 13, 14) b ng 2 dòng sau đ in ra các ph n ươ
t c a m ng mang [], vi c in ra k t thúc khi t t c các ph n t đã đ c in ra ho c khi ế ượ
g p m t ph n t có giá tr là 0
for (int i = 0; i < n && mang[i] != 0; i++)
printf("%d", mang[i]);
c. Ch ng trình copy m ng theo th t ng c l iươ ượ
(Cho hai m ng a[10], b[10]. Dùng câu l nh for đ copy n i dung c a m ng a t i m ng
b theo th t ng c l i. Sau khi copy thì a[0] = b[9], a[1] = b[8], ….a[9] = b[0]) ượ
for (int i = 0, int j = 10; i < 10; i++, j--)
b[j] = a[i];
d. Ch ng trình s d ng câu l nh for l ng nhauươ
#include <stdio.h>
void ve_hop( int, int);
int main()
{
ve_hop( 8, 10 );
getch();
return 0;
}
void ve_hop( int hang, int cot )
{
int c;
for ( ; hang > 0; hang--)
{
for (c = cot; c > 0; c--)
printf("X");
printf("\n");
}
}
Bài 2: Ôn t p c u trúc while
C u trúc chung
while (đi u ki n ){
kh i câu l nh;
}
a. Ch ng trình in các s t 1 đ n 20ươ ế
int x = 1;
while (x <= 20)
{
printf("\n %d", x );
x++;
}
b. Ch ng trình nh p các s nguyên vào m t m ng 10 ph n t t bàn phím, n uươ ế
s nh p vào là 99 ho c đã nh p đ 10 ph n t thì d ng l i.
int mang[10];
int i = 0;
int so_nhap;
so_nhap = 0;
while (i < 10 && so_nhap != 99)
{
puts("Nhap vao mot so, nhap 99 de thoat ");
scanf("%d", &so_nhap);
value[i] = so_nhap;
i++;
}
Bài 3: Vi t ch ng trình gi i bài toán c sauế ươ
Trăm trâu trăm c
Trâu đ ng ăn năm
Trâu n m ăn ba
L kh trâu già, ba con m t c
H i m i lo i có m y con?