آموزش برنامه نویسی به زبان c
آرایه ها و رشته ها
مجموعه ای از عناصر همنوع را آرایه می گویند.همانطور که متغیر های معمولی نامگذاری می شدند ؛ آرایه ها نیز نامگذاری می شوند.برای دسترسی به عناصر آرایه از متغیری به نام اندیس استفاده می کنیم.(متغیر اندیس دار همان آرایه ست)
خوب است که در این مبحث بدانیم:
1.در آرایه یک بعدی که همان لیست می باشد(نام دیگرش) می توانیم برای دسترسی به سایر عناصر آرایه از اندیس استفاده کنیم.
2.نوع آرایه یکی از انواع قابل قبول در C است.
3.نام آرایه نیز برای دسترسی به عناصر آرایه مورد استفاده قرار می گیرد.
4.طول آرایه را با یک عدد صحیح مثبت مشخص می کنیم.
5.اندیس آرایه ها در C از صفر شروع می شود.
6.میزان حافظه ای که به آرایه اختصاص داده می شود،به این شکل استفاده می شود:
طول ارایه ضرب در (طول نوع آرایه)=میزان حافظه آرایه (برحسب بایت)
آرایه ی یک بعدی را به این صورت نشان می دهیم:
[طول آرایه] نام آرایه نوع آرایه
مرتب سازی آرایه ها
از مرتب سازی ، می توانیم به عنوان یک امر مهم در برنامه نویسی یاد کنیم.مرتب سازی را می توانیم به دو شکل داشته باشیم.
1.مرتب سازی صعودی(از کوچک به بزرگ)
x [0] < x [1] < x [2] < x [3] < … < x [n]
2.مرتب سازی نزولی(از بزرگ به کوچک)
x [0] > x [1] > x [2] > x [3] > … > x [n]
جستجو در آرایه
یکی از اعمالی که در یک سیستم مورد استفاده قرار می گیرد ، جستجو کردن است.مثل جستجوی نام فردی در سیستم دفترچه ی تلفن.
در آرایه ها ی نا مرتب از جستجوی ترتیبی و در آرایه های مرتب از جستجوی دودویی استفاده می کنیم.
جستجوی ترتیبی برای آرایه های نامرتب
در این روش عنصر مورد جستجو ، با هر یک از عناصر آرایه مقایسه می شود.چنانچه با هم برابر بودند ؛ جستجو به پایان می رسد و در غیر اینصورت ، عمل مقایسه با عنصر بعدی آرایه صورت می گیرد.این روند تا یافتن عنصر مورد نظر و یا جستجوی تمامی آرایه ادامه پیدا می کند.و اگر در آرایه عنصر مورد نظر یافت شد می گوییم که :جستجو موفق است.
جستجوی دودویی برای آرایه های مرتب(BINARY)
در این روش عنصر موردنظر با عنصر وسط آرایه مقایسه می شود.اگر برابر بود،جستجو خاتمه می یابد.اگر عنصر مورد جستجو از عنصر وسط بزرگتر یا کوچکتر بود ، آرایه به دو بخش تقسیم می شود:
1.بخشی که عناصر آن بزرگتر از عنصر مورد جستجو هستند.
2.بخشی که عناصر آن کوچکتر از عناصر مورد جستجو هستند.
اگر عنصر مورد جستجو از عنصر وسط بزرگتر بود ، جستجو در بخش بالایی آرایه انجام می گیرد.در غیر اینصورت در بخش پایینی آرایه.و این روند تا زمانی ادامه می یابدکه عنصر مورد نظر یافت شود یا کل عناصر آرایه جستجو گردد.
--------------------------------------------------------------------------------------------
پ.ن:
با پورش به علت تاخیر.
+ نوشته شده در سه شنبه دهم مرداد 1385ساعت 2:28 قبل از ظهر توسط زهره منوچهری | 32 نظر
پاسخ به سوالات
پاسخ به سوالات دوستان:
پاسخ به یک زبان آموز:
در بحث داده ها ، داده ها معمولا به چند دسته تقسیم می شدند : با استفاده از کلماتی مثل signed (با علامت)، unsigned (بدون علامت)، long و short می توان انواع جدیدی را ایجاد کرد.می توانیم این کلمات را با انواع int استفاده کرد.اما char را فقط با signed و unsignedبه کار می بریم؛ همچنین long همراه با double استفاده می شود.
پاسخ به خانم مریم:
برنامه ای که سه عدد صحیح را از ورودی خوانده ، و در خروجی میانگین آنها را نشان دهد.
#include<conio.h>
#include<stdio.h>
int main()
{
int x,y,z;
float ave;
clrscr();
printf("Enter three integers:");
scanf(%d%d%d,&x,&y,&z);
ave=(float)(x+y+z)/3;
printf("\nave=%6.2f",ave);
getch();
return 0;
}
پاسخ به آقای پرهام :
انتقال کنترل غیر شرطی_دستور goto
این دستور سبب انتقال کنترل از نقطه ای به نقطه ی دیگر از برنامه می شود.
برای بیان الگوی استفاده از این دستور بهتر است که ابتدا در مورد لیبل یا برچسب اطلاعاتی داشته باشیم:
برچسب دستور ، مثل متغیر ها نامگذاری می شوند و به(:) ختم می شوند.مثلا:loop .در ضمن انتقال کنترل توسط این دستور فقط در داخل یک تابع امکان پذیر است.
الگوی استفاده از این دستور:
Goto <label>;
پاسخ به خانم زینب ایمان پور:
بله! اندیس حلقه ی تکرار در بحث ساختار تکرارfor همان شمارنده می باشد.