วันอังคารที่ 14 กรกฎาคม พ.ศ. 2552

แบบฝึกหัด

1. ให้นักศึกษากำหนดค่าของ Array 1 มิติ และ Array 2 มิติ
- Array 1 มิติ
ตัวอย่างเช่น กำหนดค่า char name[20] เราก็จะป้อนตัวตัวอักษรได้ไม่เกิน 20 ตัว
#include “stdio.h”
main()
{
char name[20];
printf(“Bookname\n”);
scanf(“%s”,&name);
printf(“Bookname is %s”);
}
- Array 2 มิติ
ถ้าเราประกาศ int b[][]=new int[5][5];ก็หมายถึง สมมติสร้างกล่องใหญ่ๆ มา 5 กล่อง และใน
กล่องใหญ่ๆ 5กล่องนั้น ก็มี อีก 5กล่องเล็ก อยู่ข้างใน { สรุปว่ามีกล่องเล็กทั้งหมด 25 กล่อง } ดังนี้

b[0][0] b[0][1] b[0][2] b[0][3] b[0][4]
b[1][0] b[1][1] b[1][2] b[1][3] b[1][4]
b[2][0] b[2][1] b[2][2] b[2][3] b[2][4]
b[3][0] b[3][1] b[3][2] b[3][3] b[3][4]
b[4][0] b[4][1] b[4][2] b[4][3] b[4][4]

ถ้าพูดถึง b[2][1] จะหมายถึงข้อมูลที่อยู่ในกล่องใหญ่ใบที่ 2 กล่องเล็กใบที่ 1 เป็นต้น

2. ให้นักศึกษาหาค่าของ A[2],A[6]จากค่า A={2,8,16,24,9,7,3,8}
ค่าของ A[2]=16
ค่าของ A[6]=3

3. จากค่าของ int a[2][3]={{6,5,4},{3,2,1}}; ให้นักศึกษาหาค่าของ a[1][0] และ a[0][2]
ค่าของ a[1][0]=3
ค่าของ a[0][2]=4

4. ให้นักศึกษากำหนด structure ที่มีค่าของข้อมูลอย่างน้อย 6 Records
ตัวอย่าง Structure เป็นการขอข้อมูลลูกค้าของร้านขายหนังสือแห่งหนึ่ง
#include"stdio.h"
struct book
{
char name[20];
int id;
char bookname[20];
int date;
int month;
int year;
float price;
}
book;
void input_data()
{
printf("Custommer in rent of book\n");
printf("Name: ");
scanf("%s",&book.name);
printf("ID: ");
scanf("%d",&book.id);
printf("Bookname: ");
scanf("%s",&book.bookname);
printf("Date: ");
scanf("%d",&book.date);
printf("Month: ");
scanf("%d",&book.month);
printf("Year: ");
scanf("%d",&book.year);
printf("Price: ");
scanf("%f",&book.price);
}
void show_data()
{
printf("\n\nDate your is \n");
printf("Name: ");
printf("%s\n",book.name);
printf("ID: ");
printf("%d\n",book.id);
printf("Bookname: ");
printf("%s\n",book.bookname);
printf("Date-month-year : %d-%d-%d\n",book.date,book.month,book.year);
printf("Price: ");
printf("%0.2f\n",book.price);
}
main()
{
input_data();
show_data();
}

5. ให้นักศึกษาบอกความแตกต่างของการกำหนดตัวชนิด Array กับตัวแปร Pointer ในสภาพของการกำหนดที่อยู่ของข้อมูล
ตัวแปร Array คือ ตัวแปรเป็นชุดตารางใช้เก็บค่าต่างๆที่เป็นชนิดเดียวกัน ส่วนตัวแปร Pointer หรือ ตัวชี้ จะเป็นตัวแปรที่เก็บตำแหน่ง Address เท่านั้น ตัวแปรแบบ pointer แตกต่างจากตัวแปรในตัวอย่างข้างบน เพราะสิ่งที่ pointer เก็บคือเลขตำแหน่งหน่วยความจำ ซึ่งโดยปรกติแล้ว จะเป็นเลขตำแหน่งของตัวแปร หรือเลขตำแหน่งของสมาชิกของคลาสหรือ struct

ไม่มีความคิดเห็น:

แสดงความคิดเห็น