البرمجة بلغة C.

مؤلف: Christy White
تاريخ الخلق: 6 قد 2021
تاريخ التحديث: 1 تموز 2024
Anonim
C Programming - مقدمة لغة البرمجة سي بالعربي للمبتدئين
فيديو: C Programming - مقدمة لغة البرمجة سي بالعربي للمبتدئين

المحتوى

لغة C هي واحدة من أقدم لغات البرمجة. تم تطويرها في السبعينيات لكنها لا تزال تُعرف كلغة قوية لأنها لغة منخفضة المستوى قريبة من لغة الآلة. يعد Learning C مقدمة رائعة للبرمجة بلغات أكثر تعقيدًا ، والمعرفة التي تكتسبها مفيدة لأي لغة برمجة تقريبًا ، ويمكن أن تساعدك في النهاية على تطوير التطبيقات. تابع القراءة لبدء البرمجة في C.

لتخطو

جزء 1 من 6: الاستعدادات

  1. قم بتنزيل وتثبيت مترجم. يجب أولاً تجميع كود C بواسطة برنامج يمكنه تفسير الكود وتحويله إلى لغة يمكن للجهاز فهمها. عادةً ما تكون المجمعات متاحة مجانًا ، ويمكنك تنزيل مجمعات مختلفة لكل نظام تشغيل.
    • لنظام التشغيل Windows أو Microsoft Visual Studio Express أو MinGW.
    • بالنسبة لنظام التشغيل Mac ، يعد XCode أحد أفضل برامج التحويل البرمجي للغة C.
    • في نظام Linux ، يعد gcc أحد أكثر الخيارات شيوعًا.
  2. أساسيات. لغة C هي واحدة من أقدم لغات البرمجة ، لكنها قوية جدًا. تم تصميمه في البداية لنظام التشغيل Unix ، ولكنه أصبح شائعًا في النهاية على كل نظام تقريبًا. الإصدار "الحديث" من C هو C ++.
    • يتكون C من جميع الوظائف ، وضمن هذه الوظائف ، يمكنك استخدام المتغيرات والعبارات والحلقات الشرطية لتخزين البيانات ومعالجتها.
  3. تحقق من بضعة أسطر من التعليمات البرمجية البسيطة. انتقل من خلال البرنامج البسيط (للغاية) أدناه للحصول على فكرة أولية عن كيفية عمل الأجزاء المختلفة من اللغة معًا ، وكيفية عمل البرامج.

    #include stdio.h> int main () {printf ("Hello، World! n")؛ getchar () ؛ العودة 0 ؛ }

    • الاحالة #تضمن يتم وضعها في بداية البرنامج ، وتحميل المكتبات (مكتبات الرموز) التي تحتوي على الوظائف التي تحتاجها. في هذا المثال stdio.h متأكد منك printf () و getchar () يمكن استخدام.
    • الاحالة انت مين () يخبر المترجم أن البرنامج يستخدم الوظيفة "main" وأنه سيعيد عددًا صحيحًا بعد تنفيذه. تعمل جميع برامج لغة سي كوظيفة "رئيسية".
    • العلامات {} تشير إلى أن كل شيء بالداخل هو جزء من الوظيفة "main".
    • الوظيفة printf () يعرض محتويات الأقواس على شاشة المستخدم. تضمن علامات الاقتباس طباعة السلسلة حرفياً. ال ن يخبر المترجم بتحريك المؤشر إلى السطر التالي.
    • الإشارة ; يشير إلى نهاية السطر. يجب أن تنتهي معظم أسطر التعليمات البرمجية بفاصلة منقوطة.
    • الاحالة getchar ()يخبر المترجم أن ينتظر ضغطة مفتاح قبل المتابعة. هذا مفيد لأن العديد من المترجمين يقومون بتشغيل البرنامج ثم يغلقون النافذة على الفور. هذا يمنع البرنامج من الخروج حتى يتم الضغط على أحد المفاتيح.
    • الاحالة العودة 0 يشير إلى نهاية الوظيفة. لاحظ أن الوظيفة "الرئيسية" هي أ int الوظيفة. هذا يعني أنه يجب أن يعيد عددًا صحيحًا بمجرد انتهاء البرنامج. يشير "0" إلى أن البرنامج قد تم تنفيذه بشكل صحيح ؛ أي رقم آخر يشير إلى اكتشاف خطأ.
  4. حاول تجميع البرنامج. أدخل الرمز في محرر الشفرة واحفظه كملف " *. C". الآن قم بتجميع هذا مع المترجم الخاص بك ، عادة بالضغط على Build أو Run.
  5. قم دائمًا بتضمين شرح مع التعليمات البرمجية الخاصة بك يجب أن يكون هذا جزءًا منتظمًا من البرنامج ، لكن لن يتم تجميعه. سيساعدك هذا البرنامج التعليمي على تذكر الغرض من الكود ، وسيكون بمثابة دليل للمبرمجين الذين يبحثون و / أو يرغبون في استخدام الكود الخاص بك.
    • لإضافة تعليق في C ، ضع a /* في بداية التعليق و a */ في نهايةالمطاف.
    • التعليق في أي مكان باستثناء الأجزاء الأساسية من التعليمات البرمجية الخاصة بك.
    • يمكن استخدام التعليقات لإخفاء أجزاء من الكود بسرعة دون إزالتها. قم بإحاطة الكود بوضعه في علامات التعليق ثم قم بتجميع البرنامج. إذا كنت تريد استخدام الرمز مرة أخرى ، فقم بإزالة العلامات.

جزء 2 من 6: استخدام المتغيرات

  1. وظيفة المتغيرات. تسمح لك المتغيرات بتخزين البيانات ، سواء نتائج الحساب أو إدخال المستخدم. يجب تحديد المتغيرات قبل أن تتمكن من استخدامها ، وهناك عدة أنواع للاختيار من بينها.
    • بعض المتغيرات الأكثر شيوعًا هي int, شار و يطفو. كل من هذه يخزن نوع بيانات مختلف.
  2. تعلم كيف يتم التصريح عن المتغيرات. يجب أولاً إعطاء المتغيرات نوعًا معينًا ، أو "معلنة" ، قبل أن يمكن استخدامها في برنامج سي. تقوم بتعريف متغير عن طريق تحديد نوع البيانات ، متبوعًا باسم المتغير. على سبيل المثال ، جميع الإعلانات التالية صالحة في لغة C:

    تعويم س ؛ اسم شار كثافة العمليات أ ، ب ، ج ، د ؛

    • لاحظ أنه يمكنك التصريح عن متغيرات متعددة في نفس السطر طالما أنها من نفس النوع. الشيء الوحيد هو أن تفصل بين المتغيرات بفاصلة.
    • مثل العديد من الأسطر في C ، من الضروري فصل كل إعلان متغير بفاصلة منقوطة.
  3. اعرف مكان التصريح عن المتغيرات. يجب التصريح عن المتغيرات في بداية كتلة التعليمات البرمجية (أجزاء التعليمات البرمجية المضمنة في {}). إذا حاولت التصريح عن متغير لاحقًا ، فلن يعمل البرنامج بشكل صحيح.
  4. استفد من المتغيرات لتخزين مدخلات المستخدم. الآن بعد أن تعرفت على أساسيات كيفية عمل المتغيرات ، يمكنك كتابة برنامج بسيط يقبل ويخزن المدخلات من المستخدم. يمكنك استخدام دالة أخرى لـ C لهذا الغرض ، وهي مسح. تبحث هذه الوظيفة عن قيم خاصة في سلسلة.

    #include stdio.h> int main () {int x؛ printf ("الرجاء إدخال رقم:") ؛ scanf ("٪ d" ، & x) ؛ printf ("الرقم٪ d" ، x) ؛ getchar () ؛ العودة 0 ؛ }

    • ال "٪ د" سلسلة / سلسلة مسح للبحث عن عدد صحيح في إدخال المستخدم.
    • ال & للمتغير X يقول مسح مكان العثور على المتغير لتغييره ، وتخزين العدد الصحيح على أنه هذا المتغير.
    • الأمر الأخير printf يقرأ المتغير ويعرض النتيجة للمستخدم.
  5. تحرير المتغيرات. يمكنك تحرير البيانات التي قمت بتخزينها في المتغيرات باستخدام التعبيرات الرياضية. الاختلاف الرئيسي الذي يجب تذكره للتعبيرات الرياضية هو أنه واحد = يخزن قيمة المتغير بينما == القيم الموجودة على جانبي الشخصية للتأكد من أنها متساوية.

    س = 3 * 4 ؛ / * تعيين "x" إلى 3 * 4 ، أو 12 * / x = x + 3 ؛ / * يضيف هذا 3 إلى القيمة السابقة لـ "x" ، ويعين القيمة الجديدة كمتغير * / x == 15؛ / * يتحقق مما إذا كانت "x" تساوي 15 * / x 10 ؛ / * يتحقق مما إذا كانت قيمة "x" أقل من 10 * /

جزء 3 من 6: الجمل الشرطية

  1. افهم أساسيات الجمل الشرطية. العبارات الشرطية هي ما يكمن في قلب معظم البرامج. هذه عبارات إما صحيحة أو خاطئة ، وتعيد نتيجة وفقًا لذلك. أبسط هذه العبارات هو إذا بيان.
    • يعمل TRUE و FALSE بشكل مختلف في لغة C عما كنت معتادًا عليه. تنتهي عبارات TRUE دائمًا بمطابقة رقم غير صفري. عند إجراء مقارنات والنتيجة هي TRUE ، يتم إرجاع "1". إذا كانت النتيجة FALSE ، يتم إرجاع "0". يساعد فهم هذا في العمل مع عبارات IF.
  2. تعرف على العوامل الشرطية القياسية. تدور العبارات الشرطية حول استخدام العوامل الرياضية التي تقارن القيم. تحتوي القائمة التالية على العوامل الشرطية الأكثر استخدامًا.

    > / * أكبر من * / / * أقل من * /> = / * أكبر من أو يساوي * / = / * أقل من أو يساوي * / == / * يساوي * /! = / * لا يساوي * /

    10> 5 TRUE 6 15 TRUE 8> = 8 TRUE 4 = 8 TRUE 3 == 3 TRUE 4! = 5 TRUE

  3. بيان IF الأساسي. يمكنك استخدام عبارات IF لتحديد ما يجب أن يفعله البرنامج بعد تقييم العبارة. يمكنك دمج هذا مع عبارات شرطية أخرى لإنشاء وظائف قوية ومعقدة ، لكننا سنجعل من السهل التعود عليها في الوقت الحالي.

    #include stdio.h> int main () {if (3 5) printf ("3 أقل من 5")؛ getchar () ؛ }

  4. استخدم عبارات ELSE / ELSE IF لتوسيع شروطك. يمكنك البناء على عبارات IF باستخدام عبارات ELSE و ELSE IF لمعالجة نتائج مختلفة. يتم تنفيذ عبارات ELSE فقط إذا كانت جملة IF هي FALSE. تتيح لك عبارات ELSE IF استخدام عبارات IF متعددة داخل نفس كتلة التعليمات البرمجية وبالتالي إنشاء شروط أكثر تعقيدًا. راجع نموذج البرنامج أدناه لمعرفة كيفية عمل ذلك.

    #include stdio.h> int main () {int age؛ printf ("أدخل عمرك:") ؛ scanf ("٪ d" ، & العمر) ؛ إذا (العمر = 12) {printf ("أنت ما زلت طفلًا! n")؛ } else if (العمر 20) {printf ("من الرائع أن تكون مراهقًا! n")؛ } else if (العمر 40) {printf ("ما زلت شابًا في القلب! n")؛ } else {printf ("مع التقدم في العمر تأتي الحكمة. n")؛ } إرجاع 0؛ }

    • يأخذ البرنامج المدخلات من المستخدم ويديرها من خلال عدد من عبارات IF. إذا كان الرقم يتوافق مع العبارة الأولى ، يصبح الأول printf يتم إرجاع البيان. إذا لم تستوف العبارة الأولى ، فإنها تتحقق مما إذا كانت إحدى عبارات ELSE IF التالية ترضي حتى تجد شيئًا يعمل. إذا لم تكن أي من العبارات مرضية ، فسيتم تنفيذ آخر جملة ELSE.

جزء 4 من 6: حلقات

  1. كيف تعمل الحلقات. الحلقات هي أحد أهم جوانب البرمجة ، لأنها تسمح لك بتكرار كتل من التعليمات البرمجية حتى يتم استيفاء شروط معينة. هذا يجعل تنفيذ الإجراءات المتكررة أمرًا سهلاً للغاية ، ولا داعي لكتابة عبارات شرطية جديدة في كل مرة تريد حدوث شيء ما.
    • هناك ثلاث حلقات مختلفة: FOR ، WHILE ، DO ... WHILE.
  2. حلقة FOR. هذا هو نوع الحلقة الأكثر شيوعًا وفائدة. سيؤدي هذا إلى استمرار عمل الوظيفة حتى يتم استيفاء شروط معينة ، كما هو محدد في حلقة FOR. تتطلب حلقات FOR 3 شروط: تهيئة المتغير والشرط المطلوب استيفائه والمتغير المراد تحديثه. إذا لم تكن بحاجة إلى كل هذه الشروط ، فسيتعين عليك وضع مسافة فارغة بفاصلة منقوطة ، وإلا ستستمر الحلقة إلى أجل غير مسمى.

    #include stdio.h> int main () {int y؛ لـ (y = 0؛ y 15؛ y ++؛) {printf ("٪ d n"، y)؛ } getchar () ؛ }

    • في البرنامج أعلاه ذ قم بالتعيين على 0 ، وستستمر الحلقة طالما كانت قيمة ذ أقل من 15. في أي وقت تكون قيمة ذ على الشاشة ، تتم إضافة 1 إلى قيمة ذ وتتكرر الحلقة. هل هذا يحتسب ذ = 15 ، سيتم مقاطعة الحلقة.
  3. حلقة WHILE. بينما تعد حلقات WHILE أبسط قليلاً من حلقات FOR. هذه لها شرط واحد فقط وتستمر الحلقة طالما تم استيفاء هذا الشرط. ليست هناك حاجة لتهيئة أو تحديث متغير ، ولكن يمكنك القيام بذلك في الحلقة نفسها.

    #include stdio.h> int main () {int y؛ بينما (ص = 15) {printf ("٪ d n" ، ص) ؛ ذ ++ ؛ } getchar () ؛ }

    • ال ذ ++ يضيف الأمر 1 إلى المتغير ذفي كل مرة يتم تنفيذ الحلقة. إذا ذ وصل إلى 16 (تذكر أن هذه الحلقة تستمر طالما أن ذ "أقل من أو يساوي" 15) ، سيتم إيقاف الحلقة.
  4. ال فعل...حائط اللوب. هذه الحلقة مفيدة جدًا للحلقات التي تريد التأكد من إجرائها مرة واحدة على الأقل. في الحلقات FOR و WHILE ، يتم فحص الشرط في بداية الحلقة ، مما يعني أن الحلقة مكتملة أم لا. تقوم حلقات DO ... WHILE بالتحقق فقط من استيفاء الشرط في النهاية ، وبالتالي يتم تنفيذها مرة واحدة على الأقل.

    #include stdio.h> int main () {int y؛ ص = 5 ؛ افعل {printf ("الحلقة قيد التشغيل! n") ؛ } بينما (ص! = 5) ؛ getchar () ؛ }

    • ستعرض هذه الحلقة الرسالة حتى لو كان الشرط خاطئًا. المتغير ذ مضبوطة على 5 وستستمر حلقة WHILE لفترة طويلة ذ لا يساوي 5 ، وبعد ذلك تنتهي الحلقة. تم عرض الرسالة بالفعل على الشاشة لأنه يتم التحقق فقط في النهاية من تلبية الشرط.
    • حلقة WHILE في DO ... WHILE يجب أن تنتهي بفاصلة منقوطة. هذه هي المرة الوحيدة التي تنتهي فيها الحلقة بفاصلة منقوطة.

جزء 5 من 6: استخدام الميزات

  1. المعرفة الأساسية للوظائف. الوظائف عبارة عن كتل من التعليمات البرمجية قائمة بذاتها يمكن استدعاؤها من جزء آخر من البرنامج. هذا يجعل من السهل كثيرًا تكرار التعليمات البرمجية والبرامج ، سواء في القراءة أو التعديل. تستخدم الوظائف جميع التقنيات الموضحة أعلاه ، وحتى الوظائف الأخرى.
    • القاعدة رئيسي () في بداية جميع الأمثلة السابقة هي وظيفة أيضًا getchar ()
    • تهدف الوظائف إلى جعل قراءة وكتابة التعليمات البرمجية أكثر كفاءة. استفد جيدًا من الميزات لتبسيط برنامجك.
  2. ابدأ بوصف موجز. يمكن تصميم الوظائف بشكل أفضل من خلال وصف ما تريد تحقيقه أولاً قبل البدء في الترميز الفعلي. الصيغة الأساسية للدالة في لغة C هي "اسم نوع الإرجاع (الوسيطة 1 ، وسيطة 2 ، وما إلى ذلك) ؛". على سبيل المثال ، لإنشاء دالة تضيف رقمين ، قم بما يلي:

    int add (int x، int y) ؛

    • هذا يخلق وظيفة لإضافة عددين صحيحين (X و ذ) ، ويتم إرجاع المجموع كعدد صحيح.
  3. أضف الوظيفة إلى البرنامج. يمكنك استخدام الوصف المختصر لإنشاء برنامج لإضافة عددين صحيحين أدخلهما المستخدم. سيحدد البرنامج كيفية عمل وظيفة "add" ويستخدمها لمعالجة الأرقام المدخلة.

    # تضمين stdio.h> int add (int x، int y) ؛ int main () {int x؛ int ذ ؛ printf ("الرجاء إدخال رقمين لإضافتهما:") ؛ scanf ("٪ d" ، & x) ؛ scanf ("٪ d" ، & y) ؛ printf ("مجموع الأرقام٪ d n" ، أضف (x ، y)) ؛ getchar () ؛ } int add (int x، int y) {return x + y؛ }

    • لاحظ أن الوصف المختصر موجود في بداية البرنامج. هذا يخبر المترجم بما يمكن توقعه عند استدعاء الوظيفة وماذا ستعود. هذا ضروري فقط إذا كنت تريد تحديد الوظيفة لاحقًا في البرنامج. بامكانك ايضا يضيف () تحديد الوظيفة رئيسي () لذا فإن النتيجة هي نفسها بدون الوصف المختصر.
    • يتم تحديد تشغيل الوظيفة في نهاية البرنامج. الوظيفة رئيسي () يحصل على الأعداد الصحيحة للمستخدم ثم يعيد توجيهها إلى الوظيفة يضيف () لتتم معالجتها. الوظيفة يضيف () ثم ترجع النتيجة إلى رئيسي ()
    • الآن يضيف () يتم تعريفه ، يمكن استدعاؤه في أي مكان داخل البرنامج.

جزء 6 من 6: استمر في التعلم

  1. راجع بعض الكتب عن البرمجة بلغة C. ستتناول هذه المقالة الأساسيات فقط ، وهذا مجرد غيض من فيض يسمى C وكل ما يتعلق به. سيساعد الكتاب الجيد في حل المشكلات ويمكن أن يوفر لك الكثير من الصداع لاحقًا.
  2. انضمام مجموعة. هناك العديد من المجموعات ، سواء عبر الإنترنت أو في العالم الحقيقي ، مخصصة للغات البرمجة والبرمجة بجميع أنواعها. اعثر على عدد قليل من مبرمجي لغة سي المتشابهين في التفكير لتبادل الشفرات والأفكار معهم ، وستجد أنك في فترة زمنية قصيرة قد تعلمت أكثر بكثير مما كنت تعتقد أنه ممكن.
    • اذهب إلى بعض hack-a-thons إن أمكن. هذه هي الأحداث حيث يتعين على الفرق والأفراد التوصل إلى الحل والبرنامج المقابل لمشكلة ما في غضون فترة زمنية معينة ، وهو أمر يتطلب الكثير من الإبداع. يمكنك مقابلة العديد من المبرمجين العظماء ، ويتم تنظيم hack-a-thons في جميع أنحاء العالم.
  3. تأخذ دورة. لست مضطرًا حقًا إلى العودة إلى المدرسة للتدريب كمبرمج ، لكن لا يضر أن تأخذ دورة وتزيد من وتيرة تعلمك حقًا. لا شيء يمكنه أن ينافس المساعدة المباشرة من أشخاص على دراية جيدة بموضوع معين. يمكنك غالبًا العثور على دورة تدريبية في مكان قريب ، أو محاولة البحث عن دورة تدريبية عبر الإنترنت.
  4. ضع في اعتبارك أيضًا تعلم C ++. بمجرد إتقان لغة C ، لن يضر الانتقال إلى ++ C. هذا هو البديل الأكثر حداثة لـ C ، ويوفر قدرًا أكبر من المرونة. تم تصميم C ++ للعمل مع الكائنات ، وتتيح لك القدرة على العمل باستخدام C ++ كتابة برامج قوية لأي نظام تشغيل تقريبًا.

نصائح

  • دائما التعليق على برامجك. لا يساعد هذا فقط الآخرين في فهم كود المصدر الخاص بك ، ولكنه أيضًا يساعدك على تذكر ما قمت بتشفيره ولماذا. قد تعرف الآن ما تفعله ، ولكن بعد حوالي شهرين إلى ثلاثة أشهر ، من المحتمل أنه لم يعد لديك أي فكرة.
  • لا تنس إنهاء جملة مثل printf () و scanf () و getch () وما إلى ذلك بفاصلة منقوطة (؛) ولكن لا تضعها أبدًا بعد عبارات مثل "if" أو "while" أو "for" loops.
  • إذا واجهت خطأً في بناء الجملة أثناء وقت الترجمة وتعثرت ، فاستخدم محرك البحث المفضل لديك لمعرفة ما تعنيه رسالة الخطأ. هناك فرصة جيدة أن يكون شخص آخر قد نشر بالفعل حلاً لنفس المشكلة.
  • يجب أن يكون لشفرة المصدر امتداد C حتى يعرف المحول البرمجي أنه ملف C.
  • تذكر ، الممارسة تجعل من الكمال. كلما تدربت على برامج الكتابة ، كلما أصبحت أفضل. لذا ابدأ ببرامج بسيطة وقصيرة حتى تحصل على موطئ قدم قوي ، ثم انتقل إلى البرامج الأكثر تعقيدًا.
  • تعرف على المنطق. يساعد هذا في حل المشكلات المختلفة أثناء الترميز.