1. Trang chủ
  2. » Giáo Dục - Đào Tạo

NGÔN NGỮ LẬP TRÌNH C MỘT SỐ GIẢI THUẬT THÔNG DỤNG VÀ CẤU TRÚC MẢNG, CÁC CẤU TRÚC ĐIỀU KHIỂN

71 3 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 71
Dung lượng 1,07 MB

Cấu trúc

  • Chương 1 (5)
    • 1.1 GIỚI THIỆU (5)
    • 1.2 SỬ DỤNG (5)
      • 1.2.1 Khởi Động Chuyển vào thư mục có chứa Turbo C gõ lệnh (5)
      • 1.2.2 Các Lệnh xử lý tập tin (6)
      • 1.2.3 Thao tác dịch chuyển con trỏ (7)
      • 1.2.4 Thao tác chèn và xóa (7)
      • 1.2.5 Thao tác xử lý khối văn bản (7)
      • 1.2.6 Thao tác tìm kiếm và thay thế (7)
      • 1.2.7 Thao tác biên dịch và chạy chương trình (7)
    • 1.3 BỘ KÝ TỰ, TỪ KHÓA, DÒNG CHÚ THÍCH (8)
      • 1.3.1 Bộ ký tự cơ bản (8)
      • 1.3.2 Các từ khóa (8)
      • 1.3.3 Dòng chú thích (8)
    • 1.4 HẰNG, BIẾN, CÁC KIỂU VÔ HƯỚNG CHUẨN (8)
      • 1.4.1 Hằng(constant) (8)
      • 1.4.2 Biến (variable) (9)
      • 1.4.3 Các kiểu vô hướng chuẩn (9)
    • 1.5 CẤU TRÚC CHƯƠNG TRÌNH (10)
    • 1.6 XỬ LÝ BIẾN (11)
      • 1.6.1 Khởi tạo giá trị của biến (11)
      • 1.6.2 Xuất các giá trị của biến (11)
      • 1.6.3 Nhập dữ liệu vào cho biến (13)
      • 1.6.4 Biến đổi kiểu (13)
        • 1.6.4.1 Biến đổi kiểu tự động (13)
        • 1.6.4.2 Biến đổi kiểu bắt buộc (14)
    • 1.7 CÁC TOÁN TỬ, BIỂU THỨC (15)
      • 1.7.1 Các toán tử (15)
        • 1.7.1.1 Các toán tử số học (15)
        • 1.7.1.2 Các toán tử quan hệ và logic (15)
        • 1.7.1.3 Các toán tử thao tác Bit (16)
      • 1.7.2 Biểu thức (18)
    • 1.8. BÀI TẬP CHƯƠNG I (19)
  • Chương 2 (20)
    • 2.1 CẤU TRÚC TUẦN TỰ (20)
    • 2.2 CẤU TRÚC ĐIỀU KIỆN (20)
    • 2.3 CẤU TRÚC PHÂN NHÁNH (21)
    • 2.4 CẤU TRÚC LẶP (23)
      • 2.4.1 Vòng lặp while (23)
      • 2.4.2 Vòng lặp for (24)
      • 2.4.3 Vòng lặp do - while (25)
      • 2.4.4 Câu lệnh break và countinue (26)
        • 2.4.4.1 Lệnh break: Dùng để thoát khỏi cấu trúc lặp hoặc cấu trúc phân nhánh ngay lập tức (26)
        • 2.4.4.2 Lệnh countinue: Dùng để quay trở lại kiểm tra <Biểu thức điều kiện> trong cấu trúc lặp ngay lập tức (28)
        • 2.4.4.3 Lệnh #Define: để gán một giá trị cho hằng, trình biên dịch sẽ thay thế tên hằng đó bằng giá trị đã gán cho nó trong mỗi lần gặp (28)
    • 2.5 BÀI TẬP CHƯƠNG 2 (29)
  • Chương 3 (30)
    • 3.1 KHÁI NIỆM VỀ HÀM- FUNCTION (30)
    • 3.2 CÁCH KHAI BÁO HÀM TRONG TURBO C (30)
    • 3.3 TRỊ TRẢ VỀ CỦA HÀM (32)
    • 3.4 PROTOTYPE CỦA MỘT HÀM (32)
    • 3.5 LỚP CỦA BIẾN (34)
      • 3.5.1 Biến automatic (34)
      • 3.5.2 Biến extern & static (34)
      • 3.5.3 Biến thanh ghi register (35)
    • 3.6 NGUYÊN LÝ TỐI THIỂU (38)
      • 3.6.1 Tập các phép toán (38)
      • 3.6.2 Tập các lệnh vào ra cơ bản (38)
      • 3.6.3 Thao tác trên các kiểu dữ liệu có cấu trúc (38)
    • 3.7 NGUYÊN LÝ CỤC BỘ (39)
    • 3.8 NGUYÊN LÝ NHẤT QUÁN (40)
    • 3.9 NGUYÊN LÝ AN TOÀN (43)
    • 3.10 BÀI TẬP CHƯƠNG 3 (47)
  • Chương 4 (48)
    • 4.1 GIẢI THUẬT (48)
      • 4.2.1 Các bước lập trình (48)
      • 4.1.2 Giải thuật (48)
        • 4.1.2.1 Định nghĩa (48)
        • 4.1.2.2 Tính chất của giải thuật (48)
      • 4.1.3 Mô tả giải thuật (48)
        • 4.1.3.1 Ngôn ngữ giải thuật (48)
        • 4.1.3.2 Lưu đồ giải thuật (49)
    • 4.2 KHÁI NIỆM VÀ CÁCH KHAI BÁO MẢNG (51)
      • 4.2.1 Khái niệm (51)
      • 4.2.2 Mảng một chiều (51)
        • 4.2.2.1 Khai báo tường minh kích thước mảng (51)
        • 4.2.2.2 Khai báo không tường minh kích thước mảng (52)
      • 4.2.3 Mảng hai chiều (53)
        • 4.2.3.1 Khai báo tường minh kích thước mảng (53)
        • 4.2.3.2 Khai báo không tường minh kích thước mảng (54)
    • 4.3 ĐỊA CHỈ MẢNG VÀ MẢNG LÀ ĐỐI CỦA HÀM (58)
      • 4.3.1 Địa chỉ của các phần tử mảng (58)
      • 4.3.2 Truyền tham số cho hàm là biến mảng (59)
    • 4.4 SẮP XẾP MẢNG (60)
      • 4.4.1 Phương pháp Bubble sort: (phương pháp tuần tự) (60)
      • 4.4.2 Phương pháp Quicksort (62)
    • 4.5 CÁC VÍ DỤ VỀ GIẢI THUẬT THÔNG DỤNG (63)
      • 4.5.1 Giải thuật dịch chuyển (63)
      • 4.5.2 Giải thuật tìm trị lớn nhất (Max) hoặc nhỏ nhất (Min) (66)
    • 4.6 BÀI TẬP CHƯƠNG 4 (71)

Nội dung

GIỚI THIỆU

Ngôn ngữ C được phát triển bởi Denis Richie tại Bell Laboratories của AT&T vào năm 1972, đánh dấu sự ra đời của khái niệm hộp đen, nơi người lập trình chỉ cần quan tâm đến đầu vào và đầu ra Nhờ vào việc triển khai trên nhiều bộ xử lý khác nhau, C đã tạo ra một thư viện phong phú các hàm mà không ngôn ngữ nào khác có thể so sánh Khi sử dụng các hàm chuẩn của C, lập trình viên chỉ cần biết cách truyền tham số (đầu vào) và sẽ nhận được kết quả mong muốn (đầu ra), giúp công việc lập trình trở nên dễ dàng, nhanh chóng và hiệu quả.

C là một ngôn ngữ lập trình vạn năng với tính năng dễ cài đặt, không phụ thuộc nhiều vào hệ điều hành Hiện nay, C được sử dụng rộng rãi để phát triển hệ thống và tạo ra các sản phẩm cao cấp như DBASE và FOXBASE Chương trình viết bằng C có hiệu suất chạy nhanh gần bằng ASSEMBLER.

Ngôn ngữ C++ được phát triển bởi Bell Laboratories dựa trên ngôn ngữ C, mang đặc điểm của lập trình hướng đối tượng Đây là một ngôn ngữ mạnh mẽ, có khả năng giải quyết hầu hết các ý tưởng lập trình, đồng thời gọn nhẹ, không yêu cầu cấu hình cao và dễ sử dụng.

SỬ DỤNG

1.2.1 Khởi Động Chuyển vào thư mục có chứa Turbo C gõ lệnh:

Để kích hoạt chương trình Turbo C, bạn có thể tìm biểu tượng của nó trên màn hình Windows Khi mở, cửa sổ làm việc của Turbo C sẽ xuất hiện trên màn hình.

- Dòng trên cùng là Thanh Menu gồm các mục:

File Edit Run Compile Project Options Debug Break/Watch

- Ở phần thân gồm: Thanh Trạng thái, Cửa sổ Soạn thảo và Cửa sổ Message

(Cửa sổ chứa các thông báo lỗi khi thực hiện biên dịch hoặc thông dịch)

- Dòng cuối cùng là dòng ghi các lệnh thông dụng:

F1-Help F5-Zoom F6-Switch F7-Trace F8-Step F9-Make F10-Menu

1.2.2 Các Lệnh xử lý tập tin:

Mặc nhiên phần mở rộng của tên tập tin chương trình là C Các lệnh chứa trong Menu File (Alt - F) gồm:

Load (F3): Mở tập tin từ đĩa hoặc tập tin mới

Pick (Alt + F3): Chọn lại các tập tin đã mở trước đó

New: Tạo tập tin mới với tên là Noname.C trong thư mục hiện hành

Save (F2): Ghi tập tin lên đĩa

Write to: Ghi tập tin lên đĩa với tên khác

Directory: Chọn tập tin được liệt kê theo đường dẫn thư mục

Cửa sổ thông báo lỗi Thanh chức năng

Vùng Soạn thảo chương trình

Change Dir: Chọn thư mục hiện hành khác

Os Shell: Tạm dừng Turbo C trở về màn hình Dos

(muốn trở lại chương trình soạn thảo Turbo C gõ lệnh Exit)

Quit(Alt - X): Kết thúc làm việc với Turbo C trở về Dos

1.2.3 Thao tác dịch chuyển con trỏ:

- ,,,: di chuyển con trỏ theo hướng mũi tên

- Home, End: Chuyển con trỏ về đầu hoặc cuối dòng

- Ctrl - Home, Ctrl - End: Chuyển con trỏ về đầu hoặc cuối trang màn hình

- PageUp, PageDown: Chuyển con trỏ lên hoặc xuống 1 trang màn hình

- Ctrl - PageUp, Ctrl - PageDown: di chuyển con trỏ về đầu hoặc cuối văn bản

1.2.4 Thao tác chèn và xóa:

- Insert : Chuyển đổi chế độ soạn thảo viết chèn hoặc viết đè

- Ctrl - N: chèn một dòng trắng tại vị trí con trỏ

- Ctrl - Y: xóa một dòng tại vị trí con trỏ

- Ctrl - Q Y: xóa từ vị trí con trỏ đến cuối dòng

1.2.5 Thao tác xử lý khối văn bản:

- Ctrl -K B: Đánh dấu đầu khối tại vị trí con trỏ

- Ctrl - K K: Đánh dấu cuối khối tại vị trí con trỏ

- Ctrl - K C: Sao chép khối dữ liệu đến vị trí con trỏ

- Ctrl - K V: Chuyển khối dữ liệu đến vị trí con trỏ

- Ctrl - K Y: Xóa khối dữ liệu được đánh dấu

- Ctrl - K P: In khối văn bản ra máy in

1.2.6 Thao tác tìm kiếm và thay thế:

- Tìm kiếm và thay thế: Ctrl - Q A

(Nhập văn bản cần tìm và văn bản cần thay thế nếu có)

1.2.7 Thao tác biên dịch và chạy chương trình:

Muốn thi hành một chương trình đang soạn thảo thì chọn mục Run từ Menu

Để biên dịch và liên kết chương trình, bạn cần nhấn tổ hợp phím Ctrl + F9, điều này sẽ tạo ra các tập tin có phần mở rộng OBJ và EXE Để xem kết quả thực hiện của chương trình trên màn hình MSDOS, hãy nhấn Alt + F5 Để quay lại màn hình soạn thảo Turbo C, chỉ cần nhấn Enter.

Sau khi được dịch các chương trình này có thể chạy trực tiếp từ dấu nhắc của hệ điều hành Dos

BỘ KÝ TỰ, TỪ KHÓA, DÒNG CHÚ THÍCH

1.3.1 Bộ ký tự cơ bản:

Trong Turbo C sử dụng các bộ ký tự cơ bản như sau:

- Các ký tự chữ từ A  Z , a  z

- Các ký tự số từ 0  9

- Các ký tự đặc biệt: ( ) , [ ] , { } , dấu phẩy, dấu chấm phẩy

 Chú ý : Trong Turbo C chữ viết hoa và chữ viết thường là khác nhau

Dùng để định nghĩa các thao tác hoặc khai báo các hằng, các biến hoặc định nghĩa một kiểu dữ liệu v.v

Ví dụ 1.1: break , case , char , const , do , double, else , if

 Chú ý : Các từ khóa này phải được viết bằng chữ thường

Các lệnh trong ngôn ngữ C thường ngắn gọn và phức tạp, do đó, việc thêm các dòng chú thích là cần thiết để người viết và người đọc dễ dàng hiểu cấu trúc của chương trình Khi chạy chương trình, Turbo C sẽ tự động bỏ qua các dòng chú thích này, giúp mã nguồn trở nên sạch sẽ và dễ quản lý hơn Để tạo dòng chú thích, người dùng cần đặt chúng trong cặp ký hiệu thích hợp.

/* */

HẰNG, BIẾN, CÁC KIỂU VÔ HƯỚNG CHUẨN

Hằng là một đại lượng cố định, có giá trị không thay đổi trong suốt quá trình thực hiện chương trình Có nhiều loại hằng khác nhau được sử dụng trong lập trình.

 Các Hằng số nguyên thuộc kiểu int , short hoặc long

 Các Hằng số thực thuộc kiểu float, double

- Hằng kí tự: chỉ nhận một kí tự bất kỳ trong bộ mã ASCII Hằng kí tự phải được đặt trong ‘cặp dấu nháy đơn’

 Khi khai báo một hằng kí tự, ví dụ như ‘A’ thì máy sẽ dành ra một byte để lưu trữ giá trị 'A' là 65

- Hằng chuỗi kí tự : là một chuỗi kí tự nhận các ký tự bất kỳ trong bảng mã

ASCII, được đặt trong “cặp dấu nháy kép”

Khi khai báo hằng chuỗi gồm n ký tự, trong bộ nhớ sẽ có n + 1 ký tự liên tiếp, bao gồm n ký tự đầu tiên từ chuỗi và một ký tự Null (ký hiệu ‘/0’) ở cuối.

Biến là một đại lượng được khai báo trước và giá trị của nó sẽ thay đổi trong quá trình thực hiện chương trình

Mỗi biến trong Turbo C cần được đặt tên và thuộc một kiểu dữ liệu cụ thể Tùy thuộc vào kiểu dữ liệu được khai báo, Turbo C sẽ tự động cấp phát vùng nhớ tương ứng.

Tên biến có thể dài tùy ý, nhưng chỉ 32 ký tự đầu tiên là có ý nghĩa Tên biến phải bắt đầu bằng chữ cái hoặc dấu gạch dưới, tiếp theo là các ký tự chữ, số hoặc ký tự khác.

1.4.3 Các kiểu vô hướng chuẩn:

- Kiểu char: dùng để lưu trữ những giá trị nguyên mà mã ASCII của kí tự đó ở trong lớp kí tự có thể thực hiện được

Có hai cách khai báo biến ký tự trong lập trình: c = 'a' hoặc c = 97 Cả hai cách đều cho kết quả giống nhau Khi sử dụng kiểu xuất dữ liệu dạng ký tự (%c), chương trình sẽ in ra ký tự 'a' Ngược lại, nếu sử dụng kiểu xuất dữ liệu dạng số, giá trị 97 sẽ được hiển thị.

(%d) sẽ in ra số thứ tự của ký tự 'a' trong Bảng mã ASCII là 97

Tập hợp số Kiểu Kích thước Cận dưới Cận trên

SỐ NGUYÊN char 1 byte -128 127 int 2 bytes -32768 32767 short 2 bytes -32768 32767 long 4 bytes -2147483648 2147483647

SỐ NGUYÊN DƯƠNG unsigned char 1 byte 0 255 unsigned short 2 bytes 0 65535 unsigned int 2 bytes 0 65535 unsigned long 4 bytes 0 4294967295

SỐ THỰC float 4 bytes -3.4*10 38 3.4*10 38 double 8 bytes -1.7*10 -308 1.7*10 308 long double 10 bytes -3.4*10 4932 1.1*10 4932

CẤU TRÚC CHƯƠNG TRÌNH

- PHẦN KHAI BÁO CHƯƠNG TRÌNH CHÍNH

+ Khai báo các thư viện hàm bắt đầu bằng từ khoá #include

+ Khai báo các hằng bắt đầu bằng từ khoá #define

+ Khai báo PROTOTYPE của chương trình con

+ Khai báo kiểu dữ liệu dùng chung (sử dụng với các kiểu có cấu trúc) + Khai báo biến dùng chung: gồm 2 phần

,, , ;

+ Khai báo chương trình con (Có thể đặt bất cứ chỗ nào trong chương trình chính)

- PHẦN THÂN CHƯƠNG TRÌNH CHÍNH

Bắt đầu bằng từ khoá main()

{ Khai báo biến của riêng phần thân chương trình chính

< Các lệnh trong chương trình >

Ví dụ 1.6: Chương trình nhập một số thập phân, in ra mã tương ứng

#include /* Sử dụng Hàm thư viện stdio.h */ int c; /* Khai báo biến c kiểu số nguyên */ main ( ) /* Bắt đầu vào thân chương trình chính */

Để xóa màn hình trong lập trình C, bạn có thể sử dụng lệnh `clrscr();` Tiếp theo, sử dụng `printf` để yêu cầu người dùng nhập một số nguyên vào biến `c` Sau khi nhận giá trị từ người dùng qua `scanf`, bạn có thể hiển thị ký tự tương ứng với số nguyên đó cùng với giá trị ASCII của nó bằng cách sử dụng lệnh `printf`.

/* Xuống dòng xuất chuỗi, xuất giá trị biến c lần lượt tại %c và %d */ getch ( ); /* Đợi nhấn Enter kết thúc chương trình */

Ký tự b có số thứ tự trong bảng mã ASCII là 98.

XỬ LÝ BIẾN

1.6.1 Khởi tạo giá trị của biến:

Có thể khởi tạo giá trị của biến ngay lúc khai báo hoặc gán giá trị vào biến trong chương trình bằng phép gán (=)

Ví dụ 1.7: int bien = 30 ; so = 10 ; x = 3.14 ; scanf(“%d”, &nhap)

1.6.2 Xuất các giá trị của biến:

Hàm printf cho phép xuất giá trị lên màn hình bằng cách sử dụng chuỗi mã định dạng phù hợp Bạn có thể xuất giá trị của nhiều biến, dù cùng kiểu hay khác kiểu, chỉ trong một lệnh printf Chuỗi mã định dạng tổng quát giúp định hình cách thức hiển thị dữ liệu.

% [cờ] [chiều rộng] [ Thập phân]

 %: là kí tự bắt buộc phải có, nó thông báo cho C biết bắt đầu một mã định dạng

 [cờ] : dùng để canh lề hay định dạng dữ liệu

- Nếu không khai báo cờ thì dữ liệu sẽ được canh phải

- Nếu khai báo cờ là dấu trừ ( - ) thì dữ liệu sẽ canh trái

- Nếu khai báo cờ là dấu cộng (+) thì số sẽ có dấu cộng hoặc trừ (tùy thuộc vào số âm hay dương)

- Nếu khai báo cờ là dấu # thì với mọi các số thực chắc chắn sẽ có dấu chấm thập phân mặc dù số thực ấy là số nguyên

Chiều rộng là độ dài tối đa cho phép truy xuất dữ liệu, trong đó mã định dạng 0 yêu cầu truy xuất đủ n ký tự; nếu không đủ, các số không sẽ được thêm vào phía trước.

 Phần thập phân: là kích thước phần số lẻ thập phân

 Kiểu: là các mã ký tự định dạng dữ liệu , dữ liệu truy xuất thuộc các kiểu dữ liệu sau:

+ c: là dữ liệu kiểu char hoặc unsigned char

+ s: in dữ liệu kiểu chuỗi ký tự

+ d: là dữ liệu kiểu int, short (số nguyên)

+ u: dữ liệu kiểu unsigned (số nguyên dương)

+ o: là dữ liệu kiểu int nhưng xuất ra ở dạng hệ bát phân

+ x hoặc X: dữ liệu kiểu int nhưng xuất ra ở dạng hệ thập lục phân, sử dụng các ký tự từ af hoặc AF để biểu diễn các con số từ 1015

+ f: dữ liệu kiểu số thực (float).+ e: dữ liệu kiểu số thực được in ra theo dạng có số mũ thập phân Như: 1.25e+03 = 1.25*10 3 = 1250

+ p: kiểu con trỏ (xuất địa chỉ của con trỏ hoặc địa chỉ của biến)

+ Ngòai ra có thể thêm mã l, L vào trước các kiểu để chuyển sang kiểu

“ Kép ” long, double như: l đi với d, o, x định dạng kiểu long L đi với e, f định dạng kiểu double(lf)

 Các mã điều khiển: có tác dụng điều khiển việc xuất dữ liệu, các mã điều khiển có thể dùng độc lập hoặc kết hợp với mã định dạng :

Thư viện hàm stdio.h trong ngôn ngữ lập trình C chứa các hàm quan trọng như clrscr(), printf() và scanf() Để sử dụng những hàm này, bạn cần khai báo câu lệnh #include trong chương trình của mình, vì C không tích hợp sẵn các hàm này Việc này giúp trình biên dịch nhận biết và cho phép bạn sử dụng các chức năng từ thư viện.

 Hàm main( ): dùng để khai báo bắt đầu khối chương trình chính

 Cặp dấu ngoặc nhọn { }: dùng để giới hạn khối chương trình hoặc sử dụng để giới hạn câu lệnh phức hợp

1.6.3 Nhập dữ liệu vào cho biến:

Hàm scanf được sử dụng để nhập giá trị cho biến, với mã định dạng dữ liệu tương tự như hàm printf Ký tự & đặt trước biến giúp Turbo C nhận diện địa chỉ lưu trữ dữ liệu của biến.

Ví dụ 1.8: Viết chương trình nhập vào chiều dài, chiều rộng Tính và in ra màn hình diện tích, chu vi của hình chữ nhật

#include int a, b, c, d; main( ){ printf(“\n Nhập chiều dài a=“);scanf(“%d”, &a); printf(“\n Nhập chiều rộng b=“);scanf(“%d”, &b); c = (a+b) * 2; d = a * b; printf(“\n chu vi: %d”, c); printf(“\n diện tích: %d”, d); getch( );

1.6.4.1 Biến đổi kiểu tự động:

- Nếu trong một biểu thức có nhiều biến khác kiểu tham gia, thì kết quả của biểu thức đó sẽ có kiểu là kiểu có phạm vi lớn nhất

Khi một biểu thức được gán cho một biến có kiểu khác, giá trị của biểu thức sẽ tự động được chuyển đổi theo kiểu của biến nhận giá trị.

Ví dụ 1.9: Biến đổi kiểu tự động

#include main( ){ int a = 30, n; float b = 4, c = 10.52; clrscr( ); printf("\n Kết quả biểu thức a*b*c = %8.2f ", a*b*c); n = a/b; printf("\n Kết quả 30 / 4 gán cho kiểu nguyên = %d", n); getch( );

Kết quả 30 / 4 gán cho kiểu nguyên = 7

 Trong biểu thức a*b*c có kiểu của biến b và c là số thực có phạm vi lớn nhất vì vậy kết quả của biểu thức là giá trị số thực

 Để lấy kết quả là phần nguyên của phép chia 30/4, ta gán kết quả cho một biến kiểu nguyên

1.6.4.2 Biến đổi kiểu bắt buộc:

Trong một số tình huống, việc chuyển đổi kiểu dữ liệu của biến hoặc biểu thức là cần thiết để đạt được kết quả mong muốn Quá trình này được gọi là ép kiểu.

Ví dụ 1.10 : Chạy chương trình ép kiểu sau

{ int a = 100, b = 6; float thuong1, thuong2; thuong1 = a/b; thuong2 = (float) a/b; printf(“\n Chia không ép kiểu: 100 / 6 = %f”, thuong1); printf(“\n Chia ép kiểu: 100 / 6 = %f”, thuong2); getch();

Phép chia hai số nguyên (a và b) thường cho kết quả là một số nguyên, dẫn đến việc thiếu phần thập phân trong thương Để có được giá trị chính xác cho phép chia 100 / 6, cần phải ép kiểu biểu thức (a/b) thành số thực, giúp chứa đựng các giá trị thập phân.

CÁC TOÁN TỬ, BIỂU THỨC

1.7.1.1 Các toán tử số học:

Có thứ tự ưu tiên trong biểu thức như sau:

- phép trừ (Bảng trên có thứ tự ưu tiên từ trái sang phải từ trên xuống dưới)

1.7.1.2 Các toán tử quan hệ và logic:

Những toán tử quan hệ và logic cho kết quả là đúng hoặc sai (True hoặc False) và được sử dụng chung với nhau

Các toán tử quan hệ so sánh :

(lớn hơn) (lớn hơn (nhỏ hơn) (nhỏ hơn (bằng) (khác) hoặc bằng) hoặc bằng)

! && || phủ định (not) hội (và) tuyển (hoặc

 Có các thứ tự ưu tiên từ trái sang phải như sau:

1.7.1.3 Các toán tử thao tác Bit:

Những toán tử thao tác Bit chỉ có thể sử dụng cho những số nguyên hoặc kí tự

Có thứ tự ưu tiên như sau:

& : phép toán hội các Bit

| : phép tuyển các Bít không bù trừ

^ : phép tuyển có loại trừ

Ví dụ 1.11 : Các phép toán trên Bit

#include int a, b; main(){ clrscr(); a;b=3; printf("\n 1010 & 11 = %d", a&b); printf("\n 1010 | 11 = %d", a|b); printf("\n 1010 ^ 11 = %d", a^b); printf("\n ~ 1010 = %d", ~a); printf("\n 1010 >> 1 = %d", a>>1); printf("\n 1010 1 la : %d",2>1); printf("\n Gia tri bieu thuc sai 1>2 la : %d",1>2); getch();

Gia tri bieu thuc dung 2>1 la: 1

Gia tri bieu thuc sai 1>2 la: 0

BÀI TẬP CHƯƠNG I

1 Viết chương trình nhập vào bán kính r của 1 hình tròn Tính Chu vi và Diện tích của hình tròn

2 Viết chương trình nhập vào các điểm thi Windows, Winword, Excel Tính điểm Trung bình (lấy giá trị có 1 số lẻ thập phân)

3 Viết chương trình nhập vào số nguyên dương n Tính tổng S n của:

Với n được nhập vào từ bàn phím (Sử dụng cấu trúc lặp for(i=1;i

Ngày đăng: 21/12/2021, 16:58

HÌNH ẢNH LIÊN QUAN

Hình         Ngữ nghĩa - NGÔN NGỮ LẬP TRÌNH C MỘT SỐ GIẢI THUẬT THÔNG DỤNG VÀ CẤU TRÚC MẢNG, CÁC CẤU TRÚC ĐIỀU KHIỂN
nh Ngữ nghĩa (Trang 50)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w