-
05-01-2011, 01:33 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Chương trình C bị lỗi khi nhập 1 kí tự
Mã:#include <stdio.h> main(){ int n=0,tong=0; while (n!=3) { tong+=n; printf("nhap so' n :"); scanf(" %d", &n); } printf(" ket qua : %d", tong); system("pause");}
View more random threads:
- thao tác trên tập tin !
- Cho em hỏi cách đọc cột của file
- thuê làm bài tập c/c++
- Đọc file mã hóa mail (định dạng EML)
- bài toán đảo chuỗi kí tự trong lập trình C
- hỏi về phần nhập xuất file trong C
- Mọi người giúp mình với :(( mình giần nộp bài rồi :((
- [ Solved ]Ghi dữ liệu lên file
- Cách đọc file txt chứa các số nguyên và ký tự đặc biệt
- cảm ơn ạ
-
05-01-2011, 01:54 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Không hiểu tại sao bạn lại muốn nhập kí tự? Phải chăng bạn muốn lấy mã của kí tự để làm giá trị của số tự nhiên, hay chỉ dùng các kí tự từ a - f trong hệ 16?
Nếu muốn nhập trong hệ 16 bạn dùng scanf("%x", &n); Muốn lấy một kí tự bạn dùng char c; scanf("%c" &c);
-
05-01-2011, 03:26 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
umh. vì biến n bạn khai báo là một số nguyên mà vậy nện khi bạn nhập vào một kí tự vào thì nó lổi thôi. mình cũng mới vào nghề nên chổ này chỉ có thể hiểu vậy thôi có ại biết sâu hơn thì chỉ dùm cho anh em với
-
05-01-2011, 04:24 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Vì mình cứ nghĩ khi nhập kí tự , ví dụ nhập kí tự 'a' thì nó sẽ nhận là giá trị 65 ( !=3) ! Có cách nào để chương trình thực hiện được như vậy không ?
-
05-01-2011, 04:33 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thử cách này coi
Mã:#include <iostream> using namespace std; int main(){ char c; scanf("%c", &c); printf("%d", c); return 0;}
-
05-01-2011, 05:34 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thank Mod mp121209 ! nhưng mình muốn áp dụng vào bài trên cơ
-
05-01-2011, 05:38 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thế này bạn ạ. Bạn nên phân tích bài toán cho rõ ràng rồi mới định hướng làm. Nếu bạn cần làm việc với số nguyên, thì trường hợp bạn nhập 1, 234, ... là đúng, còn nếu nhập 'a', "abc", ... là sai. Ngược lại, nếu bạn muốn làm việc với kí tự, thì lại là bài toán khác. Vậy bài toán của bạn là gì? Cộng mã của các kí tự ư? Tôi lấy ví dụ, mã của kí tự '0' là 48, mã của '1' là 49. Nhưng nếu người sử dụng nhập vào dãy kí tự "abc" thì bạn sẽ quy đổi tương ứng như thế nào?
Thao tác trên tập hợp số tự nhiên (kiểu int) và kiểu kí tự (kiểu char) là những việc làm hoàn toàn khác nhau.
-
05-01-2011, 06:15 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi trieuvan.n01
Sai ở chỗ bạn nói sẽ lấy một integer từ bàn phím 0-9 nhưng lại nhập vô một kí tự alpha. scanf("%d", ..);
-
06-01-2011, 07:43 PM #9Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thank mod mp121209 vì đã giúp mình !!!! Mình mới học nên thắc mắc như vậy [IMG]images/smilies/biggrin.png[/IMG]
Không chỉ dừng lại ở việc sử dụng nguyên liệu cao cấp, mỗi công trình còn được "chăm sóc" bằng 4 dịch vụ xuất sắc của Tre Nghệ. Từ việc tư vấn, thiết kế đến thi công và hoàn thiện, mọi quy trình đều...
Chất Lượng và Sáng Tạo: Kiến Trúc...