Cùng tìm hiểu về cách nhập chuỗi trong C. Bạn sẽ học được cách nhập 1 ký tự trong C, nhập một chuỗi trong C, nhập nhiều chuỗi trong C, cũng như cách nhập chuỗi có khoảng trắng trong C sau bài học này.
Nhập 1 ký tự trong C
Để nhập 1 ký tự trong C, chúng ta sử dụng hàm scanf() với định dạng %c
bằng cú pháp sau đây:
char a;
scanf("%c"
, &a
)
Trong đó dòng đầu tiên dùng để khai báo biến a
có kiểu ký tự, và dòng thứ 2 dùng để gán 1 ký tự nhập từ bàn phím vào biến a. Lưu ý chúng ta cần thêm ký tự &
vào đằng trước tên biến khi biến này thuộc kiểu ký tự.
Ví dụ cụ thể:
|
Khi đó màn hình nhập dữ liệu sẽ như sau:
Nhap 1 ky tu: g |
Nhập vào một chuỗi trong C
Để nhập vào một chuỗi trong C, chúng ta sử dụng hàm scanf() với định dạng %s
bằng cú pháp sau đây:
char str[n];
scanf("%s"
, str)
Trong đó dòng đầu tiên dùng để khai báo biến str
có kiểu mảng chuỗi với độ dài n, và dòng thứ 2 dùng để gán 1 chuỗi nhập từ bàn phím vào biến str. Lưu ý vốn mảng trong C đã biểu diễn địa chỉ rồi nên chúng ta không cần thêm ký tự &
vào đằng trước tên biến khi biến này thuộc kiểu mảng.
Ví dụ, chúng ta viết chương trình nhập vào một chuỗi ký tự C như sau:
|
Khi đó màn hình nhập dữ liệu sẽ như sau:
Nhap chuoi ky tu: abc |
Nhập nhiều chuỗi trong C
Để nhập nhiều chuỗi trong C, chúng ta viết các định dạng chuỗi trong chuỗi định dạng, và các chuỗi nhập vào cách nhau bởi dấu phẩy, khi dùng hàm scanf() với cú pháp sau đây:
char str1[n1], str1[n2], str3[n3];
scanf("%s%s%s"
, str1, str2, str3);
Ví dụ, chúng ta viết chương trình nhập nhiều chuỗi trong C như sau:
|
Khi đó màn hình nhập dữ liệu sẽ như sau:
Nhap cac chuoi: abc |
Nhập chuỗi có khoảng trắng trong C
Hàm scanf() trong C chỉ có tác dụng nhập các chuỗi không chứa khoảng trắng. Trong trường hợp cần nhập chuỗi chứa khoảng trắng tạo bởi dấu cách, tab hay ký tự xuống dòng, chúng ta sẽ dùng hàm fgets() để thay thế.
Hàm fgets() vốn được sử dụng để đọc và lấy dữ liệu từ file trong C, tuy nhiên chúng ta cũng có thể nhập chuỗi có khoảng trắng trong C bằng hàm này với cú pháp sau đây:
fgets(str, sizeof(str)+1, stdin);
Trong đó:
str
là biến để chứa chuỗi cần nhập từ bàn phímsizeof(str)+1
để chỉ định số ký tự lớn nhất có thể nhập bởi hàm fgets(). Ở đây hàmsizeof(str)
sẽ trả về kích cỡ của chuỗi str, bao gồm cả ký tự kết thúc chuỗi\0
, nên chúng ta cần cộng thêm 1 đơn vị vào.stdin
được sử dụng như là con trỏ file trong hàm fgets(). stdin là viết tắt của file header “stdio.h”, giúp chúng ta có thể nhận đầu vào tiêu chuẩn từ bàn phím.
Và sau đây là ví dụ nhập chuỗi có dấu cách trong C:
|
Khi đó màn hình nhập dữ liệu sẽ như sau:
Nhap chuoi co ky tu trang: Viet Nam |
- Xem thêm: fgets trong C
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn về nhập chuỗi trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành với các ví dụ sau đây.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp theo nhé.
URL Link
https://laptrinhcanban.com/c/lap-trinh-c-co-ban/chuoi-string-trong-c/nhap-chuoi-trong-c/
HOME › lập trình c cơ bản dành cho người mới học lập trình>>12. chuỗi string trong c