รบกวนหน่อยครับภาษา c ป้อนตัวเลขใส่โปรแกรมที่รัน แต่แสดงผลออกมาเป็นตัวอื่น รบกวนอ

เริ่มโดย AngsanaNew, 23 เมษายน 2012, 20:55:44

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

AngsanaNew

คือ ผมกดรันโปรแกรมแล้วป้อนตัวเลขตรงความสูง พอกดเอ็นเตอร์ มันกลับแสดงผลเป็นตัวเลขอื่นทีผมไม่ได้ป้อนครับ
นี้ตัวโค๊ดครับ
รบกวนหน่อยนะครับ คือพอรันโปรแกรมแล้วป้อนข้อมูลตรง ความสูงไปกลับ ได้ตัวเลขที่แสดงผลไม่เหมือนกับที่ป้อนใส่ครับ
นี้โค๊ดครับ

#include <stdio.h>
void main()
{
   char ame[0];
   int aee;
   printf ("Enter name :");
   scanf ("%s",ame);[/b]
   printf ("Enter height:");
   scanf ("%d",&aee);
   printf ("%s %d",ame,&aee);
}

ขอคำแนะนำด้วยครับ


รบกวนอีกครั้งนะครับ ไม่อยากตั้งกระทู้เปลืองใหม่ๆเปลืองเนื้อที่เปล่าๆครับ

อั้นนี้ผมลองอ่านทบทวนในตำราหลายรอบแล้วครับแต่ก็ยังแก้ไม่ได้ โจทย์ที่ผมได้มาคือ ให้เขียนโปรแกรมรับข้้อมูลจำนวนจริงจากผู้ใช้ 1 จำนวนและให้หาว่า เลขดังกล่าว อยู่ในช่วงของเลขจำนวนเต็มใดเช่น หากผู้ใช้ป้อนเลข 12.5 ให้ตอบว่า "12.5 is between 12 and 13 " (ใช้ตัวดำเนินการเปลี่ยนชนิดข้อมูลในการเขียนโปรแกรม) ผมลองเขียนดูได้โค๊ดตัวอย่างแบบข้างล่างแต่ก็ไม่ได้ครับ

#include<stdio.h>
void main()
{
   float a,b,c;
   b=c=(int)
   printf ("Enter numb");
   scanf ("%f,%f,%f",&a,&b,&c);
   printf ("%f is between %f and %f",a,b,c);
}

รบกวนช่วยแนะนำอีกครั้งนะครับ

   

adidog

ลองแบบนี้ครับ
อ้างถึงจาก: AngsanaNew ใน 23 เมษายน 2012, 20:55:44


#include <stdio.h>
void main()
{
   char ame[32];
   int aee;
   printf ("Enter name :");
   scanf ("%s",ame);[/b]
   printf ("Enter height:");
   scanf ("%d",&aee);
   printf ("%s %d",ame,aee);
}


Certain Dri [direct=http://www.ishiclub.com/]Certain Dri[/direct]
คุณแม่มือใหม่ [direct=http://www.mamyget.com/]คุณแม่มือใหม่[/direct]

AngsanaNew

ขอบคุณมากครับ ซึ้งในพระคุณจริงๆ แต่เส้นผมบังภูเขาจริงๆเลย แค่เอา & ตรงคำสั่ง printf ออกเอง ขอบคุณจริงๆครับ

AngsanaNew

รบกวนเพื่อนๆอีกครั้งนะครับ ไม่อยากตั้งกระทู้เปลืองใหม่ๆเปลืองเนื้อที่เปล่าๆครับ
อั้นนี้ผมลองอ่านทบทวนในตำราหลายรอบแล้วครับแต่ก็ยังแก้ไม่ได้ โจทย์ที่ผมได้มาคือ ให้เขียนโปรแกรมรับข้้อมูลจำนวนจริงจากผู้ใช้ 1 จำนวนและให้หาว่า เลขดังกล่าว อยู่ในช่วงของเลขจำนวนเต็มใดเช่น หากผู้ใช้ป้อนเลข 12.5 ให้ตอบว่า "12.5 is between 12 and 13 " (ใช้ตัวดำเนินการเปลี่ยนชนิดข้อมูลในการเขียนโปรแกรม) ผมลองเขียนดูได้โค๊ดตัวอย่างแบบข้างล่างแต่ก็ไม่ได้ครับ

#include<stdio.h>
void main()
{
   float a,b,c;
   b=c=(int)
   printf ("Enter numb");
   scanf ("%f,%f,%f",&a,&b,&c);
   printf ("%f is between %f and %f",a,b,c);
}
ขอคำแนะนำอีกครั้งด้วยครับ

adidog

ไม่รู้น่ะ แต่ผมคิดง่ายๆคือ ใช้การปัดขึ้นหรือปัดลงเอาอ่ะครับ แล้วเอามาเทียบกับค่าเดิม

หรือจะใช้การ cast (ไม่แน่ใจว่าเรียกถูกหรือเปล่า ลืมไปหมดแล้ว)เพื่อแปลงให้เป็น int

เอามาเทียบก็จะได้ส่วนต่าง ผมใบ้แค่นี้แหละ  :wanwan007: :wanwan007: :wanwan007:
Certain Dri [direct=http://www.ishiclub.com/]Certain Dri[/direct]
คุณแม่มือใหม่ [direct=http://www.mamyget.com/]คุณแม่มือใหม่[/direct]

bankker6480

อันนี้ Blog ผมน่ะ
เป็นตัวอย่างโค้ดที่เรียนมา

http://codeblock-tu.blogspot.com/

ลองพยายามเขียนเองก่อนนะครับ ฝึกแก้ปัญหา ยิ่งเรียน ยิ่งยากครับ สู้ๆ

bankker6480

#6
#include <stdio.h>
#include <math.h>
main() // ไม่ต้องมี void ก็ได้นะ
{
   float a,b,c;
   printf ("Enter number : ");
   scanf ("%f",&a);
   b = floor(a);
   c = ceil(a);
   printf ("%.2f is between %.2f and %.2f",a,b,c);
   getch();
}

ไม่รู้ว่าอาจารย์สอนถึงยังเรื่องนี้ ฟังก์ชัน math.h


AngsanaNew

ยังไม่สอนเลยครับ ผมสนใจเลยโหลดe-book มาอ่านครับ  ทำแบบฝึกหัดท้ายบทไม่ได้ ลองอ่านในหนังสือหลายรอบแล้วจริงๆครับไม่ได้  ขอบคุณจริงๆครับ

bankker6480



AngsanaNew

ส่วนตัวอยากเรียน วิทยาการคอมครับ  พอแนะนำหนังสือให้ได้ไหมครับ แบบเริ่มต้นไม่รู้อะไรเลย



AngsanaNew

อ้างถึงจาก: bankker6480 ใน 24 เมษายน 2012, 18:36:09
อันนี้ Blog ผมน่ะ
เป็นตัวอย่างโค้ดที่เรียนมา

http://codeblock-tu.blogspot.com/

ลองพยายามเขียนเองก่อนนะครับ ฝึกแก้ปัญหา ยิ่งเรียน ยิ่งยากครับ สู้ๆ

งันเดียวผมลองศึกษาในบล็อกของคุณก่อนดีกว่าครับ ขอบคุณที่แบ่งปันครับ

bankker6480

ลองดูครับ
http://www.programming.in.th/

หนังสือเนี่ยต้องดูโจทย์ในหนังสืออ่ะครับว่ายากง่ายระดับไหน เล่มปกสีเหลือง ที่เขียน C+JAVA นี่ก็ดีนะครับ

ถ้าทำ Assignment ใน BLOG ผมได้ก็สุดยอดแล้วครับ ลองดู