01/10/2018, 08:30
Tại sao giá trị trả về của e no lại cho a[0] bang 0 mà a[0] của e bằng 1 .e cảm ơn
#include<iostream>
#define MAX 100
using namespace std;
//====================================
void NhapMang(int a[] , int &n)
{
do {
cout<< "
nhap vao so phan tu cua mang :";
cin >>n;
if (n < 0 || n>100){
cout << "
So phan tu k hop le. Xin kiem tra lai !";
}
}while (n<0 || n>100); //bi lap lai
for(int i=0 ;i < n ;i++){
cout << "
nhap vao a[" << i << "] = ";
cin >>a[i];
}
}
//=========================================
void XuatMang(int a[], int n)
{
for(int i=0 ;i<n ; i++){
cout <<a[i]<<" ";
}
}
//===========================================
void chanle(int a[], int n)
{
cout<<"
Cac so xuat theo thu tu chan le: ";
for (int i=1;i<=n;i++)
{
if (a[i]%2==1)
cout<<a[i]<<" ";
}
for (int j=1;j<=n;j++)
{
if (a[j]%2==0)
cout<<a[j]<<" ";
}
}
//========chuong trinh chinh==========
int main()
{
int a[MAX];
int n;
NhapMang(a, n);
XuatMang(a, n);
chanle(a, n);
return 0;
}
Bài liên quan
bạn sửa ở hàm chanle . vòng lặp for cho i và j chạy i=0;i<n đi. thử coi có dc ko? đọc lại phần lý thuyết về mảng đi nhé. à mà code chưa tối ưu. tìm cách viết lại cho ngắn hơn nữa
cảm ơn bác nha!!!
phần này bản chất là kiểm tra giá trị mảng từ phần tử a[1] chứ không phải từ số 1 code đúng phải bắt đầu từ phần tử đầu tiên của mảng là a[0].
cam on moi ng .minh da sua dc r