01/10/2018, 14:08

Giúp một số quiz ngắn về C

Có một số quiz mình gặp trong một bài giảng về C, mọi người giải đáp giúp ạ!

•1 int x=017;int y=12; /∗is x>y?∗/
•2 short int s=0xFFFF12; /∗correct?∗/
•3 char c=−1;unsigned char uc=−1; /∗correct?∗/
•4 puts(“hel”+“lo”); puts(“hel”“lo”);/∗which is correct?∗/
•5 enum sz{S=0,L=3,XL}; /∗what is the value of XL?∗/
•6 enum sz{S=0,L=−3,XL}; /∗what is the value of XL?∗/

Aragami1408 viết 16:11 ngày 01/10/2018
  1. (x > y) == true
  2. Cái này thì chịu
  3. nope
  4. puts(“hel”+“lo”);
  5. XL = null
  6. XL = null

Thực sự mình không hiểu gì về C cho lắm đâu nha

Pham Van Hai viết 16:19 ngày 01/10/2018

Sao bạn ko code thử và chạy để xem kết quả?

Hung viết 16:24 ngày 01/10/2018

Do không biết code và compile.

Florastamine viết 16:20 ngày 01/10/2018

  1. Viết int x = 017; là viết dưới dạng octal (tương tự như hex bắt đầu bằng 0x). 017 octal bằng bao nhiêu trong decimal rồi so với 12 nhen.
  2. Đúng
  3. Compile được, nhưng in ra giá trị max (range overflow). Cái đầu thì vẫn in ra -1 vì char mặc định là signed char nếu không có modifier.
  4. puts("hel""lo"); đúng, khi compile code thì preprocessor sẽ nối các literal tokens lại, "a""b" = "ab". Cái đầu sai vì trong C không có class -> không có std::string -> không có operator+().
  5. XL = 4, giá trị của nó sẽ được +1 sau giá trị của enum gần nhất được đánh số.
  6. XL = -2

Lần sau bạn nên tự compile code để test nhen, không lại bị chọc khổ lắm

rogp10 viết 16:14 ngày 01/10/2018

Bổ sung: “hel” + “lo” thực chất là cộng con trỏ với con trỏ -> ko có phép tính này

Aragami1408 viết 16:13 ngày 01/10/2018

Không phải đâu! Vì máy không đủ dung lượng để cài code::blocks và mingw đâu. Ngoài ra ngôn ngữ lập trình vỡ lòng của mình là c++ cơ.
P/s: Ít dùng C/C++ toàn dùng C# / Java / Python hoy

HK boy viết 16:14 ngày 01/10/2018

Vì máy không đủ dung lượng để cài code::blocks và mingw đâu. Ngoài ra ngôn ngữ lập trình vỡ lòng của mình là c++ cơ.

Thời đại này có IDE online cơ mà. ideone, wandbox

Aragami1408 viết 16:09 ngày 01/10/2018

Trời má!!! Thế mà không biết!!! Cảm ơn lời góp ý của TQ Boy nha

*grab popcorn* viết 16:20 ngày 01/10/2018

6 posts were merged into an existing topic: Topic chứa các reply được cho là off-topic - version 2

Hung viết 16:09 ngày 01/10/2018

Thời đại online compiler lâu rồi.

Thời đại bây giờ là IDE trên Cloud.

Cloud9 IDE

Amazon Web Services, Inc.

AWS Cloud9 Amazon Web Services

AWS Cloud9 is a cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a browser.

Eclipse CHE
https://www.eclipse.org/che/

Bài liên quan
0