Dưới đây là code check số hoàn hảo của mình, ae tìm giúp mình sai chỗ nào mà nhập số nào nó cũng báo là số hoàn hảo cả (trừ số 0) :((
source:
#include <stdio.h>
int checkperf (int x)
{
int s = 0, i = 1;
for ( ; i <= x; i++)
{
if (x % i == 0)
s += i ;
}
if (s = x * 2)
return 1;
else
return 0;
}
main ()
{
int n;
printf ("Nhap so ban muon biet lieu no co phai so hoan hao: ");
scanf ("%d", &n);
switch (checkperf (n))
{
case 1: printf ("%d la so hoan hao!", n); break;
case 0: printf ("%d khong phai la so hoan hao!", n); break;
}
}