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

giáo trình kỹ thuật lập trình nghề quản trị mạng máy tính trung cấp

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 (1.94 MB, 135 trang )

<span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 2 </small></b></i>

<b>LâI GIàI THIàU </b>

<i>Giáo trình <b><Kỹ thuật lập trình” được tóm gọn lý thuyết căn bản, các bài thực </b></i>

<i>hành mẫu thiết thực, cung cấp các kiến thức bản nhất làm nền tảng cho chuyên ngành CNTT. Nội dung giáo trình được trình bày qua các chương sau: tổng quan về kỹ thuật lâp trình, các khái niệm cơ bản, các lệnh có cấu trúc, hàm, kiểu mảng. Giáo trình được trình bày đa dạng các bài tập và hươꄁng dẫn giải vơꄁi nhiều chủ đề khác nhau như căn bản về kỹ thuật lập trình, từ các bài ứng dụng thực tiễn và ngơn ngữ lập trình minh họa là C hoặc C#… Các bài tập được sắp xếp thứ tự cấp độ từ dễ đến mở rộng phw hợp cho người tự học, tự thực hành,…trình độ trung cấp trung cấp…làm nền tảng về kiến thức căn bản của chuyên ngành CNTT. </i>

<i>Mặc dw cố gắng biên soạn, tuyển chọn các bài thực hành thiết thưc, dễ sử dụng … nhưng không thể tránh khỏi các thiếu sót ngồi mong muốn. Rất mong bạn đọc gần xa góp ý để giáo trình được tốt hơn. </i>

<i>Mọi góp ý vui lịng liên hệ: </i>

<i><b>Nguyễn Văn Lân </b></i>

<i>Email: – Website: www.ThuVienHocTap.Net </i>

<i>Điện thoại: 098 560 1838 Trân trọng giơꄁi thiệu đến bạn. </i>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 3 </small></b></i>

<b>MĀC LĀC </b>

<b><small>LâI GIàI THIàU ... 2</small></b>

<b><small>GIÁO TRÌNH MƠN HàC ... 5</small></b>

<b><small>TÊN MƠN HC: Kỵ THUT LP TRèNH ... 5</small></b>

<b><small>CHĂNG 1: TọNG QUAN V Kỵ THUT LP TRèNH ... 6</small></b>

<b><small>8.Biu diòn lu ó ... 12</small></b>

<b><small>9.Môi tr°ãng viÁt mã nguãn ... 19</small></b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 4 </small></b></i>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 5 </small></b></i>

<b>GIÁO TRÌNH MƠN HC </b>

<b>TấN MễN HC: Kỵ THUT LP TRèNH </b>

<b>Mó mụ đun/mơn hác: MH 09 </b>

<b>I. VÞ TRÍ, TÍNH CHÂT CĂA MƠN HàC </b>

<b>- Vị trí: Mơ đun đ°ợc bố trí sau khi học sinh học xong các mơn học, mơ đun </b>

chung, tin văn phịng, căn b¿n về tin học.

<b>- Tính chÁt: Là mơn học c¡ sá nghề bắt buộc, làm nền t¿ng cho các môn học, </b>

mơ đun khác.

<b>II. MĀC TIÊU CĂA MƠN HàC </b>

Sau khi học xong mơn học này, ng°ßi học có kh¿ năng:

<b>* KiÁn thức: </b>

<b>- Trình bày đ°ợc khái niệm về kỹ tht lÁp trình máy tính; </b>

<b>- Mơ t¿ đ°ợc ngơn ngữ lÁp trình: cú pháp, cơng dÿng cāa các câu lệnh; - Phân tích đ°ợc ch°¡ng trình: xác định nhiệm vÿ ch°¡ng trình; </b>

<b>- Thực hiện đ°ợc các thao tác trong mơi tr°ßng phát triển phần mềm: biên </b>

tÁp ch°¡ng trình, sử dÿng các công cÿ, điều khiển, thực đ¡n lệnh trợ giúp, gỡ rối, b¿y lỗi,v.v.;

<b>- Mô t¿ đ°ợc bài tồn thực tiễn vào máy tính, dữ liệu vào, dữ liệu ra, xử lí </b>

mã nguồn

<b>* Kÿ nng: </b>

<b>- Thực hành viết ch°¡ng trình từ căn b¿n đến bài tồn thực tiễn; - Phân tích bài tốn, xác định rõ dữ liệu vào-ra và xử lí mã nguồn; - Tìm lỗi, xử lí lỗi, đọc các thơng báo cāa trình biên dịch; </b>

<b>- Thao tác sử dÿng các chăc năng cāa trình biên dịch; - Kỹ năng sử dÿng máy tính thành thạo h¡n; </b>

<b>- Phát triển t° duy, phân tích vÁn đề, phân tích bài tốn cần xử lí. * Nng lāc tā chă và trách nhiám: </b>

<b>- Rèn luyện lịng u nghề, t° thế tác phong cơng nghiệp, tính kiên trì, sáng </b>

tạo trong cơng việc, trao đổi học hỏi bạn bè, làm việc nhóm, trách nhiệm với mơn học, nội quy thực hành, kh¿ năng tự tìm hiểu.

<b>- Rèn luyện trách nhiệm tự học, tự tìm hiểu thêm về mơn học. </b>

<b>- Thực hiện an tồn sử dÿng máy tính, điện, trách nhiệm với trang thiết bị </b>

phòng học.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 6 </small></b></i>

<b>- Bố trí làm việc khoa học đ¿m b¿o an ton cho ngòi v phĂng tin hc </b>

tp.

<b>NịI DUNG MễN HC </b>

<b>CHĂNG 1: TọNG QUAN V Kỵ THUT LÂP TRÌNH </b>

<b>Mã ch°¢ng: MH09-01 </b>

<b>LÁp trình là sử dÿng ngơn ngữ để viết, hiểu các dịng lệnh, cÁu trúc dữ liệu </b>

và thuÁt toán để gi¿i quyết bài toán.

Mã ch°¡ng trình đ°ợc thơng dịch và biên dịch để ch°¡ng trình sau cùng chạy đ°ợc.

<b>Thơng dßch là q trình kiểm tra và chuyển đổi câu lệnh t°¡ng ăng với ngôn </b>

ngữ máy, thực hiện từng câu lệnh.

<b>Biên dßch là q trình kiểm tra tồn bộ mã ch°¡ng trình và chuyển đoi thành </b>

ch°¡ng trình thực thi đ°ợc.

<b>Ngơn ngÿ lÁp trình là hệ thống các ký hiệu tuân theo các qui °ớc về ngữ pháp </b>

và ngữ nghĩa, dùng để xây dựng thành các ch°¡ng trình cho máy tính.

<b>Tht tốn: là tÁp hợp (dãy) hữu hạn cac chỉ thị (hành động) đ°ợc định nghĩa </b>

rõ ràng nhằm gi¿i quyết một bài tốn cÿ thể nào đó.

<b>Bao gãm 5 tính chÃt căa tht tốn: </b>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 7 </small></b></i>

✓<i> Tính chính xác: q trình tính tốn hay các thao tác máy tính thực hiện là </i>

chính xác.

✓<i> Tính rõ ràng: các câu lệnh minh bạch đ°ợc sắp xếp theo thă tự nhÁt định. </i>

✓<i> Tính khách quan: đ°ợc viết bái nhiều ng°ßi trên máy tính nh°ng kết qu¿ </i>

-<b> Cú pháp: đ°ợc hiểu bái ngôn ngữ đ°ợc định nghĩa nh° ngôn ngữ Pascal </b>

định nghĩa cú pháp khác với ngôn ngữ C#,…

-<b> Ngÿ ngh*a: Phạm vi tác động cāa các đối t°ợng trong khối lệnh cāa ch°¡ng </b>

trình.

-<b> Tên: Các đối t°ợng đ°ợc khai báo trong mã ch°¡ng trình. </b>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<i><b><small>Khoa Cơng nghệ thông tin – TCN Quang Trung Trang 8 </small></b></i>

-<b> Từ khố (tên dùng riêng): Ngơn ngữ lÁp trình đ°ợc định danh bái những </b>

tên dùng riêng, chúng ta không sử dÿng tên này để đặt tên biến. Do vÁy, khi viết mã ch°¡ng trình chúng ta đặt tên đúng và dễ hiểu nhÁt khơng đ°ợc trùng tên từ khố.

-<b> Hằng: Có giá trị khơng đổi trong quá trình thực hiện ch°¡ng trình. </b>

-<b> BiÁn: Do ng°ßi dùng đặt, chúng dùng để l°u trữ giá trị và có thể thay đổi. </b>

Tuỳ thuộc vào ngơn ngữ và kiểu dữ liệu cāa biến có miền giá trị khác nhau. Khi khai báo biến căn că vào phạm vi cāa cāa nó mà có biến cÿc bộ và tồn cÿc.

-<b> Chú thích: Khi viết mã ch°¡ng trình, chúng ta th°ßng chú thích để hiểu, </b>

diễn gi¿i đối t°ợng khai báo, lí do thực hiện… Tuỳ thuộc vào ngơn ngữ mà có chú thích khác nhau nh° Pascal( {..}, (*…*), C - C++ - Java – C# (//…từng dòng lệnh, /*…..*/) Visual Basic (8….).

Một số ngôn ngữ hiện đại đ°ợc sử dÿng rộng rãi để xây dựng phần mềm nh° Java, Visual Basic.NET, C#... Ph°¡ng pháp lÁp trình mới là lÁp trình h°ớng đối t°ợng đ°ợc sử dÿng rộng rãi.

Một số ngơn ngữ lÁp trình nh°: ngơn ngữ máy, hợp ngữ, ngôn ngữ bÁc cao.

<b>3.</b>

<b>ThuÁt giÁi (Algorithm) </b>

<small>Là một dãy các thao tác xác định trên một đối t°ợng, sao cho sau khi th°c hiện một số hữu hạn các b°ớc thì đạt đ°ợc mÿc tiêu. Theo R.A.Kowalski thì b¿n chÁt cāa thuÁt gi¿i: </small>

<b><small>ThuÁt giÁi = Logic + ĐiÃu khiÅn </small></b>

<i><b><small>Logic</small></b></i><small>: Đây là phần khá quan trọng, nó tr¿ lßi câu hỏi "Tht gi¿i làm gì, gi¿i quyết van đề gì?", những yếu tố trong bài tốn có quan hệ với nhau nh° thế nào v.v… à đây bao gồm những kiến thăc chuyên môn mà bạn ph¿i biết để có thể tiến hành gi¿i bài tốn. </small>

<i><b><small>Điều khiển: Là cách thăc tiến hành áp dÿng thanh phần logic để gi¿i quyết vÁn đề. </small></b></i>

<small>Các tính chÁt cāa tht tốn gồm 5 tính chÁt sau: </small>

<i><small>Tính chính xác</small></i><small>: q trình tính tốn hay các thao tác máy tính thực hiện là chính xác. </small>

<i><small>Tính rõ ràng</small></i><small>: các câu lệnh minh bạch đ°ợc sắp xếp theo thă tự nhÁt định. </small>

<i><small>Tính khách quan</small></i><small>: đ°ợc viết bái nhiều ng°ßi trên máy tính nh°ng kết qu¿ ph¿i nh° nhau. </small>

<i><small>Tính phổ dụng: có thể áp dÿng cho một lớp các bài tốn có đầu vào t°¡ng tự nhau. Tính kết thúc: hữu hạn các b°ớc tính tốn. </small></i>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 9 </small></b></i>

<b>4.</b>

<b>Mòt sỏ phÂng phỏp lp trình </b>

<b>LÁp trình tun tính: Sử dÿng ngơn ngữ máy để lÁp trình và sử dÿng các khố </b>

cāa c¡ khí để nạp vào máy. Ph°¡ng pháp rÁt khó khi viết mã và khó khăn trong việc kiểm sốt ch°¡ng trình.

<b>LÁp trình cÃu trúc: Ch°¡ng trình gồm các hàm, thā tÿc riêng rẽ. Giữa chúng có </b>

thể độc lÁp hoặc giao tiếp với nhau. Ph°¡ng pháp này đ¡n gi¿n cho việc lÁp trình nh°ng với những ch°¡ng trình phăc tạp khó khăn trong việc tổ chăc kiểu dữ liệu.

<b>LÁp trình h°áng đái t°ÿng: Ph°¡ng pháp này kế thừa từ ph°¡ng pháp lÁp trình </b>

cÁu trúc kết hợp với trừu t°ợng hoá dữ liệu. Ph°¡ng pháp này giúp cho việc lÁp trình nhanh chóng h¡n, kh¿ năng tái sử dÿng, kế thừa.. thích trong c¿ đội ngā lÁp trình.

<b>LÁp trình trāc quan: Đây là ph°¡ng pháp lÁp trình thực tế đ°ợc sử dÿng, kế </b>

thừa những thành qu¿ từ các ph°¡ng pháp tr°ớc. Với cách lÁp trình này ng°ßi thiết kế thÁy ngay kết qāa. Một số ngôn ngữ nh° Java (sử dÿng các công cÿ hỗ trợ lÁp trình trực quan), Visual Basic.NET, Visual C#.. là những ví dÿ điển hình về ph°¡ng pháp lÁp trình này.

Với sự phát triển cāa công nghệ phần mềm thì từ những ph°¡ng pháp lÁp trình trên sinh ra các nhánh lÁp trình mới nh° lÁp trình nhúng, lÁp trình với các thành phần có sẵn…

<b>5.</b>

<b>Ch°¢ng trình </b>

Là một tÁp hợp các mô t¿, các phát biểu, nằm trong một hệ thống qui °ớc về ý nghĩa và thă tự thực hiện, nhằm điều khiển máy tính làm việc. Theo Niklaus Wirth thì:

<b>Ch°¢ng trình = Tht toán + CÃu trúc dÿ liáu </b>

<i><b>Các thuÁt toán và ch°¡ng trình đều có cÁu trúc dựa trên 3 cấu trúc điều khiển </b></i>

<i><b>cơ bản: </b></i>

* <i><b>Tuần tự (Sequential): Cac b°ớc thực hiện tuần tự một cách chính xác từ trên </b></i>

xuống, mỗi b°ớc chỉ thực hiện đúng một lần.

<b>* </b><i><b>Chọn lọc (Selection): Chọn 1 trong 2 hay nhiều thao tác để thực hiện. </b></i>

<b>* </b><i><b>Lặp lại (Repetition): Một hay nhiều b°ớc đ°ợc thực hiện lặp lại một số lần. </b></i>

Muốn trá thành lÁp trình viên chuyên nghiệp bạn hãy làm đúng trình tự để có thói quen tốt và thuÁn lợi sau này trên nhiều mặt cāa một ng°ßi làm máy tính. Bạn hãy làm theo các b°ớc sau:

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 10 </small></b></i>

Tìm, xây dựng thuÁt gi¿i (trên giÁy) → viết ch°¡ng trình trên máy → dịch ch°¡ng trình → chạy và thử ch°¡ng trình

<b>6.</b>

<b>Các b°ác lÁp trình </b>

Ng°ßi lÁp trình nắm tổng qt các b°ớc chính khi xây dựng một ch°¡ng trình ăng dÿng sẽ có ý nghĩa quan trọng trong tiến trình phát triển xây dựng phần mềm ăng dÿng. Qua đó, giúp cho ng°ßi phát triển nắm rõ cơng việc, tiến trình thực hiện để tiếp nhÁn yêu cầu ban đầu đến triển khai, b¿o trì và phát trien các phiên b¿n cÁp nhÁt trong quá trình sử dÿng.

Theo thßi gian, các b°ớc lÁp trình có thể có nhiều công đoạn khác nhau, với khuôn khổ tài liệu học tÁp, chúng tơi tóm gọn những b°ớc chính căn b¿n nhÁt trong tiến trình xây dựng phần mềm ăng dÿng.

<b><small>B°ác 1: Xác định mÿc tiêu cāa ch°¡ng trình cần xây dựng là gì; B°ác 2: Thiết kế ch°¡ng trình; </small></b>

<b><small>B°ác 3: Viết mã ch°¡ng trình nguồn; B°ác 4: Biên dịch; </small></b>

<b><small>B°ác 5: Chạy ch°¡ng trình; </small></b>

<b><small>B°ác 6: Kiểm tra và gỡ lỗi ch°¡ng trình; B°ác 7: B¿o trì và nâng cÁp ch°¡ng trình. </small></b>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 11 </small></b></i>

<b>7.</b>

<b>Xác đßnh IPO </b>

<b>IPO (Input-Process-Output) là cách xác định dữ liệu đ°a vào để hệ thống để xử </b>

lí sau đó tr¿ kết qu¿ xử lí.

Quy trình xử lý c¡ b¿n cāa máy tính gồm I-P-O.

<b>Ví dā minh háa: Máy tính bỏ túi khoa học mà học sinh th°ßng sử dÿng là có </b>

chăc năng gi¿i ph°¡ng trình bÁc 2 với một ẩn số.

VÁy thì, dữ liệu đ°a vào máy tính là các hệ số A,B,C. Máy tính đã cài đặt sẵn ch°¡ng trình để xử lí gi¿i ph°¡ng tringh bÁc 2 với một ẩn số từ các hệ số A,B, C. Ng°ßi sử dÿng chỉ quan tâm kết qu¿ cuối cùng là nghiệm cāa ph°¡ng trình x1, x2.

Tóm tắt:

<b>I: các hệ số số A, B, C. </b>

<b>P: Máy tính đã cài đặt sẵn ch°¡ng trình để xử lí. O: Nghiệm X1, X2. </b>

<b><small>Input </small></b>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 12 </small></b></i>

Nh° vÁy, câu hỏi đặt ra là máy tính đã cài đặt ch°¡ng trình xử lí bài tốn nh° thế nào? Để gi¿i ph°¡ng trình bÁc 2 một ẩn này máy tính đã đ°ợc cài đặt ch°¡ng trình lÁp trình sẵn tích hợp vào máy tính bỏ túi đó. Cơng việc này, ng°ßi lÁp trình ph¿i viết mã nguồn để gi¿i quyết bài toán này.

<b>Ví dā 1: Xác định Input, Process, Output cāa ch°¡ng trình tính tiền l°¡ng cơng </b>

nhân tháng 10/2002 biết rằng l°¡ng = l°¡ng căn b¿n * ngày công

<i>Input </i> : l°¡ng căn b¿n, ngày công

<i>Process </i> : nhân l°¡ng căn b¿n với ngày cơng

<b>8.</b>

<b>BiÅu dißn l°u đã </b>

L°u đồ tht tốn là cơng cÿ dùng để biểu diễn tht tốn, việc mơ t¿ nhÁp (input), dữ liệu xt (output) và luồng xữ lý thơng qua các ký hiệu hình học. Ph°¡ng pháp duyệt là: Duyệt từ trên xuống; Duyệt từ trái sang ph¿i.

<b>KÝ HIàU </b>

Bắt đầu và kết thúc ch°¡ng trình Luồng xử lí

Kiểm tra điều kiện NhÁp

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 13 </small></b></i>

XuÁt

Xử lí dữ liệu Giá trị tr¿ về Điểm ghéo nối

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 14 </small></b></i>

<b>CÃu trúc for/while CÃu trúc do..while </b>

<b>Ví dā 3: NhÁp năm sinh cāa một ng°ßi. Tính tuổi ng°ßi đó. </b>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<i><b><small>Khoa Cơng nghệ thơng tin – TCN Quang Trung Trang 15 </small></b></i>

<b>Ví dā 4: NhÁp 2 số a và b. Tính tổng, hiệu, tính và th°¡ng cāa hai số đó. </b>

<b>Ví dā 5: NhÁp tên s¿n phẩm, số l°ợng và đ¡n giá. Tính tiền và thuế giá trị gia </b>

tăng ph¿i tr¿, biết:

tiền = số l°ợng * đ¡n giá thuế giá trị gia tăng = 10% tiền

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<i><b><small>Khoa Công nghệ thơng tin – TCN Quang Trung Trang 16 </small></b></i>

<b>Ví dā 6: NhÁp điểm thi và hệ số 3 môn Tốn, Lý, Hóa cāa một sinh viên. Tính </b>

điểm trung bình cāa sinh viên đó.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 17 </small></b></i>

<b>Ví dā 7: NhÁp bán kính cāa đ°ßng trịn. Tính chu vi và diện tích cāa hình trịn </b>

đó.

<b>Ví dā 8: NhÁp vào 2 số nguyên. Tính min và max cāa hai số đó. </b>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 18 </small></b></i>

<b>Ví dā 9: Gi¿i và biện ln ph°¡ng trình: ax+b=0 </b>

<b>Ví dā 10: Tính tổng: S = 1+ 2 + 3 +…+ n , với n>0 </b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 19 </small></b></i>

<b>9.</b>

<b>Môi tr°ãng viÁt mã nguãn </b>

<b>Integrated Development Environment (IDE) là một phần mềm chăa tÁt c¿ </b>

những thă bạn cần để phát triển ăng dÿng nh° viết mã (coding) biên dịch (compiler), liên kết (linker) và gỡ lỗi (debug), xuÁt b¿n ăng dÿng (publish),…ch°¡ng trình cāa bạn.

<b>IDE căa Borland C++ 5.02 /Tubor C++: </b>

Mơi tr°ßng phát triển tích hợp IDE (Integrated Development Environment) Biên tÁp ch°¡ng trình nguồn (Trình EDIT).

Biên dịch ch°¡ng trình (Trình COMPILE). Chạy ch°¡ng trình nguồn (Trình RUNTIME). Sửa lỗi ch°¡ng trình nguồn (Trình DEBUG).

Phần này các em khám phần mềm khi thực hành, giáo viên h°ớng d¿n một số chăc năng cāa phần mềm Borland C++ 3.2. Một số yêu cầu cần thực hiện:

✓ Cài đặt phần mềm Borland C++ hoặc Tubor C++ ✓ Sử dÿng các Menu chăc năng

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 20 </small></b></i>

✓ Má - l°u file, đóng mơi tr°ßng soạn th¿o…

✓ Đặt tên File, sao chép file mã nguồn sang các thiết bị khác nh° ổ đĩa căng, USB…

Quá trình viết mã nguồn chạy ch°¡ng trình thì IDE sẽ chuyển theo trình tự:

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<i><b><small>Khoa Cơng nghệ thông tin – TCN Quang Trung Trang 21 </small></b></i>

<i><b>Chú ý</b></i>: Với mơi tr°ßng Windows 7, 10, 11 thì Borland C++ 5.02/ Tubor C++ khơng cịn hỗ trợ để lÁp trình. Do đó, bạn cần sử dÿng phiên b¿n Windows cũ h¡n hoặc tùy biến để chạy đ°ợc mơi tr°ßng Windows mới hoặc sử dÿng IDE khác phù hợp nhÁt.

<b>IDE căa Dev C++: </b>

Để Viết ch°¡ng trình C với Dev C++, tr°ớc hết chúng ta cần tạo một file mới để ghi mã nguồn ch°¡ng trình. Hãy Chọn File/New/Source File (Hoặc Án Ctrl+N) để tạo một file mới nh° sau:3

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 22 </small></b></i>

Hãy copy hoặc nhÁp mã nguồn này vào file vừa tạo, sau đó l°u lại file trên với tên helloworld.c tại một th° mÿc bÁt kỳ, ví dÿ nh° là D:\code\c\helloworld.c chẳng hạn, bằng cách Chọn File/Save (Hoặc Án Ctrl+S) để l°u file vừa viết.

Hãy nhÁp tên file helloworld.c vào hộp Filename và chọn đuôi file .c(đối với file C) trong hộp Save as Type , và sau đó nhÁn Save để hồn tÁt quá trình l°u file. Sau khi đã l°u file helloworld.c á trên, chúng ta sẽ tiến hành Biên dịch và chạy ch°¡ng trình C với Dev C++ bằng cách Chọn Execute/Compile & Run (Hoặc Án F11):

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 23 </small></b></i>

IDE cāa Visual C++ (cāa bộ Visual Studio)

Visual Studio Code là một trình biên tÁp mã đ°ợc phát triển bái Microsoft dành cho Windows, Linux và macOS. Nó hỗ trợ chăc năng debug, đi kèm với Git, có syntax highlighting, tự hoàn thành mã thông minh, snippets, và c¿i tiến mã nguồn. Nó cũng cho phép tùy chỉnh, do đó, ng°ßi dùng có thể thay đổi theme, phím tắt, và các tùy chọn khác. Visual Studio Code miễn phí và là phần mềm mã nguồn má.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 24 </small></b></i>

<b>10.</b>

<b>Bài tÁp </b>

1. Trình bày một số khái niệm nh° phần mềm là gì, các b°ớc xây dựng phần mềm ăng dÿng CNTT.

2. Trình bày tht tốn là gì.

3. Các cách biểu diễn thuÁt toán? ¯u và khuyết điểm cāa từng ph°¡ng pháp. Cho ví dÿ minh họa.

4. Liệt kê một số phần mềm ăng dÿng á mơi tr°ßng Web, điện thoại, máy tính Windows… mà em đ°ợc biết.

5. Hãy trình bày tht tốn (cách thăc gi¿i) với ph°¡ng trình một ẩn bÁc nhÁt ax +b=0

6. Hãy trình bày cách tính số tuổi mộ ng°ßi khi biết năm sinh cāa họ.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 25 </small></b></i>

7. Trình bày cách xử lí bài tốn: NhÁp 2 số a và b. Tính tổng, hiệu, tính và th°¡ng cāa hai số đó.

8. Trình bày cách xử lí bài toan: NhÁp tên s¿n phẩm, số l°ợng và đ¡n giá. Tính tiền và thuế giá trị gia tăng ph¿i tr¿, biết:

tiền = số l°ợng * đ¡n giá thuế giá trị gia tăng = 10% tiền

9. Hãy trình giã ngữ mơ t¿ trạng thái đèn tín hiệu giao thơng với 3 trạng thái: Xanh-Vàng-Đỏ.

<b>Hãy xác đßnh IPO các bài tốn sau: </b>

10. Pha chế một ly cà phê sữa đá.

11. Học sinh đi công chăng bằng tốt nghiệp THCS. 12. Mang laptop thay ổ căng SSD hoặc thay bàn phím.

13. NhÁp năm sinh cāa một ng°ßi. Tính tuổi ng°ßi đó so với năm hiện tại. 14. NhÁp 2 số a và b. Tính tổng, hiệu, tính và th°¡ng cāa hai số đó.

15. NhÁp tên s¿n phẩm, số l°ợng và đ¡n giá. Tính tiền và thuế giá trị gia tăng ph¿i tr¿, biết rằng:

tiền = số l°ợng * đ¡n giá; thuế giá trị gia tăng = 10% tiền.

16. NhÁp điểm thi và hệ số 3 mơn Tốn, Lý, Hóa cāa một sinh viên. Tính điểm trung bình cāa sinh viên đó.

17. NhÁp bán kính cāa đ°ßng trịn. Tính chu vi và diện tích cāa hình trịn đó. 18. NhÁp vào số xe (gồm 4 chữ số) cāa bạn. Cho biết số xe cāa bạn đ°ợc

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 26 </small></b></i>

26. Viết ch°¡ng trình nhÁp vào N số nguyên, tìm số lớn nhÁt, số nhỏ nhÁt 27. Tìm số lớn nhÁt trong 3 số.

28. NhÁp số n kiểm tra số d°¡ng hay âm. 29. Gi¿i ph°¡ng trình bÁc 2: ax<small>2</small> + bx + c = 0

30. NhÁp các số a, b, c, d. In ra màn hình số lớn nhÁt, số bé nhÁt

31. NhÁp số có ba chữ số, tính tích các chữ số cāa n. Ví dÿ: n = 123 thì 1*2*3 = 6

32. Viết ch°¡ng trình nhÁp từ bàn phím số gồm 4 chữ số. XuÁt ra màn hình các số tăng dân. Ví dÿ 281 thì in ra màn hình 1 2 8.

33. Viết ch°¡ng trình nhÁp vào 1 số từ 0 đến 9. In ra chữ số t°¡ng ăng. Ví dÿ: nhÁp vào số 7, in ra "Bay".

34. NhÁp số ngun d°¡ng N.Tính tổng bình ph°¡ng các số lẻ và tổng bình ph°¡ng các số chẵn đầu tiên (từ 1->N).

35. Viết ch°¡ng trình nhÁp chỉ số điện tháng hiện tại và tháng tr°ớc đó để tính.

36. Viết ch°¡ng trình tính n!

37. NhÁp vào 6 số thực a, b, c, d, e, f . Gi¿i hệ ph°¡ng trình sau :

38. Tính giá trị cāa biểu thăc S = 1*2*…*n = n! S = 1! + 2! + … + n!

Tính S = 1 + 2+ 3+ … + n (n>0)

Tính S = 1<small>2</small> + 2<small>2</small> + 3<small>2</small> + 4<small>2</small> + …+ n<small>2</small> (n>0) 39. Tính giá trị biểu thăc, với n >0

40. Tính giá trị biểu thăc, với n >0

41. Tính giá trị biểu thăc, với n >0

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 27 </small></b></i>

<b>CH¯¡NG 2: CÁC KHÁI NIàM CN BÀN </b>

<b>Mã ch°¢ng: MH09-02 </b>

❖<b> Giái thiáu: </b>

Ch°¡ng này chúng ta cùng tìm hiểu các khái niệm về ngơn ngữ lÁp trình C, các thành phần căn b¿n cāa ngôn ngữ này. Đây đ°ợc xem là ngôn ngữ nền t¿ng căn b¿n nhÁt để sử dÿng các ngôn ngữ hiện đại h¡n nh° C++, Java, C#,… Với ng°ßi mới bắt đầu sử dÿng ngơn ngữ lÁp trình thì tìm hiểu các thành phần căn b¿n cāa ngơn ngữ đóng vài trị quan trọng để tìm hiểu sâu h¡n các chā điểm khác nh° hàm lÁy dữ liệu, xuÁt dữ liệu, các thành phần cāa ngơn ngữ lÁp trình nh° từ khóa, khối lệnh, biến, quy °ớc đặt tên, phạm vi hoạt động cāa biến….

❖<b> Māc tiêu: </b>

<b>- Trình bày và sử dÿng đ°ợc hệ thống kí hiệu và từ khóa ngơn ngữ lÁp </b>

trình C;

<b>- Mô t¿ đ°ợc các kiểu dữ liệu; </b>

<b>- Trình bày đ°ợc và vÁn dÿng đ°ợc các loại biến, hằng biểu thăc cho từng </b>

Ngơn ngữ lÁp trình C ra đßi trong những thÁp kỷ 60 và 70 để thiết kế phần

<b>mềm hệ thống nh° hệ điều hành Unix. Năm 1972 ngôn ngữ này do Ken Thompson và Dennis Ritchie phát triển tại phịng thí nghiệm Bell Telephone. </b>

Là ngơn ngữ lÁp trình có cÁu trúc và phân biệt chữ Hoa - th°ßng (case sensitive) và thuần chuẩn ANSI C.

Ngơn ngữ này đ°ợc nhiều hãng phát triển thành các ngôn ngữ mới nh° C<small>++</small>, Visual C<small>++</small>…Giáo trình này chúng ta thực hành với ngơn ngữ C chuẩn á mơi tr°ßng Borland C++ 3.1 (DOS) hoặc 5.02 (Windows).

¯u điểm cāa C

RÁt mạnh và linh động, có kh¿ năng thể hiện bÁt că ý t°áng nào.

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 28 </small></b></i>

Đ°ợc sử dÿng rộng rãi bái các nhà lÁp trình chun nghiệp.

Có tính kh¿ chuyển, ít thay đổi trên các hệ thống máy tính khác nhau. Rõ ràng, cơ đọng.

LÁp trình đ¡n thể, tái sử dÿng thơng qua hàm.

<b>Q TRÌNH THĀC THI MÃ NGN </b>

Q trình thực thi mã nguồn ngôn ngữ C nh° sau: 1. Ch°¡ng trình C (mã nguồn) đ°ợc gửi đến Preprocessor đầu tiên. Preprocessor có trách nhiệm chuyển đổi các chỉ thị tiền xử lý thành các giá trị t°¡ng ăng. Bộ tiền xử lý tạo ra một mã nguồn má rộng.

2. Mã nguồn đ°ợc má rộng đ°ợc gửi tới trình Compiler biên dịch mã và chuyển đổi nó thành mã assembly.

3. Mã assembly đ°ợc gửi đến Assembler để lắp ráp mã và chuyển đổi nó thành mã đối t°ợng. Bây giß tệp hello.obj đ°ợc tạo ra.

4. Mã đối t°ợng đ°ợc gửi đến Linker liên kết nó tới th° viện nh° các tệp header. Sau đó, nó đ°ợc chuyển đổi thành mã thực thi. Một tÁp tin hello.exe đ°ợc tạo ra.

5. Mã thực thi đ°ợc gửi đến Loader nạp nó vào bộ nhớ và sau đó nó đ°ợc thực thi. Sau khi thực hiện, output cāa ch°¡ng trình đ°ợc gửi đến console.

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 29 </small></b></i>

<b>2.</b>

<b>Các thành phÅn cn bÁn ngôn ngÿ C </b>

<b>1. Các kí hiáu </b>

{ } Bắt đầu và kết thúc hàm hay khối lệnh.

void main() {

} ; Kết thúc khai báo biến, một lệnh,

một lßi gọi hàm, hay khai báo nguyên m¿u hàm.

int x; void

NhapMang(int a[], int &n);

<b>2. Từ khóa </b>

Từ khóa là từ có ý nghĩa xác định dùng để khai báo dữ liệu, viết câu lệnh… Trong C có các từ khóa sau:

register return short static struct signed sizeof switch typedef union unsigned void volatile while

<i><b>Chú ý</b></i>: Từ khóa ph¿i viết chữ th°ßng, nếu dùng Borland C++ thì chữ màu trắng.

<b>3. Chú thích </b>

Trình biên dịch sẽ bỏ qua các chú thích trong mã ch°¡ng trình. Chú thích một dịng:

//Chú thích một dịng Ví dÿ:

//Ham nay dung de nhap mang

void NhapMang(int a[], int &n); Chú thích nhiều dịng:

/*

Chú thích nhiều dịng */

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<i><b><small>Khoa Cơng nghệ thơng tin – TCN Quang Trung Trang 30 </small></b></i>

<b>4. Khai báo Header - th° vián </b>

Để sử dÿng các hàm, đối t°ợng đ°ợc cài đặt sẵn cāa ngôn ngữ C, chúng ta cần khai báo th° viện.

Ví dÿ:

#include"stdio.h" #include"conio.h" #include"string.h" #include<stdlib.h> #include<dos.h> #include"math.h"

<b>5. KiÅu dÿ liáu </b>

Turbo C có 4 kiểu c¡ sá nh° sau:

Kiểu số nguyên: giá trị cāa nó là các số nguyên nh° 2912, -1706, … Kiểu số thực: giá trị cāa nó là các số thực nh° 3.1415, 29.12, -17.06, … Kiểu luÁn lý: giá trị đúng hoặc sai.

Kiểu ký tự: 256 ký tự trong b¿ng mã ASCII.

<b>TT KiÅu dÿ liáu </b>

<b>(Type) th°ác <sup>Kích </sup>(Length) </b>

<b>MiÃn giá trß (Range) </b>

1 2 3 4 5 6 7 8 9 10 11

unsigned char char

enum

unsigned int short int int

unsigned long long

float double

long double

1 byte 1 byte 2 bytes 2 bytes 2 bytes 2 bytes 4 bytes 4 bytes 4 bytes 8 bytes 10 bytes

0 đến 255 – 128 đến 127 – 32,768 đến 32,767

0 đến 65,535 – 32,768 đến 32,767 – 32,768 đến 32,767

0 đến 4,294,967,295 – 2,147,483,648 đến 2,147,483,647

3.4 * 10<sup>–38</sup> đến 3.4 * 10<small>38</small>

1.7 * 10<sup>–308</sup> đến 1.7 * 10<small>308</small>

3.4 * 10<sup>–4932</sup> đến 1.1 * 10<small>4932</small>

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 31 </small></b></i>

<b>6. Tên biÁn và khai báo biÁn </b>

Một dãy ký tự dùng để chỉ tên một hằng số, hằng ký tự, tên một biến, một kiểu dữ liệu, một hàm một hay thā tÿc.

Khơng đ°ợc trùng với các từ khóa và đ°ợc tạo thành từ các chữ cái và các chữ số nh°ng bắt buộc chữ đầu ph¿i là chữ cái hoặc _.

Số ký tự tối đa trong một tên là 255 ký tự và đ°ợc dùng ký tự _ chen trong tên nh°ng không cho phép chen giữa các kho¿ng trắng

<i>Cú pháp: Kiểu dữ liệu Tên biến; </i>

Ví dÿ:

float f; <i>//khai báo biến f kiểu dữ liệu float </i>

int i; <i>//khai báo biến i có kiểu dữ liệu int </i>

long l; <i>//khai báo biến l có kiểu dữ liệu là long </i>

Ví dÿ: Khai báo và khái tạo int a, b, c;

a = 1; b = 2; c = 5; Hoặc:

int a = 1, b = 2, c = 5; Phạm vi cāa biến

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 32 </small></b></i>

<b>Khi khai báo và sử dÿng biến chúng ta cần xem xét phạm vi sử dÿng cāa nó. Có hai lo¿i ph¿m vi căa biÁn: </b>

Khai báo biến ngồi (biến tồn cÿc): Vị trí biến đặt bên ngoài tÁt c¿ các hàm, cÁu trúc... Các biến này có ¿nh h°áng đến tồn bộ ch°¡ng trình. Chu trình sống cāa nó là bắt đầu chạy ch°¡ng trình đến lúc kết thúc ch°¡ng trình.

Khai báo biến trong (biến cÿc bộ): Vị trí biến đặt bên trong hàm, cÁu trúc…. Chỉ ¿nh h°áng nội bộ bên trong hàm, cÁu trúc đó…. Chu trình sống cāa nó bắt đầu từ lúc hàm, cÁu trúc đ°ợc gọi thực hiện đến lúc thực hiện xong.

n = 2 + 3 * 5;

=> n = 2 + (3 * 5); a > 1 && b < 2

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 33 </small></b></i>

% : lÁy phần d°áp dÿng trên các tốn hạng có kiểu dữ liệu char, int, long. * Thă tự °u tiên: Đ¿o dÁu +, – ( ) *, / , % +, –

<b>Ví dā </b>

10%4 = 2 (10 chia 4 d° 2); 9%3 = 0 (9 chia 3 d° 0) 3 * 5 + 4 = 19

<= : nhỏ h¡n hoặc bằng == : bằng

!= : khác

* Thă tự °u tiên: > , >= , < , <= == , !=

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 34 </small></b></i>

Kết qu¿ cāa phép toán quan hệ là số nguyên kiểu int, bằng 1 nếu đúng, bằng 0 nếu sai. Phép tốn quan hệ ngồi tốn hạng đ°ợc sử dÿng là số cịn đ°ợc sử dÿng với kiểu dữ liệu char.

Thă tự °u tiên giữa toán tử số học và toán tử quan hệ Toán tử số học Tốn tử quan hệ

Ví dÿ:

4 > 10 → có giá trị 0 (sai) 4 >= 4 → có giá trị 1 (đúng) 3 == 5 → có giá trị 0 (sai) 2 <= 1 → có giá trị 0 (sai) 6 != 4 → có giá trị 1 (đúng)

6 – 3 < 4 → có giá trị 1 (đúng), t°¡ng đ°¡ng (6 – 3) < 4

–2 * –4 < 3 + 2 → có giá trị 0 (sai), t°¡ng đ°¡ng (–2 * –4) < (3 + 2)

<b>Phép toán luÁn lý </b>

! : NOT (phép phā định) &&: AND (phép và)

|| : OR (phép hoặc)

Toán hạng a Toán hạng b !a a && b a || b Khác 0

Khác 0 Bằng 0 Bằng 0

Khác 0 Bằng 0 Khác 0 Bằng 0

0 (sai) 0 (sai) 1 (đúng) 1 (đúng)

1 (đúng) 0 (sai) 0 (sai) 0 (sai)

1 (đúng) 1 (đúng) 1 (đúng) 0 (sai) <small>* Thă tự °u tiên: ! && || </small>

Ví dÿ :

!(2 <= 1) → có giá trị 1 (đúng) 5 && 10 → có giá trị 1 (đúng) !6 → có giá trị 0 (sai)

1 && 0 → có giá trị 0 (sai) 1 || 0 → có giá trị 1 (đúng) * Thă tự °u tiên giữa các toán tử:

<small>! Toán tử số học Toán tử quan hệ && || </small>

<b>Phép toán trên bit (bitwise) </b>

& : và (AND)

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 35 </small></b></i>

| : hoặc (OR)

^ : hoặc loại trừ (XOR) >> : dịch ph¿i

<< : dịch trái <small>~ : đ¿o </small>

Bit a Bit b ~a a & b a | b a ^ b 0

0 1 1

0 1 0 1

1 1 0 0

0 0 0 1

0 1 1 1

0 1 1 0 <small>Ví dÿ: </small>

<small>a = 13 → đổi ra hệ nhị phân → 1101 b = 10 → đổi ra hệ nhị phân → 1010 </small>

<small>1101 1101 1101 & 1010 | 1010 ^ 1010 </small>

<b><small> = 1000 = 1111 = 0111 </small></b>

<b><small> = 8 = 15 = 7</small></b><small>(dạng thÁp phân) a = 1235 → đổi ra hệ nhị phân → 0100 1101 0011 </small>

<small> b = 465 → đổi ra hệ nhị phân → 0001 1101 0001 </small>

<small> 0100 1101 0011 0100 1101 0011 0100 1101 0011 & 0001 1101 0001 | 0001 1101 0001 ^ 0001 1101 0001 </small>

i += 3 → i = 6  i = i + 3 i *= 3 → i = 9  i = i * 3

<i>Phép toán tăng, giảm: ++, –– </i>

Toán tử ++ sẽ cộng thêm 1 vào tốn hạng cāa nó, tốn tử –– sẽ trừ đi 1.

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 36 </small></b></i>

Ví du: ta có giá trị n = 6

+ Sau phép tính ++n hoặc n++, ta có n = 7. + Sau phép tính ––n hoặc n–– , ta có n = 5.

* Sự khác nhau giữa ++n và n++, ––n và n––

+ Sau phép tính x = ++n + 2, ta có x = 9. (n tăng 1 cộng với 2 rồi gán cho x). + Sau phép tính x = n++ + 2, ta có x = 8. (n cộng với 2 gán cho x rồi mới tăng 1).

<b>Đß °u tiên căa các phép tốn </b>

<b><small>Đß °u tiên </small></b>

<b><small>Các phép tốn Trình tā kÁt hÿp </small></b>

<small>1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 </small>

<small>( ) [ ] -> </small>

<small>! ~ & * – ++ – – (type) sizeof </small>

<small>* / % + – << >> </small>

<small>< <= > >= == != </small>

<small>& ^ | && || ? : </small>

<small>= += –= *= /= %= <<= >>= &= ^= |= , </small>

<small>Trái sang ph¿i Ph¿i sang trái Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Trái sang ph¿i Ph¿i sang trái Ph¿i sang trái Trái sang ph¿i </small>

<b>3.</b>

<b>NhÁp – xuÃt dÿ liáu </b>

<b>1. NhÁp dÿ liáu </b>

<i>Khai báo thư viện: #include <stdio.h> (standard input/output) </i>

<i><b><small>Cú pháp: printf</small></b></i><b><small>(<chuỗi định dạng=, đối số); </small></b>

<i>Ý nghĩa: Kết xuÁt hiển thị dữ liệu đ°ợc định dạng. </i>

printf: tên hàm, <b>phÁi viÁt bằng chÿ th°ãng. </b>

đối mÿc 1,…: là các mÿc dữ kiện cần in ra màn hình. Các đối mÿc này có thể là biến, hằng hoặc biểu thăc ph¿i đ°ợc định trị tr°ớc khi in ra.

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 37 </small></b></i>

chuỗi định dạng: đ°ợc đặt trong cặp nháy kép (" "), gồm 3 loại: + Đối với chuỗi kí tự ghi nh° thế nào in ra giống nh° vÁy.

+ Đối với những kí tự chuyển đổi dạng thăc cho phép kết xuÁt giá trị cāa các đối mÿc ra màn hình tạm gọi là mã định dạng. Sau đây là các dÁu mô t¿ định dạng: %c : Ký tự đ¡n

%s : Chuỗi

%d : Số nguyên thÁp phân có dÁu

%f : Số chÁm động (ký hiệu thÁp phân) %e : Số chÁm động (ký hiệu có số mũ) %g : Số chÁm động (%f hay %g) %x : Số nguyên thÁp phân không dÁu %u : Số nguyên hex không dÁu

%o : Số nguyên bát phân không dÁu

l : Tiền tố dùng kèm với %d, %u, %x, %o để chỉ số nguyên dài (ví dÿ %ld) <small>+ Các ký tự điều khiển và ký tự đặc biệt </small>

<small>\n : Nh¿y xuống dòng kế tiếp canh về cột đầu tiên. \t : Canh cột tab ngang. </small>

<small>\r : Nh¿y về đầu hàng, không xuống hàng. \a : Tiếng kêu bip. </small>

<small>\\ : In ra dÁu \ \" : In ra dÁu " \' : In ra dÁu ' %%: In ra dÁu % </small>

printf(<%f=, x); → Xuất ra 15.060000 printf(<%f=, 1.0/3); → Xuất ra 0.333333

<b><small>Ví dā: </small></b>

int a = 1706;

float x = 176.85;

printf(<%10d=, a);printf(<\n=);

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 38 </small></b></i>

printf(<%10.2f=, x);printf(<\n=); printf(<%.2f=, x);printf(<\n=);

<b><small>Ví dā: printf("Bai hoc C dau tien. \n"); </small></b>

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 39 </small></b></i>

Kết qu¿ in ra màn hình

<small>Tong cua 2 so 7 va 4 la 11. _ </small>

<b><small>KÁt quÁ in ra màn hình </small></b>

6 1234 62 165 2 965 _

Số canh về bên ph¿i bề rộng tr°ßng.

printf("%-7d%-7d%-7d.\n", a, b, c); printf("%-7d%-7d%-7d.\n", 165, 2, 965);

<b>KÁt quÁ in ra màn hình </b>

6 1234 62 165 2 965 _

Số canh về bên trái bề rộng tr°ßng.

<b>Ví dā: gi¿ sử float a = 6.4, b = 1234.56, c = 62.3 </b>

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<i><b><small>Khoa Công nghệ thông tin – TCN Quang Trung Trang 40 </small></b></i>

Kết qu¿ in ra màn hình 6.40 1234.56 62.30 _

Số canh về bên ph¿i bề rộng tr°ßng. 7 kí tự

<b>Ví dā: gi¿ sử float a = 6.4, b = 1234.55, c = 62.34 </b>

printf("%10.1d%10.1d%10.1d.\n", a, b, c); printf("%10.1d%10.1d%10.1d.\n", 165, 2, 965);

<b>KÁt quÁ in ra màn hình </b>

6.4 1234.6 62.3 165.0 2.0 965.0 _

Số canh về bên ph¿i bề rộng tr°ßng.

printf("%-10.2d%-10.2d%-10.2d.\n", a, b, c); printf("%-10.2d%-10.2d%-10.2d.\n", 165, 2, 965);

<b>KÁt quÁ in ra màn hình </b>

6.40 1234.55 62.34 165.00 2.00 965.00 _

Số canh về bên trái bề rộng tr°ßng.

<b>2. XuÃt dÿ liáu </b>

<i>Ý nghĩa: Hàm này có chăc năng lÁy dữ liệu từ thiết bị nhÁp. </i>

<i>Khai báo thư viện: Th° viện sử dÿng: #include <stdio.h> (standard input/output) Cú pháp: <b>scanf(“Chuỗi định dạng=, &đối số); </b></i>

scanf: tên hàm, <i><b>phải viết bằng chữ thường. </b></i>

Khung định dạng: đ°ợc đặt trong cặp nháy kép (" ") là hình ¿nh dạng dữ liệu nhÁp vào.

đối mÿc 1,…: là danh sách các đối mÿc cách nhau bái dÁu phẩy, mỗi đối mÿc sẽ tiếp nhÁn giá trị nhÁp vào.

<b>Các đối số là tên các biến sẽ chăa giá trị nhÁp và đ°ợc đặt tr°ớc dÁu &. Ví du: Cho a và b kiểu số nguyên </b>

scanf(<%d=, &a); // NhÁp giá trị cho biến a scanf(<%d=, &b); // NhÁp giá trị cho biến b # scanf(<%d%d=, &a, &b);

</div>

×