Lập trình C- Bài tập 10 pot

5 346 0
Lập trình C- Bài tập 10 pot

Đang tải... (xem toàn văn)

Thông tin tài liệu

Câu h i 1: ( 3 di m) Trình bày cú pháp và nguyên lý ho t d ng c a c u trúc if / switch / for / do / while < > [ ] <thành ph n b t bu c> [thành ph n không b t bu c] C u trúc If: Cú pháp: if (<bi u th c>) [câu_l nh1]; [ else [câu_l nh2]]; Nguyên lý ho t d ng: -n u bt mang giá tr khác 0 (giá tr dúng) th ì th c hi n câu l nh 1. ngu c l i n u có ph n “ else câu_l nh2” th ì th c hi n câu l nh 2; C u trúc Switch Cú pháp switch(<bi u th c>){ case <h ng1> : <l nh1>; [break;] case <h ng2> : <l nh2>; [break;] … case <h ngn> : <l nhn>; [break;] [ default: <l nhN+1>;] } Nguyên lý ho t d ng: - tính giá tr bi u th c sau switch - so sánh l n lu t v i các h ng1, h ng 2,…. - N u bt b ng h ng i thì th c hi n l nh i , ti p theo s th c hi n l n lu t các l nh i+1, l nh i+2, … n, n+1 (d n h t) m à không ph i so sánh v i các nh ãn khác. N u g p break thì thoát kh i câu l nh switch. - N u bt không b ng h ng n ào mà có ph n “ default: l nh n+1 ” thì s th c hi n l nh n+1 dó C u trúc For Cú pháp: for([bi u th c 1] ; [bi u th c 2] ; [bi u th c 3]) [câu l nh]; Nguyên t c ho t d ng Bu c 1: th c hi n bi u th c 1 duy nh t 1 l n Bu c 2: - tính bi u th c 2 - N u bt2 khác 0 (giá tr dúng) th ì: + th c hi n câu l nh trong thân for + th c hi n bi u _th c 3 + v d u bu c 2 - ngu c l i (bt2 b ng 0): thoát v òng for C u trúc do Cú pháp do < câu_l nh >; while(< bi u_th c >); Nguyên lý ho t d ng Bu c1: th c hi n câu l nh trong thân c a do - while. N u mu n thân do- while nhi u hon 1 l nh ta ph i d t trong c p ngo c móc {}. Sang bu c 2 Bu c2: tính giá tr bi u_th c, - n u bi u_th c mang giá tr dúng (khác0) : quay l i bu c 1 - ngu c l i ( bi u_th c b ng 0): thoát kh i c u trúc do- while nh n xét: - câu l nh là thân do - while ít nh t du c th c hi n 1 l n - câu l nh có kh nang b l p vô h n n u bi u th c luôn dúng - > câu l nh ph i có kh nang thay d i giá tr c a bi u th c C u trúc while Cú pháp: while(<bi u_th c>) <Câu_l nh>; Nguyên lý ho t d ng: Bu c1: ki m tra( tính) giá tr c a bi u th c -N u bt mang giá tr dúng (khác 0): +Th c hi n câu l nh trong thân while +v d u bu c 1 - Ngu c l i (bt mang giá tr b ng 0): + thoát c u trúc while cách di n d t khác C ÙNG Ý Bu c 1: Ki m tra BI U TH C n u dúng sang bu c 2, n u sai thì sang b u c 3(thoát). Bu c 2: Th c hi n l nh TRONG THÂN WHILE (có th l à l nh d on, ho c kh i l nh du c d t trong c p {} ). V bu c 1. Bu c 3: Thoát kh i l nh while Nh n xét: - Câu l nh có kh nang không du c th c hi n l n n ào n u bi u th c sai ngay l n ki m tra d u ti ên - Câu l nh có kh nang b l p vô h n n u bi u th c luôn dúng - > câu l nh ph i có kh nang thay d i giá tr c a bi u th c Câu h i 2: Gi i thích t ng câu l nh trong h àm main và cho bi t k t qu c a ch uong tr ình sau: Vd1: #include <iostream.h> void main(){ d1 unsigned int a=5, b=10; d2 cout<<(a++ + 3 * 5 / 2 * b << 2); d3 cout<<a<<endl; d4 cout<<b; } Bài làm: Dòng 1: khai báo 2 bi n a v à b ki u int không d u có kh i t o a=5, b=10 Dòng 2: in giá tr c a bt ra m àn hình bt có giá tr b ng: a++ + 3 * 5 / 2 * b << 2 toán t tác d g v ào bi n b, b=b- 1=9 a ++ + 3 * 5 / 2 * 9 << 2 toán t * v à / th c hi n 3*5/2*9=63 a ++ + 63 << 2 toán t + th c hi n a++ + 63=5+6 3=68 toán t d ch trái: 68<<2 = 272 toán t ++ th c hi n a++ => a=6 v y d òng 2 in ra s 272 dòng 3: in giá tr bi n a = 6 ra màn hình dua con tr xu ng d u d òng ti p theo dòng 4: in giá tr bi n b = 9 ra màn hình. K t qu hi n l ên màn hình là: 2726 9 vd 2 #include <iostream.h> void main(){ d1 unsigned int a=5, b=10; d2 cout<<(a++ + 3 | 5 / 2 * b << 2); d3 cout<<a<<endl d4 cout<<b; } Bài làm: Dòng 1: khai báo 2 bi n a v à b ki u int không d u có kh i t o a=5, b=10 Dòng 2: in giá tr c a bt ra m àn hình bt có giá tr b ng: a++ + 3 | 5 / 2 * b << 2 toán t tác d ng v ào b : b= 10 - 1 = 9 toán t * / : 5/2*9 = 18 toán t + : a++ + 3 = 5+3=8 toán t d ch trái << : 18<<2=72 toán t | (or theo bit): 8|72=72 toán t ++ tác d ng v ào a. a=5+1=6 v y d òng 2 in ra s 72 dòng 3: in ra giá tr bi n a=6, xu ng d òng dòng 4: in ra giá tr bi n b=9 K t qu hi n l ên màn hình là: 726 9 Vd3 #include <iostream.h> void main(){ d1 unsigned int a=5, b=10; d2 cout<<(a++ | 5 / 2 * b << 2); d3 cout<<a<<endl d4 cout<<b; } Bài làm: Dòng 1 : khai báo 2 bi n a v à b ki u int không d u có kh i t o a=5, b=10 Dòng 2: a++ | 5 / 2 * b << 2 : b=9 */: 5/2*9=18 <<: 18<<2=72 |: a++ | 72 =5|72=77 ++: a=6 Dòng 3: in ra a=6, xu ng d òng Dòng 4: in ra b=9 K t qu in ra m àn hình: 776 9 This document was created with Win2PDF available at http://www.win2pdf.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only. This page will not be added after purchasing Win2PDF. . void main(){ d1 unsigned int a=5, b =10; d2 cout<<(a++ + 3 * 5 / 2 * b << 2); d3 cout<<a<<endl; d4 cout<<b; } Bài làm: Dòng 1: khai báo 2 bi n a. void main(){ d1 unsigned int a=5, b =10; d2 cout<<(a++ + 3 | 5 / 2 * b << 2); d3 cout<<a<<endl d4 cout<<b; } Bài làm: Dòng 1: khai báo 2 bi n a. không d u có kh i t o a=5, b =10 Dòng 2: in giá tr c a bt ra m àn hình bt có giá tr b ng: a++ + 3 | 5 / 2 * b << 2 toán t tác d ng v ào b : b= 10 - 1 = 9 toán t * / : 5/2*9

Ngày đăng: 09/07/2014, 10:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan