Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 3 của 3
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    BT Căn bản Kiểu cấu trúc

    ai Giúp mình với.
    Sao chương trình mình làm nó lại bỏ đi một giá trị thế này. (Phần mã số sinh viên)

    Mã:
    #include <stdio.h>
    #include <conio.h>
    #include <string.h>
    #include <stdlib.h>
    
    #define max 50
    
    struct sinh_vien
    	{
    	int maso;
    	char ten[30];
            int diem;
    	};
    
    sinh_vien input1sv();
    void input(sinh_vien a[],int &n); // nhap danh sach sinh vien
    void output(sinh_vien a[],int n); // xuat mang
    
    void main()
    	{
    	sinh_vien a[max];
    	int n;
    	input(a,n);
    	output(a,n);
            getch();
    	}
    
    
    void input(sinh_vien a[],int &n) // nhap mang
    	{
    	clrscr();
    	printf ("Nhap n: ");
    	scanf ("%d",&n);
    	for (int i=0;i<n;i++)
    		{
                    printf ("Nhap lieu sinh vien thu %d
    ",i+1);
    		a[i]=input1sv();
    		}        
    	}
    
    void output(sinh_vien a[],int n) // xuat mang
    	{
            clrscr();
    	printf ("
    Cac phan tu trong mang: ");
    	for (int i=0;i<n;i++)
    		{
    		printf ("
    
    Sinh vien thu %d",i+1);
    		printf ("
    Ma so sinh vien: %d",a[i].maso);
    		printf ("
    Ho ten: %s",a[i].ten);
                    printf ("
    Diem trung binh: %d",a[i].diem);
    		}
    	}
    
    
    
    sinh_vien input1sv()
    	{
    	sinh_vien trave;
    	char tam[3];
    	printf ("
    Nhap ma so sinh vien: ");
    	gets(tam);
    	trave.maso=atoi(tam);
    	printf ("Nhap ten: ");
    	gets(trave.ten);
    	printf ("Nhap diem trung binh: ");
    	gets(tam);
    	trave.diem=atoi(tam);
            return trave;        
    	}

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn luôn nhớ là cần phải xóa các bộ đệm khi dùng các hàm "scanf(), gets()":

    Mã:
    sinh_vien input1sv()
    	{
    	sinh_vien trave;
    	char tam[3];
    	printf ("
    Nhap ma so sinh vien: ");
            fflush(stdin);
    	gets(tam);
    	trave.maso=atoi(tam);
    	printf ("Nhap ten: ");
    	gets(trave.ten);
    	printf ("Nhap diem trung binh: ");
    	gets(tam);
    	trave.diem=atoi(tam);
            return trave;        
    	}

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •