TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 13. Hàm Nội dung 1. Khái niệm hàm 2. Khai báo và sử dụn

Tài liệu tương tự
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 9. Vào ra dữ liệu trong C Các lệnh vào ra dữ liệu C cun

TRƯỜnG ĐẠI HỌC BÁCH KHOA HÀ nội VIỆn CÔnG nghệ THÔnG TIn VÀ TRUYỀn THÔnG TIN HỌC ĐẠI CƯƠNG Bài 10. Các cấu trúc lập trình trong C Nội dung 1. Cấu trúc

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 11. Mảng và xâu kí tự Nội dung 1. Mảng 2. Xâu kí tự 2 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 5. Kiểu dữ liệu và biểu thức trong C Nội dung 1. Các ki

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 11. Tệp tin Nội dung 1. Khái niệm cơ bản 2. Các thao tá

PowerPoint Template

Trường ĐHBK Hà Nội Khoa Điện Bộ môn Điều khiển Tự động Tài liệu hướng dẫn thực hành: KĨ THUẬT LẬP TRÌNH C/C++ Bài 1: Lập trình cơ sở 1 Mục đích bài th

Chương trình dịch

Câu lệnh (statement) Câu lệnh (statement) Bởi: Khuyet Danh Trong C# một chỉ dẫn lập trình đầy đủ được gọi là câu lệnh. Chương trình bao gồm nhiều câu

Microsoft Word - danh-sach-lien-ket-doi-trong-c.docx

Bài 7. Con trỏ Mục tiêu: 1. Luyện tập sử dụng con trỏ và địa chỉ của các biến 2. Sử dụng con trỏ khi thao tác với mảng. Giới hạn: không dùng các thư v

OpenStax-CNX module: m Giới thiệu về ngôn ngữ C và môi trường turbo C 3.0 ThS. Nguyễn Văn Linh This work is produced by OpenStax-CNX and licens

Microsoft Word - bo_tien_xu_ly_trong_c.docx

Lớp và đối tượng-các hàm và các lớp friend Lớp và đối tượng-các hàm và các lớp friend Bởi: Thanh Hiền Vũ CÁC HÀM VÀ CÁC LỚP friend Một hàm friend của

ĐIỂM THI KHỐI A ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG ầ ươ ữ ặ ố ả ườ ườ ườ ễ ướ ườ ườ ầ ườ ễ ữ ấ ồ ấ ứ ấ ố ấ ễ ấ ễ ả ấ ễ ướ ấ ễ ấ ễ ấ ễ ấ ễ ấ ấ ồ ố ấ ạ ấ ầ ấ ầ ấ

Danh sách tuyến tính kiểu hàng đợi Danh sách tuyến tính kiểu hàng đợi Bởi: Khoa CNTT ĐHSP KT Hưng Yên ĐỊNH NGHĨA Hàng đợi là một vật chứa (container)

Animation, Modules 6 - Hoạt hình, tách file

Phương pháp biểu diễn thuật toán Phương pháp biểu diễn thuật toán Bởi: Khoa CNTT ĐHSP KT Hưng Yên Khi chứng minh hoặc giải một bài toán trong toán học

Những cơ sở của ngôn ngữ C# Những cơ sở của ngôn ngữ C# Bởi: phamvanviet truonglapvy Trong chương này sẽ trình bày về hệ thống kiểu trong C#; phân biệ

Hàm và lớp template trong Lập trình hướng đối tượng Hàm và lớp template trong Lập trình hướng đối tượng Bởi: unknown Trong phần này, chúng ta tìm hiểu

Lập trình và ngôn ngữ lập trình

NGÔN NGƯ LÂ P TRIǸH Biên tập bởi: nguyenvanlinh

BỘ GIAO THÔNG VẬN TẢI TRƢỜNG ĐẠI HỌC HÀNG HẢI BỘ MÔN: KHOA HO C MA Y TI NH KHOA: CÔNG NGHỆ THÔNG TIN BÀI GIẢNG KỸ THUẬT LẬP TRÌNH C TÊN HỌC PHẦN : KỸ

LỌC ĐIỆN

Template and Exception Template and Exception Bởi: Thanh Hiền Vũ TEMPLATE Trong phần này, chúng ta tìm hiểu về một trong các đặc tính còn lại của C++,

Slide 1

Slide 1

Array, Indexer và Collection Array, Indexer và Collection Bởi: phamvanviet truonglapvy Mảng (Array) Mảng là một tập hợp các phần tử có cùng kiểu, được

CÔNG BÁO/Số /Ngày PHẦN VĂN BẢN QUY PHẠM PHÁP LUẬT CHÍNH PHỦ CHÍNH PHỦ Số: 92/2011/NĐ-CP CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc l

Nhúng mã-cách khai báo biến Nhúng mã-cách khai báo biến Bởi: Khoa CNTT ĐHSP KT Hưng Yên Nhúng mã javascript trong trang HTML Bạn có thể nhúng JavaScri

NHẬP MÔN LẬP TRÌNH C Phân bổ thời gian thực hành (12 tuần, 5 tiết/tuần) Tuần 01-02: Chương 1. Các thành phần cơ bản của Ngôn ngữ C Chương 2. Nhập xuất

Microsoft Word - TNC VIETNAM - Huong dan tong quat PM.doc

Các hình thức bảo lãnh ngân hàng Các hình thức bảo lãnh ngân hàng Bởi: Đại Học Kinh Tế Quốc Dân Phân loại theo phương thức phát hành: Bảo lãnh trực ti

No tile

Nhân Quả và Sám Hối

Ví dụ về duyệt đồ thị ưu tiên chiều sâu DFS và ứng dụng Đồ thị ví dụ: Nguyễn Hữu Tuân vimaru.edu.vn Hình 1: Đồ thị vô hướng có 8 đỉnh Với đồ thị trên,

Các biến và các kiểu dữ liệu trong JavaScript Các biến và các kiểu dữ liệu trong JavaScript Bởi: Hà Nội Aptech Các biến (Variables) Biến là một tham c

Kiểu dữ liệu văn bản Kiểu dữ liệu văn bản Bởi: PGS. TS. NGƯT Phạm Văn Huấn Ngoài những dữ liệu số như các số nguyên, số thực, máy tính còn có thể lưu

Chương 1:

Microsoft Word - Tom tat Luan van - Nguyen Thi Ngoc Quynh.doc

Lớp đối tượng String Lớp đối tượng String Bởi: Khuyet Danh Ngôn ngữ C# hỗ trợ khá đầy đủ các chức năng của kiểu chuỗi mà chúng ta có thể thấy được ở c

HIỆP ĐỊNH GIỮA CHÍNH PHỦ NƯỚC CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM VÀ CHÍNH QUYỀN KHU HÀNH CHÍNH ĐẶC BIỆT HỒNG KÔNG CỦA NƯỚC CỘNG HÒA NHÂN DÂN TRUNG HOA

Microsoft Word - de thi HSG su 8 Phuong BL Dong son.doc

VẠCH MẶT NHÂN CHỨNG GIAN DỐI

VINCENT VAN GOGH

Microsoft Word - 51 thachSanh

Soạn bài liệt kê

Bạn Tý của Tôi

Thực hành trên Rose Thực hành trên Rose Bởi: Đoàn Văn Ban Xây dựng biểu đồ thành phần + Tạo lập mới hoặc mở một biểu đồ thành phần đã được tạo lập trư

ĐỀ THI GIỮA KỲ MÔN: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Đề số 1. Thời gian 120 phút (Sinh viên KHÔNG được sử dụng tài liệu hay máy tính ) Xây dựng lớp STRING và

I. MỤC ĐÍCH - YÊU CẦU 1. Kiến thức: - Trẻ biết tên bài tập Bật tách, khép chân qua 7 ô. - Trẻ biết dùng sức của đôi chân để bật tách, khép chân qua cá

Độc công tử

C++ và lập trình hướng đối tượng C++ và lập trình hướng đối tượng Bởi: Phạm Văn Ất Làm việc với TC Các ví dụ trong cuốn sách này sẽ viết và thực

Microsoft PowerPoint - 03_Robo_Kick


Kinh Dai Thong Phuong Quang Sam Hoi Diet Toi Trang Nghiem Thanh Phat - HT Trung Quan Dich

Baét Ñaàu Töø Cô Baûn (25)

TÀI LIỆU PHỔ BIẾN TẠI PHÒNG THI

Lập trình cấu trúc trong Visual Basic Lập trình cấu trúc trong Visual Basic Bởi: Nguyễn Sơn Học xong chương này, sinh viên phải nắm bắt được các vấn đ

BÀI 4 GIAO TIẾP TRÊN MẠNG XÃ HỘI A. NỘI DUNG 1/ Thực trạng chung Trong khi mạng xã hội được xem là phương tiện giao tiếp rất tốt với mọi người thì nó

Tháng tư năm 1975, trong khi Sài Gòn đang hấp hối và mọi người vội vã tìm cách thoát thân thì chính tôi lại từ chối không đi theo gia đình đôi bạn thâ

Chuỗi Chuỗi Bởi: phamvanviet truonglapvy Chuỗi (string) trong C# là một kiểu dựng sẵn như các kiểu int, long, có đầy đủ tính chất mềm dẻo, mạnh mẽ và

Chương 1:

Hãy chọn phương án đúng CÂU HỎI TRẮC NGHIỆM TIN HỌC 7 HK1 Câu 1: Bảng tính thường được dùng để: a. Tạo bảng điểm của lớp em b. Bảng theo dõi kết quả h

(Microsoft Word - HD GI?I 14 b\340i TO\301N N\302NG CAO L?P 7.doc)

HỘI THI TIN HỌC TRẺ TỈNH AN GIANG ĐỀ CHÍNH THỨC ĐỀ THI LÝ THUYẾT BẢNG A - KHỐI TIỂU HỌC Khóa ngày: Thời gian : 20 phút (không kể thời gian

Th«ng tin nghiªn cøu B o tån Di s n Sè 02(38) 2017 MỘT SỐ TẬP TỤC Ở HỘI AN LIÊN QUAN ĐẾN TÍN NGƯỠNG THỜ CÚNG CÂY CỐI Trần Phương Thờ cúng cây cối là m

daithuavoluongnghiakinh

UART0

Thiền tông và Tịnh độ tông - chỗ gặp gỡ và không gặp gỡ

Thủ tục tố tụng tại phiên tòa hình sự sơ thẩm Nguyễn Quỳnh Trang Khoa Luật Luận văn ThS ngành: Luật Hình sự; Mã số: Người hướng dẫn: TS. Nguy

Thực hành hàm kết hợp và gom nhóm Thực hành hàm kết hợp và gom nhóm Bởi: Khoa CNTT ĐHSP KT Hưng Yên Nhắc lại lý thuyết Hàm kết hợp Hàm count(), min(),

... anh đã nă m yên trong lòng đất nơi quê hương thứ hai của anh, nghĩa trang Arlington, trong vùng Thủ Đô Hoa Thịnh Đốn Hoa Kỳ... CTSQ Nguyễn Hữu Vịn

A DI ĐÀ KINH SỚ SAO DIỄN NGHĨA A DI ĐÀ KINH SỚ SAO DIỄN NGHĨA Liên Trì Đại Sư Chùa Vân Thê soạn Sớ Sao Pháp Sư Cổ Đức Diễn Nghĩa Giảng giải: Pháp Sư T

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN ĐẠI HỌC MỞ HÀ NỘI CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Số: 318 /QĐ-ĐHM Hà Nội, ngày 26 tháng 08

Microsoft Word - Kinh Be Ma Tuc - HT Chanh Lac Dich.doc

9-KiemThu

CÔNG BÁO/Số /Ngày BỘ TÀI CHÍNH BỘ TÀI CHÍNH Số: 212/2014/TT-BTC CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc

Hệ điều hành Bài tập tuần 6 1 Quản lý bộ nhớ Bài tập 1 : Xem thông tin bộ nhớ 1. Sử dụng top, ps đọc thông tin về kích thước vùng nhớ của 1 tiến trình

Baøi Giaûng Ñaïo Kyû Nieäm Chuùa Gieâ-xu Bò Ñoùng Ñinh Treân Thaäp Giaù (2)

Cúc cu

SỐNG CHẾT MẶC BAY (Phạm Duy Tốn)

Chinh phục tình yêu Judi Vitale Chia sẽ ebook : Tham gia cộng đồng chia sẽ sách : Fanpage :

Bài 15: QUẢN LÝ BẢNG TÍNH 15.1 Các khái niệm Ô (cell) là đơn vị cơ sở của bảng tính, mỗi ô có địa chỉ riêng, địa chỉ gồm Chỉ số cột Chỉ số dòng, ví dụ

Võ Văn Kiệt từng muốn gặp Cộng đồng Úc Châu. Nguyễn Quang Duy Nhân việc ông Lý Bảo chủ tịch Cộng Đồng Việt Nam Vùng Washington, DC, Maryland, và Virgi

Document

TRUNG TÂM QLBT DI SẢN VĂN HÓA PHÒNG QUẢN LÝ DI TÍCH CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc 1. Tên gọi 2. Loại hình Phiếu kiểm

Nam Tuyền Ngữ Lục

Hướng dẫn Bắt đầu Nhanh Microsoft Publisher 2013 trông khác với các phiên bản trước, vì vậy chúng tôi tạo ra hướng dẫn này để giúp bạn dê dàng nắm bắt

Code: Kinh Văn số 1650

QUỐC HỘI CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Nghị quyết số: 41/2017/QH14 Hà Nội, ngày 20 tháng 6 n

SỐ 112 MÙA THU TEXAS 2019 TRANG 59 Chuyện 40 Năm Trước Phần 1 / 6: Sau 1975 Và Chuẩn Bị Đóng Ghe AH Trịnh Hảo Tâm Lời Mở Đầu: BPT xin đăng 6 bài viết

(Microsoft Word - 4_Vuong NC-T\ doc)

No tile

GIS 101

Phần 1

Nguyeãn Thò Ngoïc Dung

Bản ghi:

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 13. Hàm Nội dung 1. Khái niệm hàm 2. Khai báo và sử dụng hàm 3. Phạm vi của biến 2 1

Nội dung 1. Khái niệm hàm 1.1. Khái niệm chương trình con 1.2. Phân loại chương trình con 2. Khai báo và sử dụng hàm 3. Phạm vi của biến 3 Một ví dụ #include <stdio.h> #include <conio.h> int giaithua(int);//khai báo nguyên mẫu hàm int main(){ //Khai báo n, k và nhập thông tin //... tohop=giaithua(n)/(giaithua(k)*giaithua(n-k)); //In kết quả //Khai báo nội dung hàm int giaithua(int n){ int i,ketqua = 1; for(i = 1;i <= n; i++) ketqua = ketqua*i; return ketqua; 4 2

1.1. Khái niệm chương trình con Khái niệm Là một chương trình nằm trong một chương trình lớn hơn nhằm thực hiện một nhiệm vụ cụ thể Vai trò Chia nhỏ chương trình ra thành từng phần để quản lý => Phương pháp lập trình có cấu trúc Có thể sử dụng lại nhiều lần: printf, scanf Chương trình dễ dàng đọc và bảo trì hơn 5 1.2. Phân loại chương trình con Phân loại chương trình con Chương trình con Hàm (function) Thủ tục (procedure) Hàm: trả về giá trị trong khi thủ tục thì không Trong C: Chỉ cho phép khai báo chương trình con là hàm. Sử dụng kiểu void với ý nghĩa không là kiểu dữ liệu nào cả để chuyển thủ tục về dạng hàm 6 3

1.2. Phân loại chương trình con Phân loại hàm HÀM Hàm chuẩn (Có trong thư viện) Hàm tự viết (Người dùng định nghĩa) 7 Nội dung 1. Khái niệm hàm 2. Khai báo và sử dụng hàm 2.2. Sử dụng hàm 3. Phạm vi của biến 8 4

Trong chương trình lớn có nhiều chương trình con, điểm bắt đầu thực hiện chương trình sẽ thuộc chương trình con nào? main là một chương trình con? Khai báo các chương trình con độc lập nhau/lồng lẫn nhau? Muốn lắp ráp các công việc khác nhau để cùng thực hiện, cần phải đưa ra lời gọi hàm. Lời gọi cần cung cấp những gì? 9 Ví dụ: Chương trình in ra bình phương của các số tự nhiên từ 1 đến 10 Gồm 2 hàm: Hàm binhphuong(int x): trả về bình phương của x Hàm main(): với mỗi số nguyên từ 1 đến 10, gọi hàm binhphuong với một giá trị đầu vào và hiển thị kết quả. 10 5

Khai báo hàm Gọi hàm #include<stdio.h> #include<conio.h> int binhphuong(int x){ int y; y = x * x; return y; int main(){ int i; for (i=0; i<= 10; i++) printf( %d, binhphuong(i)); getch(); return 0; 11 KieuDuLieu tenham (danh_sách_tham_số) { [<Các_khai_báo>] [<Các_câu_lệnh>] Dòng đầu hàm Là thông tin trao đổi giữa các hàm. Phân biệt giữa các hàm với nhau. KieuDuLieu: kiểu dữ liệu giá trị trả về của hàm tenham: là tên hợp lệ, trong C tên hàm là duy nhất 12 6

Danh sách tham số Cho biết những tham số giả định cung cấp hoạt động cho hàm => các tham số hình thức Tham số cung cấp dữ liệu cho hàm lúc hoạt động: tham số thực Ví dụ: int max(int a, int b, int c) Thân hàm return Gọi hàm thông qua tên hàm và các tham số thực cung cấp cho hàm. Sau khi thực hiện xong, trở về điểm mà hàm được gọi thông qua câu lệnh return hoặc kết thúc hàm. Cú pháp chung: return biểu_thức; 13 Nguyên mẫu hàm (function prototype) Định nghĩa hàm #include<stdio.h> #include<conio.h> int binhphuong(int ); int main(){ int i; for (i=0; i<= 10; i++) printf( %d,binhphuong(i)); getch(); return 0; int binhphuong(int x){ int y; y = x * x; return y; 7

Ý nghĩa của nguyên mẫu hàm Cho phép định nghĩa sau khi sử dụng. Nhưng phải khai báo trước Cho phép đưa ra lời gọi đến một hàm mà không cần biết định nghĩa Ví dụ: khi gọi printf, scanf chúng ta chỉ cần quan tâm các tham số truyền cho hàm Tệp stdio.h chứa nguyên mẫu hàm của printf và scanf Các hàm thư viện Ngôn ngữ C cung cấp một số hàm thư viện như: xử lý vào ra, hàm toán học, hàm xử lý xâu Để sử dụng các hàm này chúng ta chỉ cần khai báo nguyên mẫu của chúng trước khi sử dụng. Khai báo thông qua chỉ thị #include<tệp_tiêu_đề> tệp_tiêu_đề (.h) đã chứa các nguyên mẫu hàm 8

2.2. Sử dụng hàm Cú pháp: tên_hàm (danh_sách_tham_số); Ví dụ: binhphuong(0), binhphuong(1) Lưu ý: Nếu hàm nhận nhiều tham số thì các tham số ngăn cách nhau bởi dấu phẩy Luôn luôn cần cặp dấu ngoặc đơn sau tên hàm Các tham số của hàm sẽ nhận các giá trị từ tham số truyền vào Thực hiện lần lượt các lệnh cho đến khi gặp lệnh return/kết thúc chương trình 17 Nội dung 1. Khái niệm hàm 2. Khai báo và sử dụng hàm 3. Phạm vi của biến 3.1. Phạm vi của biến 3.2. Phân loại biến 3.3. Câu lệnh static và register 18 9

3.1. Phạm vi của biến Phạm vi: khối lệnh, chương trình con, chương trình chính Biến khai báo trong phạm vi nào thì sử dụng trong phạm vi đó Trong cùng một phạm vi các biến có tên khác nhau. Tình huống Trong hai phạm vi khác nhau có hai biến cùng tên. Trong đó một phạm vi này nằm trong phạm vi kia? #include<stdio.h> #include<conio.h> int i; int binhphuong(int x){ int y; y = x * x; return y; int main(){ int y; for (i=0; i<= 10; i++){ y = binhphuong(i); printf( %d, y); return 0; 19 3.2. Phân loại biến Phân loại biến Biến toàn cục: biến được khai báo ngoài mọi hàm, được sử dụng ở các hàm đứng sau nó Biến cục bộ: biến được khai báo trong lệnh khối hoặc chương trình con, được đặt trước các câu lệnh. Ghi nhớ Hàm main() cũng là một chương trình con nhưng là nơi chương trình được bắt đầu cũng như kết thúc Biến khai báo trong hàm main() cũng là biến cục bộ, chỉ có phạm vi trong hàm main(). 20 10

3.3. Câu lệnh static và register Biến static Xuất phát: biến cục bộ ra khỏi phạm vi thì bộ nhớ dành cho biến được giải phóng Yêu cầu lưu trữ giá trị của biến cục bộ một cách lâu dài => sử dụng từ khóa static So sánh với biến toàn cục? Cú pháp: static KieuDuLieu tenbien; 21 3.3. Câu lệnh static và register # include <stdio.h> # include <conio.h> void fct() { static int count =0; printf("\n Day la lan goi ham fct lan thu %2d", count++); int main(){ int i; for(i = 0; i < 10; i++) fct(); getch(); return 0; 22 11

3.3. Câu lệnh static và register Day la lan goi ham fct lan thu 1 Day la lan goi ham fct lan thu 2 Day la lan goi ham fct lan thu 3 Day la lan goi ham fct lan thu 4 Day la lan goi ham fct lan thu 5 Day la lan goi ham fct lan thu 6 Day la lan goi ham fct lan thu 7 Day la lan goi ham fct lan thu 8 Day la lan goi ham fct lan thu 9 Day la lan goi ham fct lan thu 10 23 3.3. Câu lệnh static, register Biến register Thanh ghi có tốc độ truy cập nhanh hơn RAM, bộ nhớ ngoài Lưu biến trong thanh ghi sẽ tăng tốc độ thực hiện chương trình Cú pháp register KieuDuLieu tenbien; Lưu ý: số lượng biến register không nhiều và thường chỉ với kiểu dữ liệu nhỏ như int, char 24 12

Thảo luận 25 13