پروقراملار ثابیت میقدارلار ایله چوخ یئیین و دوزگون ایشلهییرلر. آنجاق میقدارین نه اولدوغو بعضی واقتلار بللی دئییل.
گلین میقدارلاری، ایشلهییجی (کاربر) ایله اینپوتدان وئریلن زادلار فرض ائدک. فایل و اینترنتدن ده بو میقدار اوخونا بیلر. ایندی بو میقداری ساخلاماق و ذخیره ائتمک اوچون، محفظه و قاب تکین بیر زاد احتیاجدیر. پروقراملاما موحیطینده بو قابلارا موتغیر آدی وئریبلر و دانیشدیغیمیز موتغیرلر، بللی اولمویان و دگیشیله بیلن اولا بیلرلر.
C دیلی چوخ متنوع موتغیرلر ایله چالیشماغا گؤره، موتغیرلرین هانکی نوعدان اولدوقلارینی اؤنجهدن تعریف ائتمهلیسینیز.
C دیلیندهکی موتغیرلرین نوعلاری، توتدوقلاری میقدارین نه نوعدان اولدوغونا باغلیدیر.
مثلا اینتیجر و صحیح موتغیرلر یالنیز صحیح میقدار توتا بیلرلر و اعشاریلر ایسه اعشاری و کسری میقدار. بو دا چوخ طبیعی و آیدیندیر. فیل نئجه بیر حیوان اولسا و میلچک بیر حشره، ائله بو ترتیب ایله ده 3.14 عددی ده اعشاری موتغیرده تعریف اولا بیلر و "l" ایسترینگی ده کاراکتر تکین.
کاراکتر موتغیرلر، 'x' تکین یالنیز بیر حرفی توتا بیلرلر. C دیلینده ایسترینگ موتغیری یوخدور، بونا گؤره ده کاراکترلردن دوزلمیش دوٚزن (array) ایله بو ایش یاپیلیر. گلهجکده بونا گؤره صؤحبت ائدهجهییک.
Int ، float و char هامیسی آچار-سؤز ساییلیرلار.
آیری آرتیق آچار-سؤزلر ده موتغیرلری تعریف ائتمک اوچون وار. مثلا double ، long ، short ، signed و unsigned تکین. C دیلینده بوتون آچار-سؤزلر بونلاردیرلار.
ایندی گلین آشاغیداکی کودا باخاق:
#include <stdio.h>
int main ()
{
int age;
age = 30;
printf ("The C language is over %d years old!\n",age);
return (0);
}
بو کودون ۴-جو لاینیندا صحیح (integer) بیر موتغیر تعریف اولور.
موتغیر اوچون تعیین ائتدیگیمیز آد، تک اولمالیدیر، یعنی آیری موتغیری بو آد ایله تعریف ائتمک اولماز.
بو آد حتما گرک بیر حرف یوخسا underline و underscore ایله باشلایاراق، کاراکترلردن، عددلردن و بعضی سیمبوللاردان تشکیل اولا، مثلا ah12 تکین.
۵-جی سطرده بو موتغیر اوچون بیر میقدار ایختیصاص وئریلیر. بوتون دستورالعمللر (statement) سمی-کلون ایله قورتارمالیدیرلار.
بو دستورالعمل بیر جبری رابیطه تکین دئییل! بو اؤنملیدیر و لاپ بئله مثلا a = 30 یازیلسا دا، a موتغیرین میقدارینی 30 دئمیر، بلکه دئییر کی بوندان بئله، a موتغیری اوچون، 30 میقداری ایختیصاص وئریلسین!
البته بو مسئله یئنی پروقراملامایا باشلایانلار اوچون بیراز چتین اولا بیلر.
آشاغیداکی میثالدا بونو کامل آچیقلایاجاییق.
a = 5
b = 3
a = b
باخسانیز a موتغیری 5 توتموشوق. b موتغیری ده 3. آنجاق a = b دئمهیین نه آنلامی وار؟ a و b موتغیرلری 5 حساب ائدیریک یوخسا 3؟
بیز a = b دستورالعملیسینده، a موتغیرین یئرینه b موتغیری یوخ بلکه b موتغیرین میقدارینی ایختیصاص وئریریک.
یعنی a موتغیر اوچون، 3 میقداری ایختیصاص وئریریک. بو ترتیب ایله موحاسیبه ائتمکلری الگوریتم آدی ایله تانییریق.
۶-جی سطرده ایسه printf ایله بوراخیش صفحهده چاپ اولور.
میثالدا age موتغیر اوچون میقداری دگیشین و نئجه خروجینین عوض اولماسینی ایزلهیین.
#include <stdio.h>
int main ()
{
int age;
age = 30;
printf ("The C language is over %d years old!\n",age);
age = 50;
return (0);
}
printf فانکشندن سونرا آیری statement یازمیشیق.
آنجاق خروجیده گئنه ده بیر زاد عوض اولمایاجاق.
یعنی بوراخیشدا بو چاپ اولاجاق:
The C language is over 30 years old!
عیلّت ده بودور کی C پروقراملاما دیلینده و البته چوخلو دیللرده، پروقرامین سطرلری اوٚستدن آشاغییا بیر-بیر ایجرا اولورلار. بو الگوریتمین خاصیتی کامپایلره دئییر کی اؤنجه اوٚستدهکی سطر و سونرا آشاغیداکی سطرلری ترتیب ایله نظرده آلسین.
#include <stdio.h>
int main ()
{
int age;
age = 30;
printf ("The C language is over %d years old!\n",age);
age = 50;
printf ("The C language is over %d years old!\n",age);
return (0);
}
بو یول خروجیده بو چاپ اولاجاق:
The C language is over 30 years old!
The C language is over 50 years old!
کاراکتر موتغیری char ایله تعریف اولونور:
#include <stdio.h>
int main ()
{
char x,y,z;
x = 'A';
y = x + 1;
z = 'C';
printf ("It's easy as %c%c%c\n",x,y,z);
return (0);
}
خروجی بو اولاجاق! It's easy as ABC
سیزجه نهدن بئله اولدو؟ ائله بیل y موتغیری B حساب ائدیب! یعنی A + 1 = B حساب اولا بیلرمی؟
A بیر تک-کاراکتر اولاراق، جدولده اوندان سونراکی کاراکتر، B کاراکتریدیر. بونا گؤره ده A + 1 یازدیغیمیز رابیطهده حساب اولان کاراکتر، B اولور.
داها دوغروسو، بو تک-کاراکترین اؤزللیگی ساییلیر و اونو ایسترینگدن آیری ائدیر. بوتون کاراکترلرین ASCII جدولینده یئرلری وار و هر یئرین ایسه بیر شومارهسی وار. ایندیلیک بونو بیلین و گلهجکده بونا گؤره داها گئنیش صؤحبت ائدهجهییک.
ایندی float (اعشاری) موتغیر اوچون بیراز صؤحبت ائدک.
اعشاری موتغیر، چوخ چوخ بالاجا عددلردن چوخ چوخ بؤیوک عددلرهجن میقدار توتا بیلرلر.
#include <stdio.h>
int main ()
{
float pi;
pi = 22.0/7.0;
printf ("The ancients calculated PI is %f\n",pi);
return (0);
}
22 و 7 عددلره مومیّز یازماساق، 22/7 رابیطهنین نتیجهسی صحیح توتولاجاق و 3.142857 یئرینه 3.000000 چاپ اولاجاق.
لاپ آزی بو عددلردن بیری گرک مومیّز ایله یازیلا. مثلا 22.0/7 و 22/7.0 و 22.0/7.0 رابیطهلرین هامیسینین نتیجهسی اعشاری چاپ اولاجاق. البته کسرین صورت و مخرجی موتغییر یازیلسا، داها .0 یازماق لازیم دئییل.
pi اوچون 22/7 رابیطهسی ده مدرن حسابلاماق اوچون چوخ دقیق دئییل و یالنیز قدیم چاغلاردا ایستیفاده اولونوردی.
قاباقکی printf فانکشنی اوچون، مومیّزدن قاباق و سونراکی معنالی اعدادی دا تعیین ائتمک اولار.
placeholder آچاری %f ایدی. % و f آراسیندا بیر عدد یازماق ایله بونو باجارا بیلریک. بو عدد'دهکی مومیّزدن قاباق قیسمتده، اعشاری عددین سوْل بولومونون تعداد رقمی تعیین اولور و مومیّزدن سونراکی قیسمتی ده اعشاری عددین ساغ ألدهکی قیسمتینه.
آشاغیداکی میثالدا داها راحات گؤرونور:
#include <stdio.h>
int main ()
{
printf ("%2.3f",3.142857);
return (0);
}
خروجیده 3.14 چاپ اولاجاق و البته ترمینالدا ساغ ألدن ده بیر کاراکترجه فاصیله ایله.
%1.9f یازسایدیق، ترمینالدا 8 کاراکتر فاصیله ایله 3.1 چاپ اولاجایدی.