Hỏi về cách trả Đúng hay Sai trong câu điều kiện do while

c

(Phan Minh Tiến) #1
int main()
{
    int n,count=0,sum=0,u,k;
    printf("Moi nhap so n \n");
    scanf("%d",&n);
    k=n;
    do {
        u=n%10;
        count++;
        sum+=u;
    }
    while ((n=n/10)!=0);
    printf("So cuoi cung la %d\n",k%10);
    printf("So chu so la %d\n",count);
    printf("Tong cac chu so %d\n",sum);
    printf("So dau tien la %d\n",u);
    return 0;

Chào mọi người cho e hỏi là nếu em thầy while( (n=n/10)!=0) thành while(n=n/10) thì nó có khác nhau ko ạ ? Em thử thì kết quả không khác nhau, nhưng em ko hiểu cái while(n=n/10) nó trả điều kiện đúng sai như nào ạ. Mong mọi người giúp e. E cảm ơn


(Bùi Trung Thông) #2

while(false) chính là while(0) (điều kiện lặp false)
while(true) chính là while(!0) - tức mọi số khác 0 là true (điều kiện lặp true)


(Xemsix) #3

trong java thì chổ điều kiện chỉ làm việc với kiểu boolean , trả về số int không được …


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?