30/09/2018, 16:02

Poll: Kiểm tra kiến thức C - 1.2

Các bạn thảo luận đáp án nhé, bài test lấy từ http://www.indiabix.com/online-test/c-programming-test/11

2.What will be the output of the program?

#include<stdio.h>
int main()
{
    int k, num=30;
    k = (num>5 ? (num <=10 ? 100 : 200): 500);
    printf("%d
", num);
    return 0;
}
  • A. 200
  • B. 30
  • C. 100
  • D. 500
viết 18:02 ngày 30/09/2018

Sao bài này ra A. 200 vậy mọi người?
Mình giải ra 30 mà?

viết 18:12 ngày 30/09/2018

đề dễ nhìn nhầm thật ^^

buithaiminh viết 18:11 ngày 30/09/2018

Đề troll nhau thật @@

Nguyễn Ngọc Tú viết 18:06 ngày 30/09/2018

Thì bạn giải đúng rồi :v

Lê Đình Huy viết 18:07 ngày 30/09/2018

nhiều người chọn 200 thế nhỉ ?

Nguyễn Minh Dũng viết 18:05 ngày 30/09/2018

printf("%d\n", num);

Bài này nó print ra num chứ không phải print k @lttp ơi Đề bài nó dụ người ta đó.

Dũng Kon viết 18:09 ngày 30/09/2018

ặc troll vãi, mình chọn 200 cứ tưởng đúng

viết 18:06 ngày 30/09/2018

Haha, Mình lúc đầu cũng ra nhầm 200

Nguyễn Minh Dũng viết 18:16 ngày 30/09/2018

Cái này nhiều người bị bé cái nhầm lắm, hehe.

Phương Lê viết 18:16 ngày 30/09/2018
Output: 200
int num = 30;
if(num > 5)
{
   if(num <= 10)
      printf("100");
   else
      printf("200");
}
else
   printf("500");
return 0;
}
Nguyễn Tuấn Tiến viết 18:15 ngày 30/09/2018

Sau khi đọc xong bài này, em nghĩ là mình nên xem nó in ra cái gì trước rùi mới giải tiếp cho chắc quá.

Nguyễn Đình Dũng viết 18:17 ngày 30/09/2018

Kiến thức bài này ở đâu v anh. E không hiểu code

Nguyễn Minh Dũng viết 18:08 ngày 30/09/2018

Đâu là câu lệnh if thu gọn, nếu ta có câu lệnh if như sau

If (dieu_kien == true)
    lam_neu_dung();
else
    lam_neu_sai();

Thì ta có thể thu gọi lại tương đương với

dieu_kien == true ? lam_neu_dung() : lam_neu_sai();

Không khuyến khích sử dụng phong cách này, trừ phi nó giúp làm cho code dễ nhìn hơn.

Bài liên quan
0