code của bạn nhiều chỗ sai quá.
Thứ 1: for(i = 1; i < n; i++)
- trong hàm for thì phải khai báo biến i nhé: for(int i = 1; i < n; i++)
Thứ 2:
void inHoanChinh(int dau, int cuoi)
{
for(i = dau; i <= cuoi; i++)
if(hc)
printf("Day la so hoan chinh");
else
printf("Day khong la so hoan chinh");
}
}
- Biến hc ở đây là biến cục bộ trong hàm main nên trong hàm inHoanChinh() không sử dụng được.
- Và mục đích của hàm này chỉ là in ra 2 dòng: “Day la so hoan chinh” hoặc “Day la so khong hoan chinh”
Thứ 3: Mình chỉ mới đọc code thôi nhưng mình nghĩ thuật toán của bạn cho bài này chưa chính xác. Nếu bạn muốn thì mình có thể viết lại cho bạn