Jump to content

Welcome to [ iT ] Forums
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Cộng đồng Âm nhạc Việt Nam

Hình ảnh

Hướng dẫn cấu trúc lặp và vòng lặp trong C


  • Please log in to reply
No replies to this topic

#1
FrankLee

FrankLee

    Thành viên mới

  • Newbies
  • 14 Bài Viết:
Chúng ta đã tìm hiểu về các cấu trúc rẽ nhánh ở bài này chúng ta sẽ tiếp tục tìm hiểu về các cấu trúc lặp và các vòng lặp trong ngôn ngữ lập trình C. Các cấu trúc lặp
  • Có ba cấu trúc lặp
    • trong khi
    • làm trong khi
Cấu trúc lặp  For
  • Cú pháp

for (khởi tạo ; biểu thức 1biểu thức 2; )

<công việc>

  • Ví dụ

for (i = 0; i <3; i ++) {

printf ( “gia tri cua tôi la:% d”, i);

printf ( “\ n”);

}

lenh-for.jpg

                                           Sơ đồ khối lệnh for

Ví Dụ : Tính giá trị biểu thức: S = 1*2 + 2*3 + … (n-1)*n

int i = 0;
dài S = 0;
int n = 3;
for (i = 1; i <n; i ++) {
S + = i * (i + 1);
}
printf ( "S =% d", S);

Ghi Chú :

  • <Biểu thức 1> phải là biểu thức logic
  • Trong <biểu thức 2> cần có lệnh  làm thay đổi giá trị của <biểu thức 1>, nếu không thì vòng lặp sẽ vô hạn
  • Các vòng lặp trong for có thể lồng nhau.
    • ví dụ :

for (i = 1; i <3; i ++)

for (j = 1; j <3; j ++) {printf ( “a”);}

  • Có thể có nhiều biến chạy cùng 1 vòng for
    • ví dụ :

for (i = 1, j = 1; (i + j) <4; i ++, j ++) {printf ( “a”);}

Ví Dụ : Đưa ra các số có 3 chữ số mà tổng các chữ số  bằng 10

#include <stdio.h>chủ yếu(){char a, b, c;printf("cac so tim duoc la : \n");/* su dung ba vong lap long  nhau */cho (a = 1; a <= 9; a ++)cho (b = 0; b <= 9; b ++)cho (c = 0; c <= 9; c ++)/* kiem tra dk */nếu ((a + b + c) == 10) {/* dua ra bo ba a , b ,c  thoa man*/printf ( "% d% d% d", a, b, c);printf ( "\ n");}printf ( "\ n");trở về 0;}

Cấu trúc lặp while
  • Cú pháp

While ( biểu thức )

<công việc>

while.png– Biểu thức được xác định giá trị tại mỗi lần bắt đầu thực hiện vòng lặp.

– Nếu biểu thức cho giá trị True ( đúng ) thì công việc được thực hiện.

– Nếu biểu thức cho giá trị false ( sai ) thì chương trình sẽ tiếp tục với đoạn lệnh tiếp theo.

 

 

 

 

 

 

Ví Dụ : Tính giá trị trung bình

int n = 4;int i = 0;giá trị gấp đôi, sum = 0;trong khi (i <n) {scanf ("%d", &value); /* nhap 1 so tu ban phim */sum + = giá trị;++ I;}TB đôi = tổng / i;printf ( "TB:% 6.2f", TB);

Ví Dụ : Viết chương trình tính tổng số nguyên từ 1 đến n, với n được nhập từ bàn phím

#include <stdio.h>#include <conio.h>chủ yếu() {int i = 0, n, s = 0;printf("Nhap vao so n: ");scanf("%d", &n);trong khi (i ++ <n)s + = i;printf ( "Tong:% d", s);getch ();}

Cấu trúc lặp do –  while trong lập trình c cơ bản do-while.jpg
  • Cú pháp

làm

<công việc>

while     (biểu thức)

  • Ý nghĩa :
    • Thực hiện công việc
    • Nếu biểu thức có giá trị True thì quay lại thực hiện công việc
    • Lặp lại như thế cho đến khi biểu thức có giá trị false

 

Ví Dụ : Viết chương trình kiểm tra password

#include <stdio.h>
# Define PASSWORD 12345
chủ yếu()
{
int s;
làm
{
printf("Nhap vao password: ");
scanf("%d", &s);
} While (s = PASSWORD!);
}
 

Kết quả được in ra là : 

password.jpg

So sánh sự khác nhau giữa các cấu trúc lặp trong lập trình c:
  • – Vòng lặp for thường sử dụng khi biết được số lần lặp xác định.
  • Vòng lặp thường while, do…while sử dụng khi không biết rõ số lần lặp
  • Khi gọi vòng lặp while, do..while, nếu biểu thức sai vòng lặp while sẽ không được thực hiện lần nào nhưng vòng lặp lần nào nhưng vòng lặp do….while thực hiện được được 1 lần.







Perfumista - Thong tin nuoc hoa

Stars Counter Game

Balloon vs. Thorns

MU Phuc Hung

Làm Việc Tài Nhà

Mu Da Nang

Tuyển Nhân Viên Bán Hàng

Tư vấn sức khỏe trực tuyến

Close [X]