Mình mới học C, đang tập làm những bài cơ bản.
Đề là thế này: Định nghĩa 1 dãy cấu trúc có thể được dùng làm danh bạ điện thoại, gồm có tên, địa
chỉ, số điện thoại, với số mẫu tin tối đa là 40. Viết chương trình quản lý danh bạ điện thoại có các chức năng: nhập thông số, thêm danh bạ, in toàn bộ danh bạ...
mình viết code thế này
Nhưng khi nhập dữ liệu vào thì ở người đầu tiên không thể nhập tên được:Code:#include <stdio.h> #include <conio.h> #include <stdlib.h> #define MAX 40 struct phone_record { char ten[40]; char d_c[100]; char dt[12]; }; phone_record danhba[MAX]; void in(int); void add(int,int); void out(int); void out_fil(int); void in(int a) { int i; for(i=0;i<a;++i) { printf("Nhap thong tin nguoi thu %d:\n",i+1); printf("Ten: "); gets(danhba[i].ten); printf("Dia chi: "); gets(danhba[i].d_c); printf("So dien thoai: "); gets(danhba[i].dt); } } void add(int a,int n) { int i; for(i=a;i<a+n;++i) { printf("Nhap them danh ba nguoi thu %d\n",i+1); printf("Ten: "); gets(danhba[i].ten); printf("Dia chi: "); gets(danhba[i].d_c); printf("So dien thoai: "); gets(danhba[i].dt); } } void out(int a) { int i; for(i=0;i<a;++i) { printf("\n--Nguoi thu %d--\n",i+1); printf("Ten: %s\n",danhba[i].ten); printf("Dia chi: %s\n",danhba[i].d_c); printf("So dien thoai: %s\n",danhba[i].dt); } } int main(void) { int n, c, a; printf("----------------------------------------\n"); printf("- CHUONG TRINH DANH BA DIEN THOAI -\n"); printf("----------------------------------------\n"); printf("\n--Nhap Du Lieu--\n"); printf("Ban muon danh ba chua bao nhieu nguoi (it hon 40): "); scanf("%d",&n); in(n); tt: printf("\n\n1. Them danh ba\n"); printf("2. In Toan Bo Danh Ba\n"); printf("3. Thoat\n"); printf("Nhap lua chon cua ban: "); scanf("%d",&c); switch(c) { case 1: printf("Nhap so luong danh ba muon them vao: "); scanf("%d",&a); add(n,a); n=n+a; goto tt; case 2: out(n); goto tt; case 3: goto thoat; default: printf("Ma sai!"); goto tt; } thoat:; }
Vậy là sao hở mấy pro?


LinkBack URL
About LinkBacks



Trả Lời Với Trích Dẫn


