Results 1 to 9 of 9

Thread: ใครก็ได้ช่วยตอบปัญหาเรื่องโค้ดภาษา c ที

  1. #1
    Junior Member
    Join Date
    Jun 2009
    Posts
    3


    คืออย่างนี้ครับผมเขียนโค้ดโปรแกรมแปลงปี พ.ศ.เป็นปี ค.ศ. ดังตัวอย่างครับ
    ---------------------------------------------------------------------
    #include <stdio.h> //B.E. คือ พ.ศ.

    void main() //C.E. คือ ค.ศ.
    {
    int BE;
    int CE;

    printf("Enter B.E.(Buddhist Era) : ");
    scanf("%d\n", &BE);

    CE = BE - 543;

    printf("C.E.(Christain Era) is %d\n");
    }
    ---------------------------------------------------------------------
    เจอปัญญหาที่ว่า
    เมื่อรันโปรแกรมออกมา
    แล้วใส่ ปี พ.ศ. เข้าไปแล้วEnter
    มันกลับไม่แปลงปี ค.ศ. ออกมาให้
    แต่กลับเป็น ให้พิมพ์ บรรทัดให้ม่ออกไปเรื่อย ๆ
    เป็นเพราะอะไรครับ?

    (ผมเป็นมือใหม่หัดเขียนนะครับ)


    ขอบคุณที่แนะนำครับ

  2. #2
    Junior Member
    Join Date
    Apr 2009
    Posts
    12


    [hide=1][code]#include <stdio.h>
    void main()
    {

  3. #3


    scanf("%d\n", &BE);

    ต้องมี \n ด้วยเหรอ ครับ ...ผมก็ไม่ค่อยได้ใช้นานแล้ว <_<

    printf("C.E.(Christain Era) is %d\n");

    แล้วไม่เอาค่าของ CE มาแสดงผมเหรอครับ

    is %d\n",CE); อ่ะ

  4. #4
    Administrator asylu3's Avatar
    Join Date
    Jun 2000
    Location
    Thailand
    Posts
    3,557


    plz use code systax <code></code> to improve readability

    Note: change < to [, > to ]

  5. #5
    Junior Member spiritmts's Avatar
    Join Date
    Dec 2008
    Location
    Rama 2 Bangkok
    Posts
    26


    Thumbs down

    #include <stdio.h> //B.E. คือ พ.ศ.
    /*1.*/#include<conio.h>

    void main() //C.E. คือ ค.ศ. //2.เอา void ออกครับ แก้เป็น >> main()
    {
    int BE;
    int CE;

    printf("Enter B.E.(Buddhist Era) : ");
    scanf("%d\n", &BE);//ตรงนี้เอา \n ออกนะครับ เป็น >> scanf("%d",&BE);

    CE = BE - 543;

    printf("C.E.(Christain Era) is %d\n");//ตรงนี้ลองแก้เป็น >> printf("C.E.(Christain Era) is %d\n",CE);
    /*3.*/getch();
    }

    พิมพ์ให้ใหม่ก็ตามนี้เลยครับ ก็อปไป Compile ดูครับ

    #include<stdio.h>
    #include<conio.h>
    main()
    {
    int BE,CE;
    printf("Enter B.E.(Buddhist Era) : ");
    scanf("%d",&BE);
    CE=BE-543;
    printf("C.E.(Christain Era) is %d\n",CE);
    getch();
    }


    ปล.ใช้โปรแกรมไรเขียนอ่ะครับ ถ้า Dev C ก็ใส่ 3ข้อที่ผมใส่เพิ่มไปด้วยนะครับ
    สอบถามได้คับ msn:spiritmts@gmail.com
    [SIZE=2][b]<span style="color:#999999">[url="http://www.comsci-ning.com"]\\-[Computer Science - Suandusit Rajabhat University]-//[/url][/b]</span></span>
    [url="http://www.spiritinfo.co.cc"]<span style="color:#999999">www.spiritinfo.co.cc[/SIZE][/url]
    [url="http://pic.citec.us/out.php/i12303_cooltext408864543.gif"][img]http://pic.citec.us/out.php/t12303_cooltext408864543.gif[/img][/url]

  6. #6
    Junior Member
    Join Date
    Mar 2008
    Posts
    11


    ก็คุณเล่นสั่ง printf ออกมาเฉยๆไม่ได้ ชี้ว่า %d ของคุณคือตัวอะไรอ่ะคับ ง่ายๆก็แค่เอาตัวแปลมาใส่เพิ่มก็จบแล้วคับ

    เรื่องเล็กๆน้อยๆอย่างงี๊แหละปัญหาใหญ่ เพราะเราชอบมองข้าม (ผมเป็นบ่อยคับ ฮาๆๆๆ)
    ====================================================================

    ความรู้ไม่ได้อยู่ที่ห้องเรียน มันอยู่รอบๆตัวคุณทั้ง ลม น้ำ อากาศและเพื่อนของคุณ

    มาแบ่งปันความรู้กัน

    ====================================================================

  7. #7
    Junior Member
    Join Date
    Jun 2009
    Posts
    4


    #include <stdio.h> //B.E. &curren;&times;&Iacute; &frac34;.&Egrave;.
    #include <conio.h>

    void main() //C.E. &curren;&times;&Iacute; &curren;.&Egrave;.
    {

    int BE=0;
    int CE=0;
    printf("Enter B.E.(Buddhist Era) : ");
    scanf("%d",&BE);
    CE=BE-543;
    printf("C.E.(Christain Era) is %d",CE);
    หรือ printf("C.E.(Christain Era) is %d",BE-543); /*ให้มันบวกตรงนี้เลยก็ได้ครับ*/
    getch();
    }

    ใส่ตัวแปร ที่ต้องการแสดงด้วยครับ

  8. #8


    ลองกันอีกแบบไหมครับ หาทางที่เขียนโปรแกรมทำงานแบบเดียวกันนี้ให้ใช้บรรทัดน้อยที่สุดครับ

  9. #9
    Junior Member
    Join Date
    Mar 2010
    Posts
    1


    #include <stdio.h>
    main() {
    int BE;
    printf("Enter B.E.(Buddhist Era) : ");
    scanf("%d",&BE);
    printf("\nC.E.(Christain Era) is %d",BE-543);
    }
    เขียนแค่นี้ก็น่าจะพอแล้วน่ะครับ เพราะแค่รับค่า พ.ศ. แล้วแสดงค่าเป็น ค.ศ. (เอาค่าที่ Input มาลบเท่านั้นเอง)
    Ps. 1. #include<conio.h> ไม่ต้อง include เพราะโปรแกรมนี้แค่รับค่าแสดงค่าอย่างเดียว
    2. ประกาศตัวแปรตัวเดียวก็พอแล้วครับ เพราะไม่ได้มีการนำค่า ค.ศ. ไปคำนวณอะไรต่อ แค่เอามาแสดงผลเฉยๆ
    เลยเอามาลบแล้ว output ออกมาได้เลย
    3. getch(); >>> จะใส่หรือไม่ใส่ก็ได้ยังไงผลลัพธ์ก็ถูกอยู่ดี ที่ใส่ก็เพื่อเป็นการให้หน้าจอแสดงผลลัพธ์ค้างไว้
    เพราะคอมฯ จะรอการป้อนคำสั่งทำให้โปรแกรมหยุดแสดง Output ค้างไว้

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •