AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« เมื่อ: 23 เมษายน 2012, 20:55:44 » |
|
คือ ผมกดรันโปรแกรมแล้วป้อนตัวเลขตรงความสูง พอกดเอ็นเตอร์ มันกลับแสดงผลเป็นตัวเลขอื่นทีผมไม่ได้ป้อนครับ นี้ตัวโค๊ดครับ รบกวนหน่อยนะครับ คือพอรันโปรแกรมแล้วป้อนข้อมูลตรง ความสูงไปกลับ ได้ตัวเลขที่แสดงผลไม่เหมือนกับที่ป้อนใส่ครับ นี้โค๊ดครับ
#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); }
รบกวนช่วยแนะนำอีกครั้งนะครับ
|
|
« แก้ไขครั้งสุดท้าย: 24 เมษายน 2012, 18:09:15 โดย AngsanaNew »
|
บันทึกการเข้า
|
|
|
|
adidog
หัวหน้าแก๊งเสียว
พลังน้ำใจ: 238
ออฟไลน์
กระทู้: 1,859
|
 |
« ตอบ #1 เมื่อ: 23 เมษายน 2012, 20:57:54 » |
|
ลองแบบนี้ครับ
#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); }
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #2 เมื่อ: 23 เมษายน 2012, 21:06:33 » |
|
ขอบคุณมากครับ ซึ้งในพระคุณจริงๆ แต่เส้นผมบังภูเขาจริงๆเลย แค่เอา & ตรงคำสั่ง printf ออกเอง ขอบคุณจริงๆครับ
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #3 เมื่อ: 24 เมษายน 2012, 18:09:59 » |
|
รบกวนเพื่อนๆอีกครั้งนะครับ ไม่อยากตั้งกระทู้เปลืองใหม่ๆเปลืองเนื้อที่เปล่าๆครับ อั้นนี้ผมลองอ่านทบทวนในตำราหลายรอบแล้วครับแต่ก็ยังแก้ไม่ได้ โจทย์ที่ผมได้มาคือ ให้เขียนโปรแกรมรับข้้อมูลจำนวนจริงจากผู้ใช้ 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); } ขอคำแนะนำอีกครั้งด้วยครับ
|
|
« แก้ไขครั้งสุดท้าย: 24 เมษายน 2012, 18:10:21 โดย AngsanaNew »
|
บันทึกการเข้า
|
|
|
|
adidog
หัวหน้าแก๊งเสียว
พลังน้ำใจ: 238
ออฟไลน์
กระทู้: 1,859
|
 |
« ตอบ #4 เมื่อ: 24 เมษายน 2012, 18:35:31 » |
|
ไม่รู้น่ะ แต่ผมคิดง่ายๆคือ ใช้การปัดขึ้นหรือปัดลงเอาอ่ะครับ แล้วเอามาเทียบกับค่าเดิม หรือจะใช้การ cast (ไม่แน่ใจว่าเรียกถูกหรือเปล่า ลืมไปหมดแล้ว)เพื่อแปลงให้เป็น int เอามาเทียบก็จะได้ส่วนต่าง ผมใบ้แค่นี้แหละ 
|
|
|
บันทึกการเข้า
|
|
|
|
bankker6480
สมุนแก๊งเสียว
พลังน้ำใจ: 162
ออฟไลน์
กระทู้: 710
|
 |
« ตอบ #5 เมื่อ: 24 เมษายน 2012, 18:36:09 » |
|
อันนี้ Blog ผมน่ะ เป็นตัวอย่างโค้ดที่เรียนมา http://codeblock-tu.blogspot.com/  ลองพยายามเขียนเองก่อนนะครับ ฝึกแก้ปัญหา ยิ่งเรียน ยิ่งยากครับ สู้ๆ
|
|
|
บันทึกการเข้า
|
|
|
|
bankker6480
สมุนแก๊งเสียว
พลังน้ำใจ: 162
ออฟไลน์
กระทู้: 710
|
 |
« ตอบ #6 เมื่อ: 24 เมษายน 2012, 19:24:58 » |
|
#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
|
|
« แก้ไขครั้งสุดท้าย: 24 เมษายน 2012, 19:29:02 โดย bankker6480 »
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #7 เมื่อ: 24 เมษายน 2012, 20:43:55 » |
|
ขอบคุณทุกๆท่านๆครับ ขอบคุณมากๆเลย
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #8 เมื่อ: 24 เมษายน 2012, 20:46:42 » |
|
ยังไม่สอนเลยครับ ผมสนใจเลยโหลดe-book มาอ่านครับ ทำแบบฝึกหัดท้ายบทไม่ได้ ลองอ่านในหนังสือหลายรอบแล้วจริงๆครับไม่ได้ ขอบคุณจริงๆครับ
|
|
|
บันทึกการเข้า
|
|
|
|
bankker6480
สมุนแก๊งเสียว
พลังน้ำใจ: 162
ออฟไลน์
กระทู้: 710
|
 |
« ตอบ #9 เมื่อ: 24 เมษายน 2012, 20:52:33 » |
|
จะเรียนวิทยาการคอม หรือ พวกโปรแกรมเมอรืหรอครับ
|
|
|
บันทึกการเข้า
|
|
|
|
bankker6480
สมุนแก๊งเสียว
พลังน้ำใจ: 162
ออฟไลน์
กระทู้: 710
|
 |
« ตอบ #10 เมื่อ: 24 เมษายน 2012, 20:57:45 » |
|
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #11 เมื่อ: 24 เมษายน 2012, 21:05:44 » |
|
ส่วนตัวอยากเรียน วิทยาการคอมครับ พอแนะนำหนังสือให้ได้ไหมครับ แบบเริ่มต้นไม่รู้อะไรเลย
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #12 เมื่อ: 24 เมษายน 2012, 21:06:28 » |
|
|
|
|
บันทึกการเข้า
|
|
|
|
onlined
ก๊วนเสียว
พลังน้ำใจ: 22
ออฟไลน์
กระทู้: 411
|
 |
« ตอบ #13 เมื่อ: 24 เมษายน 2012, 21:12:12 » |
|
อยากรู้ด้วยคน
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #14 เมื่อ: 24 เมษายน 2012, 21:32:08 » |
|
งันเดียวผมลองศึกษาในบล็อกของคุณก่อนดีกว่าครับ ขอบคุณที่แบ่งปันครับ
|
|
|
บันทึกการเข้า
|
|
|
|
bankker6480
สมุนแก๊งเสียว
พลังน้ำใจ: 162
ออฟไลน์
กระทู้: 710
|
 |
« ตอบ #15 เมื่อ: 24 เมษายน 2012, 21:45:08 » |
|
ลองดูครับ http://www.programming.in.th/  หนังสือเนี่ยต้องดูโจทย์ในหนังสืออ่ะครับว่ายากง่ายระดับไหน เล่มปกสีเหลือง ที่เขียน C+JAVA นี่ก็ดีนะครับ ถ้าทำ Assignment ใน BLOG ผมได้ก็สุดยอดแล้วครับ ลองดู
|
|
|
บันทึกการเข้า
|
|
|
|
AngsanaNew
Newbie
พลังน้ำใจ: 2
ออฟไลน์
กระทู้: 28
|
 |
« ตอบ #16 เมื่อ: 24 เมษายน 2012, 21:47:19 » |
|
โอ้ ขอบคุณมากๆครับ
|
|
|
บันทึกการเข้า
|
|
|
|
|