Upload
-
View
1.739
Download
6
Embed Size (px)
Citation preview
بلغةالبرمجة سلسلة تعلم
C / C++ - 2
إعداد وتقديم
بندر المجالد. أ
أحرف البدل التي تستخدم مع اإلجراء
printf
ماهي أحرف البدل ؟•
.هي ما يحجز مكاناً داخل النص لتضع قيمة المتغيرات فيه
.يستخدم لطباعة الحرف
يستخدم لطباعة الحرف
%d عدد عشري صحيح
%i
%c حرف أبجدي واحد
%s مجموعة من األحرفstring
%f عدد ذو عالمة عائمة
%x (هيكسا ديسيمل)عدد سداس عشري
%o عدد ثمانيOctal
مثال على استخدام حروف البدل
#include <stdio.h>
void main(void)
{
char string[]="Testing";
int count;
for(count=1; count <= 10; count++)
printf("%-10s:%2d\n", string, count);
/*
عبارة برنت أف تطبع الحروف الموجودة في المتغير سترينج
وبجوارها الرقم الموجود في المتغير كاونت
تحدد عرض الحروف من أجل التنسيق وعالمة الناقص 10-
حتى يكون التنسيق من جهة اليسار فلو تركناه على الوضع
اإلفتراضي بدون إشارة السالب فإن التنسيق سيكون من .ناحية اليمين
*/
}
تذكر
يستتتتخدم للحصتتتول علتتتى عتتتدد الحتتتروف : strlenاإلجررررا
.أو قياس الطول في المتغيرات
عبتارات توضتيحية يضت ها المبترمج : commentsالتعليقرا
لتوضتتيح أجتتزاي م ينتتة متتن البرنتتامجة وهتتي م يتتدة للتتتذكير
ولتقستتيم ال متتل علتتى مجموعتتة متتن المبتترمجين فتتي برنتتامج
.واحدة وهي اختيارية وليست اجبارية ل مل البرنامج
عبارة عتن أوامتر تصتدرها للمتترجم : directivesالتوجيها
ليقتتوم بتضتتمين مل تتات م ينتتة إلتتى الملتتف الحتتالي للبرنتتامج
.أو الستبدال اسماي الثوابت بقيمها الم ينة أو غير ذلك
: statementsالعبارا
نوعان
وهي لت يين القيم : العبارا اإلعالنية أو البيانية -أ
.أو اإلعالن عن المتغيرات ونحو ذلك
لتن يتتتتتتذ و ي تتتتتتة : العبررررررارا الوأي يررررررة أو التن ي يررررررة -ب
.أو عمل ما
.وأن جميع ال بارات ال بد أن تنتهي ب اصلة منقوطة
تذكر
: a functionاإلجرا ا أو الدوال
اإلجراي الرئيسي المكتوب في برنامج السي هو اإلجراي main وهو اإلجراي الذي يبدأ منه البرنامج بشكل دائمة
.مهما كان مكانه في الملف المصدر
هو عبارة عن مجموعة من األوامر يتم تغلي ها : واإلجراي
كوحدة مستقلة من البرنامج ليقوم ب مل م ين أو و ي ة
محددةة ويمكن استدعايه أو طلبه من أي مكان في
البرنامجة وتستطيع تكرار طلبه بالقدر الذي تريده أو تقوم
.بتحديده
: variablesالمتغيرا
هي عبارة عن مكان في ذاكرة الجهازة يستخدم لتخزين
البيانات أو الم لوماتة وسميت متغيرات إلمكانية تغيير
والمتغيرات عدة أنواع منها . قيمها أثناي سير البرنامج
.ال ددية ومنها الحرفية
0 = false :
وأن أي قيمة falseفي لغة سي ي تبر الص ر قيمة خاطئة
. true أخرى ت تبر صحيحة
القراءة من لوحة المفاتيح
:قرا ة حرف واحد
getcharاإلجراي -
getcheاإلجراي -
getchاإلجراي -
:قرا ة مجموعة من األحرف
getsاإلجراي -
لتستخدم هذا اإلجراي مرر له مص وفة حروف مثال
:بهذا الشكل
char string[80];
gets(string);
/*
Copyright: http://bndralmjlad.wordpress.com/
Author: bndr.almjlad
Date: 16/04/14 00:52
Description: مثال على اإلجرايgetchar يقوم بطباعة ة
رقم الحرف في جدول اآلسكي
/*
#include <stdio.h>
void main(void)
{
char ch;
printf(“Write any character:");
ch = getchar();
printf("you entered: %c ASCII No: %d.\n", ch, ch );
system("PAUSE");
}
getcharمثال على اإلجراء
getcheو getchمثال على استخدام
الح أن هذين اإلجرايين غير متوافقين مع مكتبة //
QuickWin
#include <stdio.h>
#include <conio.h> // الزم ل مل اإلجرايين
void main(void)
{
char ch;
printf("please type a letter: ");
ch = getch();
printf("\nyou typed:%c\tASCII No:%d.\n\n",ch,ch);
printf("please type another letter: ");
ch = getche();
printf("\nyou typed:%c\tASCII No:%d.\n",ch,ch);
system("PAUSE");
}
gets مثال على استخدام اإلجراء
#include <stdio.h>
void main(void)
{
char string[80];
printf("Enter a string of characters: ");
gets( string );
printf("you entered: \n\n%s\n\n", string);
printf("which contains %d characters.\n", strlen(string) );
system("PAUSE");
}
2-القراءة من لوحة المفاتيح
:scanfاإلجرا
يتيح لك هذا اإلجراي مرونة كبيرة حيث
يمكنك من قراية حرف واحد أو مجموعة
.حروف أو أعداد صحيحة أو غيرها
:مثال
int num;
scanf("%d", &num);
:& المعامل
يستخدم للحصول على عنوان المتغير في
.الذاكرة
scanfعلى اإلجراء 1مثال
#include <stdio.h>
void main(void)
{ char string[80];
int num;
char ch;
printf("Enter a string of characters: ");
scanf("%s", string);
fflush(stdin);
printf("Enter a number: ");
scanf("%d", &num);
fflush(stdin);
printf("Enter a single character: ");
scanf("%c", &ch);
printf("\n\nThe string was: %s\n", string);
printf("The number was: %d\n", num);
printf("The character was: %c\n", ch);
system("PAUSE"); }
scanfعلى اإلجراء 2مثال
#include <stdio.h>
void main(void)
{
int day, month, year;
printf("Enter your birthday (dd/mm/year): ");
scanf("%d/%d/%d", &day, &month, &year );
printf("\nThe year was: %d.\n", year);
printf("The month was: %d.\n", month);
printf("The day was: %d.\n", day);
system("PAUSE");
}
3-القراءة من لوحة المفاتيح
يستخدم لقراية مجموعة من scanfرغم أن اإلجراي •
الحروفة إال أنه يتطلب أن تكون الحروف التي تدخلها
متصلة وال ت صل بينها بحرف المسافةة فهو ي تبر المسافة
فيترك األحرف . حرفا فاصال فيتوقف عن قراية ما ب دها
المتبقية التي ربما يكتبها المستخدم ب د المسافة في الذاكرة لذلك يستخدم ة bufferالوسيطة الخاصة بلوحة الم اتيح
الذي يقوم بإفراغ الذاكرة ;fflush(stdin)األجراي
.الوسيطة
لقراية عدة بيانات في عبارة scanfيمكن استخدام اإلجراي •
:واحدةة مثال
scanf("%d/%d/%d", &day,&month,&year);
قام بالمطلوب منه نستخدم scanf للتأكد من أن : مالح ة•
.ليطبع كل قيمة على حدة printf ب دها
بنى التحكم التركيبات الشرطية
conditional structures
فإذا .ما شرط تحقق إذا البرنامج من م ين جزي بتن يذ تقوم
.الجزي هذا تتخطى فإنك الشرطة يتحقق لم
الشرط؟ هو ما
عالقة لتحدد قيمتين تختبر أن هو :condition الشرط
.باآلخر أحدهما
:الشرطي للتركيب العامة الصيغة
إذا كان الشرط صحيحاً ن ذ
; االختيار الثاني : االختيار األول ? (الشرط) = الناتج
result = (condition) ? var1 : var2 ;
إذا كان الشرط خاطئاً ن ذ
بنى التحكم التركيبات الشرطية
conditional structures
//مثال على التركيب الشرطي
#include <stdio.h>
void main(void)
{
int num1, num2, max;
do
{
printf("\nEnter two numbers: ");
scanf("%d %d", &num1, &num2);
max = (num1 > num2) ? num1 : num2;
printf("\nThe number: [%d] is greater.", max);
} while (num1 != 0);
system("PAUSE");
}
ifالتركيب
وهو أيضا من التركيبات الشرطية المشهورة جدا في
.عالم البرمجة وفي جميع اللغات البرمجية
: if للتركيب العامة الصيغة
ة أما إذا كان ifإذا تحقق الشرط فإن البرنامج ين ذ عبارات
وينتقل حينها ifالشرط خاطئاً فإن البرنامج يتجاهل عبارات
.إلى ما ب دها من عبارات البرنامج
بنى التحكم التركيبات الشرطية
conditional structures
if (condition) { statements ;
عبارة واحدة أو أكثر }
ifالتركيب
: if للتركيب الخوارزمي الهيكل
بنى التحكم
البداية
هل الشرط
صحيح ؟
ifن عبارا
ن باقي عبارا البرنامج
نعم
ال
النهاية
#include <stdio.h>
void main(void)
{
int num;
printf("Please Enter A Number: ");
scanf("%d", &num);
if(num == 12)
printf("You enter the magic number: 12.\n");
system("PAUSE");
}
بنى التحكم
ifالتركيب
ifمثال على التركيب