Tags:

มีโจทย์ว่าให้เรากรอกจำนวนข้อมูลที่จะใส่ แล้วใส่ค่าข้อมูลตามที่เรากรอก
แต่ปัญหาคือตัวข้อมูลที่เรากรอกนั้น ไม่ให้กด enter ให้กรอกข้อมูลยาวเลย
โดยใช้ spacebar ในการคั้นข้อมูลแต่ละตัว
ตัวอย่างครับ
จำนวนข้อมูล :3
ค่าข้อมูล :10 35 65
จำนวนข้อมูล :8
ค่าข้อมูล :1 2 3 4 5 6 7 8
เสร็จแล้วก็เอาค่าต่างๆไปคำนวณ
ไม่ทราบว่าจะรับค่าแบบนี้ใช้ scanf(); ได้มั้ย หรือต้องใช้อย่างอื่นครับ
ขอบคุณครับ

Get latest news from Blognone
By: nat3738
ContributorAndroidRed HatUbuntu
on 29 July 2014 - 17:48 #726258

ทำไมไม่ลองดูล่ะครับ?

By: crayon
AndroidRed HatUbuntuWindows
on 29 July 2014 - 21:46 #726345 Reply to:726258

ลองดูแล้ว หาอ่านตามที่ต่างๆแล้ว มันยังไม่ใช่อย่างที่ต้องการครับ

By: kswisit
ContributoriPhoneAndroidIn Love
on 29 July 2014 - 18:01 #726270

getc(); หรือ getch(); จำไม่ได้แล้ว - -a


^
^
that's just my two cents.

By: crayon
AndroidRed HatUbuntuWindows
on 29 July 2014 - 21:48 #726348 Reply to:726270

จะลองหาข้อมูลดูครับ
ขอบคุณครับ

By: osmiumwo1f
ContributorWindows PhoneWindows
on 29 July 2014 - 23:37 #726382 Reply to:726270
osmiumwo1f's picture

getch() มันรับแค่ตัวอักษรเดียวนะครับ

By: Ginosty
AndroidWindows
on 29 July 2014 - 23:51 #726386

ไม่ทราบว่าจะรับค่าแบบนี้ใช้ scanf(); ได้มั้ย

ได้ครับ
จุดประสงค์ของโจทย์คือต้องการให้ฝึกการจัดการ String หรือฝึก while loop ครับ
ต้องเขียนโปรแกรมต่อนิดนึง

By: crayon
AndroidRed HatUbuntuWindows
on 30 July 2014 - 11:42 #726524

include "stdio.h"

main(void){
int a,b[100];
printf("จำนวนข้อมูล:");
scanf("%d",&a);
for(int i=0;i<a;i++){
printf("ค่าข้อมูล :");
scanf("%d",&b[i]);
}
}

โค๊ดที่ผมทดลองจะประมาณนี้ครับ แต่ถ้าใช้ scanf มันจะต้องกด enter
แต่ถ้าใช้วิธี scanf("%d %d %d %d %d",&b[0] &b[1] &b[2] &b[3] &b[4]);
ก็ไม่รู้อยู่ดีว่า จำนวนข้อมูลที่กรอกข้างบนเท่าไหร่ จะต้องใส่ใน scanf เท่าไหร่อยู่ดีครับ

By: mix5003
AndroidUbuntuWindows
on 30 July 2014 - 15:00 #726576 Reply to:726524

scanf ไม่จำเป็นต้องกด enter นะครับ
เท่าที่เห็น code เกือบถูกแล้วครับ แต่ต้องย้าย printf ใน loop ออกนอก loop ครับ

แล้วลองเพิ่มอีก loop สั่ง print ค่าใน array ดูครับ

By: McKay
ContributorAndroidWindowsIn Love
on 30 July 2014 - 15:05 #726577 Reply to:726576
McKay's picture

+1


Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)

By: crayon
AndroidRed HatUbuntuWindows
on 31 July 2014 - 00:34 #726831 Reply to:726576

ขอบคุณครับ เดี๋ยวพรุ่งนี้จะลองดูครับ