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

PowerPoint presentation

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 (654.31 KB, 25 trang )

Chương 2
Cấu trúc và thành phần
của chương trình C/C++

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
1


Nội dung






Tìm hiểu một chương trình C/C++ đơn giản
Xuất dữ liệu ra màn hình
Đọc dữ liệu từ bàn phím
Các xử lý đơn giản
Phong cách lập trình

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++


Kỹ thuật lập trình
2


Chương trình C đơn giản
/* This is a simple program.
Ex1: Print out "Hello world…"
*/
#include <stdio.h>
#include <stdlib.h>

void main() {
printf ("Hello world ...\n");
// system("pause") is defined in <stdlib.h>
system("pause");
}
Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
3


Chỉ thị #include


Khai báo thư viện sẽ được sử dụng bằng chỉ thị #include:






Trong chương trình có sử dụng hai hàm printf và system.
Hàm printf được khai báo trong thư viện stdio
 #include <stdio.h>
Hàm system được khai báo trong thư viện stdlib
 #include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>
void main(){
printf("Hello world...\n");
system("pause");
}

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
4


Hàm main()





Mỡi chương trình C đều phải có một hàm main()
Chú ý: chữ main viết tồn chữ thường
Chương trình sẽ bắt đầu chạy từ hàm này.
Từ đi trước chữ main xác định kiểu kết quả trả về
void : hàm main khơng trả kết quả gì về cả

void main()
{
// Thân hàm

Dấu “{“ đánh dấu bắt đầu phần thân hàm main
Dấu “}“ đánh dấu điểm kết thúc phần thân hàm main

}

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
5


Chú thích




Chú thích được chèn vào nhằm giải thích, ghi chú, đánh

dấu, làm tài liệu cho phần tử trong chương trình C
Hai dạng chú thích:




Trần Quang
© 2016

Chú thích trên nhiều dịng:
/* chú thích
……
*/
Chú thích trên một dòng:
printf ("Hello"); // từ đây đến cuối dòng là chú thích

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
6


Thư viện stdio




Thư viện nhập xuất chuẩn trong C là stdio (Standard
Input/Output)
Do đó ta thường khai báo thư viện này ở đầu chương trình

#include <stdio.h>
Thư viện này có cung cấp hai hàm nhập và xuất dữ liệu có
định dạng:



Trần Quang
© 2016

printf(): hàm xuất có định dạng
scanf(): hàm nhập có định dạng

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
7


Lệnh printf


Cú pháp:
printf("<chuỗi định dạng>", <danh sách tham số>);
trong chuỗi định dạng chứa chỉ thị định dạng có cấu trúc



% [flags] [width] [.precision] [length] specifier
specifier là đặc tả cho kiểu dữ liệu:
d,i

f, g
e
x
o
c
s

Trần Quang
© 2016

Số ngun thập phân có dấu
Số dấu chấm động
Số dấu chấm động (ký hiệu số mũ)
Số nguyên hệ 16
Số nguyên hệ 8
Ký tự đơn
Chuỗi ký tự
Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
8


Lệnh printf
Ví dụ:
printf("%d\n", 123);
printf("%5d\n", 123);
printf("%05d\n", 123);
printf("%f\n", 123.456);
printf("%10.2f\n", 123.456);

printf("%010.2f\n", 123.456);

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
9


Lệnh printf
printf("%c\n", 'A');
printf("%3c\n",'b');
printf("%03c\n", '#');
printf("%s\n","1234567890");
printf("%s\n","DHBK");
printf("%9s\n","DHBK");
printf("%09s\n","DHBK");

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
10


Một số ký tự điều khiển

Escape sequence
Escape
sequence

Meaning

Escape
sequence

Meaning

\\

\ character

\n

Newline

\'

' character

\r

Carriage return

\"

" character


\t

Horizontal tab

\?

? character

\v

Vertical tab

\a

Alert or bell

\ooo

Octal number of one to three digits

\b

Backspace

\f

Form feed

\xhh . . .


Hexadecimal number of one or
more digits

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
11


Ví dụ:
#include <stdio.h>
#include <conio.h>
void main() {
int a=4, b=5;
printf("Ket qua: %d + %d = %d \n",a, b, a+b);
getch();
}

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
12



Xuất dữ liệu trong C++
#include <iostream>
void main() {
std::cout << "This is a simple C++ program!" << std::endl;
system("pause");
}
_______________________________________
#include <iostream>
using namespace std;
void main() {
cout << "This is a simple C++ program!" << endl;
system("pause");

}
Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
13

13


Nhập dữ liệu trong C


Nguyên tắc



Trong C, khi đọc dữ liệu từ bàn phím, giá trị đọc được lưu
vào vùng nhớ có kiểu tương thích với kiểu ghi trong hàm đọc

Sinh viên tạm thời chấp nhận hai khái niệm sau:
1. Vùng nhớ được đặt tên (cịn gọi là biến)
Ví dụ:
int x;
2. Cách lấy địa chỉ của vùng nhớ
Ví dụ:
&x
(sử dụng dấu & trước tên của vùng nhớ)

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
14


Hàm scanf()



Hàm scanf có trong thư viện stdio
Cú pháp:
scanf ("<ch̃i định dạng>" , <danh sách địa chỉ biến>)


Phần đặc tả những
kiểu mong muốn đọc

Phần liệt kê địa chỉ của các biến tương ứng
với những kiểu mong muốn
Dùng dấu phẩy (,) để phân cách nếu có
nhiều địa chỉ biến

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
15


Hàm scanf()
Ví dụ:
int x;
printf("Please enter x: ");
scanf("%d", &x);
printf("x = %d\n", x);

Cửa sổ ban đầu:

chương trình chờ người dùng
nhập vào một số nguyên


Cửa sổ sau khi nhập giá trị 123
và nhấn phím ENTER:

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
16


Nhập dữ liệu trong C++
#include <iostream>
using namespace std;
void main(){
int a;
cout << "Nhap a: ";
cin >> a;
cout << "a = " << a << endl;
system("pause");
}

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
17



Xử lý đơn giản
Viết chương trình đọc hai số x và y là tọa độ trong khơng gian 2D.
Sau đó tính và in ra khoảng cách từ tâm hệ trục tọa độ đến điểm (x,y)
#include <iostream>
#include <math.h>
using namespace std;
void main(){
float x, y;
cout << "Please enter coordinates x and y: ";
cin >> x >> y;
cout <<"(x,y) = (" << x << "," << y << ")" <cout <<"Distance to the origin = " << sqrt(x*x + y*y) << endl;
system("pause");
}
Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
18


Phong cách lập trình







Chương trình cũng như một bài văn trong ngơn ngữ tự
nhiên.
Do đó, cần được viết sao cho dễ đọc, dễ hiểu, và dễ phát
hiện các sai sót.
Trong các dự án lớn, phong cách lập trình là rất quan trọng
nhằm





Trần Quang
© 2016

Dễ dàng phối hợp giữa các thành viên phát triển
Dễ dàng phát hiện sai sót
Dễ dàng bảo trì và nâng cấp

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
19


Phong cách lập trình








Danh sách các chủ đề có thể xem chi tiết ở những trang sau
Sinh viên cần rèn luyện phong cách trong suốt q trình
học, thơng qua thực hành.
Tất cả các bài nộp cho giảng viên xem phải tuân thủ hầu hết
các gợi ý.
Xem thêm:
/> />
Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
20


Phong cách lập trình


Về quy cách đặt tên hàm:









Trần Quang
© 2016

Bắt đầu bởi động từ (verb), vì hàm là đơn vị xử lý (i.e., thực thi hành
động)
Tên phải nêu bật tính năng của hàm. Ví dụ:
Nên dùng: check_for_errors()
Thay cho: error_checking() hay dump_data_to_file()
Nên sử dụng “suffix” hay “prefix” sau trong các trường cụ thể tăng
ngữ nghĩa
Prefixes
 is
kiểm tra xem một điều kiện nào đó có thỏa hay khơng
 get
lấy giá trị
 set
gán giá trị

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
21


Phong cách lập trình


Về quy cách đặt tên biến:








Trần Quang
© 2016

Thường bắt đầu bởi danh từ (noun)
Tất cả các ký tự trong tên đều là chữ thường
Nối các từ với nhau bởi dấu gạch dưới, “_”
Đưa đơn vị vào tên nếu có thể. Ví dụ:
unit32 timeout_msec;
Time time_of_error;
Biến kiểu pointer
 Đặt dấu * liền sát tên biến
 Suffix với “ptr” nếu có thể
Ví dụ:
char *name;
Student *student_ptr;
Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
22


Phong cách lập trình



Về quy cách đặt tên:


Biến tồn cục
Prefix với “g_”, để dể phân biệt trong code
Ví dụ:
Logger
g_logger;
Logger
g_logger_ptr;




Hằng tồn cục
Sử dụng tồn bộ chữ hoa
Ví dụ:
const int A_GLOBAL_CONSTANT = 5;




Xem chi tiết trong trang chỉ dẫn trước, và luyện tập đến
cuối chương trình học

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++


Kỹ thuật lập trình
23


Rèn luyện phong cách lập trình
#include <stdio.h>
#include <stdlib.h>
void main(){
printf("%d\n", 123);
printf("%5d\n", 123);
printf("%05d\n", 123);
system("pause");
}

Sử dụng TAB để canh lề code

Nên!

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
24


Rèn luyện phong cách lập trình


#include <stdio.h>
#include <stdlib.h>

#include <stdio.h>
#include <stdlib.h>

void main(){
printf("%d\n", 123);
printf("%5d\n", 123);
printf("%05d\n", 123);
system("pause");
}

void main(){
printf("%d\n", 123);
printf("%5d\n", 123);
printf("%05d\n", 123);
system("pause");
}

Khơng nên!

Trần Quang
© 2016

Chương 02: Cấu trúc và thành phần chương trình C++

Kỹ thuật lập trình
25



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×