PDA

View Full Version : giúp mình với



eku037
23-04-2009, 09:27
mình đang tự học C++ về hàm. mình tự làm bài này nhưng mà nó chạy sai, giải thích giúp mình nó sai ở chỗ nào với, mình vẫn chưa hiểu lắm về hàm:
#include<iostream.h>
#include<conio.h>
void nhap(double f)
{
cout<<"Nhap do F:"; cin>>f;
}
double tinh(double f)
{
double c;
c=5*(f-32)/9;
return c;
}
void main()
{clrscr();
double f,c;
::nhap(f);
cout<<f<<"F = "<<tinh(f)<<"C";
getch();
}

kimduquan
23-04-2009, 12:10
bạn sai ở chỗ là bạn truyền tham số f dưới dạng tham trị chứ ko phải tham biến nên sau khi bạn gọi hàm nhập thì f vẫn chưa có giá trị xác định nên tất cả các hàm có sử dụng biến f đều ko thực hiện được,lỗi này sửa=cách thêm dấu & sau float trong nguyên mẫu hàm nhap(),điều này có nghĩa là khi bạn thay đổi biến f trong hàm nhap() thì biến f trong hàm main cũng thay đổi theo,còn trong hàm main bạn bỏ dấu :: đi.Nếu bạn muốn biết rõ hơn thì bạn xem lại phần truyền tham số cho hàm trong tài liệu nào cũng được.

eku037
23-04-2009, 14:39
cám ơn bạn nhé, Mình làm thử rồi, chạy tốt lắm