Em chào các anh chị. cho em hỏi 2 vấn đề ạ:
- Khi em sử dụng hàm nhập để nhạp n và a[ ] tại sao hàm xuất của em trong code bên dưới không lấy được giá trị n( do vậy nên nó không xuất ra màn hình được ạ). Nhưng khi em cho nhập riêng n trong hàm main thì không bị lỗi thế ạ.
- Sao điều kiện của code em trong vòng lặp do{ }while(); lại bị sai ạ. khi em nhập giá trị lần lượt là -3 và 300 thì chạy được( nó bắt được lỗi ạ) mà nhập giá trị 3 mà vẫn vị sai cùng điều kiện thế em dùng
if( ) thì lại chạy ổn ạ.
Em cảm ơn ạ.
#include<iostream>
#include<stdio.h>
#include<math.h>
#include<cstring>
#define max 100
using namespace std;
void nhapMang(int a[],int n){
cout<<" nhap n: ";
lap:
cin>>n;
if( 100<n || n<=0){
cout<<" nhap n sai. nhap lai: ";
goto lap;
}
// do{
// cout<<" nhap n sai. nhap lai: ";
// goto lap;
// }while(100<n || n<=0);
for(int i=0;i<n;i++){
cin>>a[i];
}
}
void xuatMang(int a[],int n){
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
}
cout<<endl;
}
int main(){
int a[max],n,b[max],m;
nhapMang(a,n);
xuatMang(a,n);
}