Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Nhập số liệu cho mảng

  1. #1
    Ngày gia nhập
    11 2008
    Bài viết
    116

    Thumbs down Nhập số liệu cho mảng

    Code:
    #include <stdio.h>
    #include <conio.h>
    #define MAX 3
    int NHAP(int ia[])
    {
    	int i=0;
    	do
    	{       if(i>=MAX)
    			{
    			printf("\nmang da day.");
    			i++;
                            break;
    			}
    		printf("\nnhap so nguyen thu %d:",i+1);
    		scanf("%d",&ia[i]);
    	}
    	while (ia[i++] >0);
    	i--;
    	return 0;
    }
    int XUAT(int ia[])
    {
    	int i=0;
    	do
    	printf("\na[%d]=%d",i+1,ia[i]);
    	while (ia[i++]>0);
    	return 0;
    }
    void main()
    {
    clrscr();
    int in,ia[MAX],s,i;
    
    s=NHAP(ia);
    s=XUAT(ia);
    getch();
    }
    Đề: nhập số liệu cho mảng.
    Sao nó lại hiện ra số 0 khi em nhập đầy mảng vậy mấy anh?

  2. #2
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    Code:
    #include <stdio.h>
    #include <conio.h>
    #define MAX 3
    int NHAP(int ia[])
    {
    	int i=0;
    	do
    	{       if(i>=MAX)
    			{
    			printf("\nmang da day.");
    			i++;
                            break;
    			}
    		printf("\nnhap so nguyen thu %d:",i+1);
    		scanf("%d",&ia[i]);
    	}
    	while (ia[i++] >0);
    	i--;
    	return 0;
    }
    int XUAT(int ia[])
    {
    	int i=0;
    	do {
    	printf("\na[%d]=%d",i+1,ia[i]);
    	i++;  }
    	while (i<MAX);
    	return 0;
    }
    void main()
    {
    int in,ia[MAX],s,i;
    
    s=NHAP(ia);
    s=XUAT(ia);
    getch();
    }
    mảng có mỗi 3 phần tử mà cậu in ra tận mấy chục phần tử thì sai là đúng rồi

  3. #3
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    Đề: nhập số liệu cho mảng.
    Sao nó lại hiện ra số 0 khi em nhập đầy mảng vậy mấy anh?
    MÌnh không dùng biên dịch for DOS nên không test nổi. Nhưng lý thuyết khi khai báo là biến toàn cục thì các sẽ được khởi tạo giá trị đầu, TH là biến số (int,float) thì giá trị đầu bằng không, con trỏ thì bằng NULL.

    Còn việc khi cấp phát bộ nhớ cho mảng thì for sẽ cấp phát cho bạn lượng bộ nhớ là bội của 8 phần tử để cho chẵn byte, IDE win thì cấp phát bội của 16.

    Chương trình sau chạy bt, chỉ khi bạn tăng lên 17, nó sẽ báo lỗi khi nhập phần tử cuối cùng.
    Code:
    #include <stdio.h>
    #define MAX 6
    
    int main()
    {
        int a[MAX];
        for (int i=0;i<16;i++)
        {
            scanf("%d",&a[i]);
        }
    }

  4. #4
    Ngày gia nhập
    11 2008
    Bài viết
    116

    nhưng em đã dùng lệnh do...while rồi mà.

Các đề tài tương tự

  1. Sửa máy tính, cài đặt windows, phần mềm tại nhà nhanh nhất, rẻ nhất, hiệu quả nhất …
    Gửi bởi hopluccc trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 08-07-2013, 02:07 PM
  2. Trả lời: 12
    Bài viết cuối: 25-10-2012, 02:48 AM
  3. Bài tập C++ NHập mảng một chiều gồm n phần tử kết thúc nhập khi nhập một chữ cái
    Gửi bởi thienthanoze trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 15
    Bài viết cuối: 09-07-2012, 10:10 PM
  4. Bài tập C++ Viết phương trình nhập vào 1 chuỗi số.Hãy nhập vào 1 số.Đếm xem có bao nhiêu chữ số bạn vừa nhập
    Gửi bởi namtuocdn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 16-10-2011, 10:39 AM
  5. Bài tập C++ Nhập mảng 1 chiều, nếu phần tử nhập trùng nhau thì bắt nhập lại
    Gửi bởi danielh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 09-07-2011, 03:35 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn