Một hàm có thể trả về nhiêu hơn một kết quả không ạ? Ví dụ em muốn viết hàm tính cộng trừ nhân chia trong cùng một hàm và in ra, như vậy có đúng không hay phải chia thành bốn hàm nhỏ ạ?
Thầy Thân cho mình hỏi, ở câu 1 bài tập trong đáp án, khi hiển thị kết quả
// hàm hiển thị kết quả ở dạng số nguyên
void showIntegerResult(int r) {
printf(“Ket qua = %d\n”, r);
}
// hàm hiển thị kết quả ở dạng số thực
void showRealResult(float r) {
printf(“Ket qua = %f\n”, r);
}
Với kiểu số nguyên, nếu kết quả là float hay double(> int), mình không cần phải ép kiểu ạ?
Tương tự với số thực, khi đầu vào – kết quả là số nguyên (int), mình cũng không cần phải ép kiểu ạ?
Xin cảm ơn thấy Thân nhiều.
đúng rồi. Tại vì khi truyền đi công cụ tự động lấy phần nguyên và truyền đi nếu tham số của hàm nhận là kiểu nguyên. Vì kiểu int < float < double nên ta có thể truyền giá trị int vào làm đối số cho các hàm nhận tham số là int hoặc float hoặc double mà không sợ mất giá trị như float->int nói ở trên.(tức không mất phần thập phân)
4 Comments
Một hàm có thể trả về nhiêu hơn một kết quả không ạ? Ví dụ em muốn viết hàm tính cộng trừ nhân chia trong cùng một hàm và in ra, như vậy có đúng không hay phải chia thành bốn hàm nhỏ ạ?
cho em hỏi sao cái hàm của em viết thêm dòng if else thì nó k chạy hả Thầy
int soThuanNghich(int n){
int sum=0;
while(n>0){
sum = sum*10 + n%10;
n /= 10;
}
if(sum==n){
printf(“day la so thuan nghich\n”);
} else{
printf(“day khong la so thuan nghich\n”);
}
return sum;
}
Thầy Thân cho mình hỏi, ở câu 1 bài tập trong đáp án, khi hiển thị kết quả
// hàm hiển thị kết quả ở dạng số nguyên
void showIntegerResult(int r) {
printf(“Ket qua = %d\n”, r);
}
// hàm hiển thị kết quả ở dạng số thực
void showRealResult(float r) {
printf(“Ket qua = %f\n”, r);
}
Với kiểu số nguyên, nếu kết quả là float hay double(> int), mình không cần phải ép kiểu ạ?
Tương tự với số thực, khi đầu vào – kết quả là số nguyên (int), mình cũng không cần phải ép kiểu ạ?
Xin cảm ơn thấy Thân nhiều.
đúng rồi. Tại vì khi truyền đi công cụ tự động lấy phần nguyên và truyền đi nếu tham số của hàm nhận là kiểu nguyên. Vì kiểu int < float < double nên ta có thể truyền giá trị int vào làm đối số cho các hàm nhận tham số là int hoặc float hoặc double mà không sợ mất giá trị như float->int nói ở trên.(tức không mất phần thập phân)