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

Bài giảng Ngôn ngữ lập trình - Bài 2: Các cấu trúc điều khiển, mảng và con trỏ

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

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

Ngơn ng

l

p trình



Bài 2:



Các c

u trúc đi

u khi

n,



m

ng và con tr



<b>Giảng viên: Lê Nguyễn Tuấn Thành </b>
<b>Email: </b>


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

N

i dung



2


1.

Cấu trúc rẽ nhánh


2.

Cấu trúc lặp



3.

Mảng (Array)



4.

Con trỏ (Pointer)



</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3></div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

1.1. C

u trúc r

nhánh v

i

<b>if-else </b>



4


<b>M</b>

<b>ụ</b>

<b>c đích </b>



Di

n đ

t s

l

a ch

n m

t trong nhi

u nhánh, ph

thu

c vào



giá tr

c

a câu đi

u ki

n




Cú pháp:



<i>if (<boolean_expression>) </i>
<i><yes_statement> </i>
<i>else </i>


<i><no_statement> </i>


Ví d

:



<i>if (hrs > 40) </i>


<i>grossPay = rate*40 + 1.5*rate*(hrs-40); </i>
<i>else </i>


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

Câu l

nh ph

c h

p



M

i nhánh trong if-else

slide tr

ướ

c ch

có m

t câu l

nh


Đ

ghép nhi

u câu l

nh trong m

t nhánh, s

d

ng

{ }

.



T

p l

nh khi đó đ

ượ

c g

i là m

t kh

i (block)



Ví d

:



<i>if (myScore > yourScore) </i>
<i>{ </i>


<i>cout << "I win!\n"; </i>
<i>wager = wager + 100; </i>


<i>} </i>


<i>else </i>
<i>{ </i>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

M

t vài l

ư

u ý



6


<b>Toán t</b>

<b>ử</b>

<b> “=” khác toán t</b>

<b>ử</b>

<b> “==” nh</b>

<b>ư</b>

<b> th</b>

<b>ế</b>

<b> nào? </b>



“=” dùng đ

gán giá tr

cho các bi

ế

n


“==” dùng đ

so sánh hai bi

u th

c



<b>M</b>

<b>ệ</b>

<b>nh đ</b>

<b>ề</b>

<b> else có b</b>

<b>ắ</b>

<b>t bu</b>

<b>ộ</b>

<b>c khơng? </b>



Ví d

:



<i>if (sales >= minimum) </i>


<i> salary = salary + bonus; </i>


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

Câu l

nh l

ng nhau (nested)



Chúng ta có th

l

ng m

t c

p if-else trong m

t nhánh



c

a c

p if-else khác



Ví d

:




<i>if (speed > 55) </i>
<i> if (speed > 80) </i>


<i> cout << "You’re really speeding!"; </i>
<i> else </i>


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

Đa r

nhánh (if - else if - else)



</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

Bài t

p v

i c

u trúc r

nhánh if-else



<i>Bài 1: </i>

<i>Viết một chương trình C++ để nhắc người dùng </i>



<i>nhập 3 số nguyên và tìm giá trị lớn nhất.</i>



<i>Bài 2: Nh</i>

<i>ậ</i>

<i>p vào m</i>

<i>ộ</i>

<i>t s</i>

<i>ố</i>

<i> nguyên t</i>

<i>ươ</i>

<i>ng </i>

<i>ứ</i>

<i>ng v</i>

<i>ớ</i>

<i>i m</i>

<i>ộ</i>

<i>t tháng </i>



<i>trong năm và in ra màn hình s</i>

<i>ố</i>

<i> ngày trong tháng đó. </i>



<i> ví d</i>

<i>ụ</i>

<i>: </i>


<i> input: 1 </i>



<i> output: tháng 1 có 31 ngày </i>



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

1.2. R

nhánh v

i l

nh witch (1/2)



</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11></div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

L

nh switch: câu h

i


12

<i>switch (aChar) </i>


<i>{ </i>


<i> case "A": </i>



<i>case "a": </i>



<i> cout << "Excellent: you got an "A"!\n"; </i>


<i> break; </i>



<i>case "B": </i>


<i>case "b": </i>



<i> cout << "Good: you got a "B"!\n"; </i>


<i> break; </i>



<i>} </i>



</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

(Conditional/ternary operator)



Thay thế cho mệnh đề if-else đơn giản với hai toán tử



“?” và “:”



Cấu trúc:



<i>if (condition) </i>


<i>if_true; </i>


<i>else </i>



<i> </i>

<i>if_false; </i>



Có thể thay bằng một lệnh



<i>(condition) ? (if_true) : (if_false) </i>




<b>Bài t</b>

<b>ậ</b>

<b>p: </b>

vi

ế

t hàm tr

l

i s

l

n nh

t trong hai s



</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14></div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

2. C

u trúc l

p (loop)



Các cấu trúc lặp trong C++



</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

C

u trúc l

p v

i while



16


<i>int count = 0; </i> <i>// Initialization </i>
<i>while (++count < 3) </i> <i>// Loop Condition </i>


<i>{ </i>


<i>cout << "Hi "; </i> <i>// Loop Body </i>
<i>} </i>


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17></div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

C

u trúc l

p v

i do-while (2/2)



18


<i>int count = 0; </i>

<i>// Initialization </i>



<i>do </i>


<i>{ </i>



<i>cout << "Hi "; // Loop Body </i>




<i>} while (++count < 3); </i>

<i>// Loop Condition </i>



</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

So sánh

<b>while</b>

<b>do-while </b>



Khá gi

ng nhau, nh

ư

ng m

t khác bi

t quan tr

ng



<b>while</b>

: ki

m tra đi

u ki

n logic TR

ƯỚ

C KHI th

c thi l

nh



bên trong



<b>do-while</b>

: ki

m tra đi

u ki

n logic SAU KHI đã th

c thi l

nh



</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

C

u trúc l

p v

i

<b>for </b>



20


Cú pháp



<i>for (</i>

<i>Init_Action</i>

<i>; </i>

<i>Bool_Expression</i>

<i>; </i>

<i>Update_Action</i>

<i>) </i>


<i> Body_Statement </i>



Ví d

:



<i>for (count=0; count<3; count++) </i>


<i>{ </i>



<i> cout << "Hi "; </i>

<i>// Loop Body </i>


<i>}</i>



Chu

i “Hi” s

đ

ượ

c in ra màn hình bao nhiêu l

n?



Đi

u gì x

y ra v

i câu l

nh sau:



</div>

<!--links-->

×