الدرس الثاني - المتغيرات والموصفات

السلام عليكم ورحمة الله وبركاته :

سنتكلم اليوم عن أنواع المتغيرات وما هي الموصفات

أنواع المتغيرات المعروفة لدى أغلب اللغات هي
integer
float
double
char
bool
هذه بعض أنواع المتغيرات الموجودة في لغة السي والتي سنستخدمها في مشوارنا مع هذه اللغة
اول نوع وهو integer ويعني عدد صحيح أي خالي من الفاصلة العشرية والكسور مثل 1
ثاني نوع float ويعني عدد عشري اي يوجد بداخله فاصلة عشرية مثل 1.5
ثالث نوع double ويعني عدد عشري ايضا ولكن تستطيع اعطاءه رقم أكبر من نوع السابق
رابع نوع char وهو اختصار لـشاركتر ويعني محرف ويتسع لإدخال حرف واحد فقط
خامس نوع bool وهو اختصار لـبوليان وتستطيع أن تخزن به قيمة منطقية مثل 1 او 0 و True أو false

طريقة تعريف المتغيرات في لغة السي هي كتابة نوع المتغير مثل ما هو ما عدا integer تكتبها int

لنكتب كود نعرف فيه المتغيرات ونطبعها

#include <stdio.h>
int main(){
    int x=0;
    float X=1,5;
    double y=1548,6364;
    char Y='d';
    bool z=1;
    printf("%d",x);
    printf("%f",X);
    printf("%f",y);
    printf("%c",Y);
    return 0;
}

بظنك استغربت من هذه الاشارات % ولكن لا تخف فهي سهلة وليست بالتعقيد الذي تظنه
%d , %f , %c هذه هي الموصفات وكل موصف يعني المتغير الذي تريد طباعته وهي تدل على نوع المتغير المطبوع الموجود
في الذاكرة

ولابد أنك لاحظت أن x غير X في لغة السي فهي لغة تفرق بين الأحرف الكبيرة والصغير

قراءة المتغيرات :

تعلمنا كيف نطبع المتغير باستخدام التابع printf الموجود في الملف الرأسي stdio.h والآن

سنتعلم كيف نقرأ المتغير باستخدام التابع scanf الموجود في الملف الرأسي stdio.h

لنأخذ هذا الكود :


#include <stdio.h>

int main(){

    char name[80];

    int age=0;

    printf("Enter your name : ");

    scanf("%c",&name);

    printf("Enter your age : ");

    scanf("%d",&age);

    printf("Your name : %c
",name);

    printf("Your age : %d
",age);

    return 0;

}

في السطر الأول عرفنا متغير name من نوع char (محرفي) ويتسع ل80 محرف
في السطر الثاني عرفنا متغير age من نوع integer (عددي صحيح) واعطيناه قيمة صفر
في السطر الثالث طبعنا عبارة إدخال الاسم
في السطر الرابع قرأنا متغير name باستخدام تابع scanf ولاحظو كيف وضعنا & قبل المتغير لكي ندل على مكانه بالذاكرة
ويسمى معامل المرجعيات وسنتحدث عنها لاحقا :slight_smile:
في السطر الخامس طبعنا عبارة اسمك ولاحظو كيف حددنا مكان المتغير بالجملة عن طريق الموصف %c ومن ثم حددنا المتغير name
في السطر السادس طبعنا عبارة عمرك ووضعنا مكان الموصف بعد : ومن ثم حددنا المتغير age لطباعته
وفي السطر الأخير اعادة قيمة عددية الى الدالة التي نتعامل معها main لاحظو كيف عرفناها بنوع integer
فـصفر هو قيمتها بعد الانتهاء من تنفيذها ولا تشغل بالك بها حتتعرف عليها عن قريب اكثر واكثر :slight_smile:

بقا شغلة وحدة ما شرحتها وهي
التي وضعتها بعد الموصف هذه تعني new line اي سطر جديد
فبعد طباعة المتغير تنزل سطر جديد وتسمى هذه سلسلة إفلات هكذا جاء تعريبها :slight_smile:
وهذه سلاسل الإفلات امامكم :
/t تترك ثلاثة فراغات
/n الإنتقال إلى سطر جديد
/r إعادة مؤشر الكتابة إلى بداية السطر
/a تقوم بإصدار صوت من سبيكر الخاص بالجهاز
/b باك سبيس :slight_smile: حذف
وهذه تعاملها معاملة سلسلة نصية أي تكتب ضمن " " ولا تستعمل /t و /n و /r مع scanf أو أي تابع قراءة آخر
لأن المستخدم عند إدخال اي قيمة فليس من المعقول أنك تترك له سبيسات او سطر او ترجع كورسر لأول السطر :wink:
فهذا ليس قانون بل رايي شخصي لكي لا تشوه برنامجك لا اكثر

إلى هنا أنتهي من الدرس الثاني أنتظروني بالدرس الثالث وسيكون فيه معلومات كثيفة فــفضي مخك منيح قبل ما تيجي :stuck_out_tongue:

سلام

الله يبارك فيك اخي للمزيد من التميز

thnx man