دليل إجابات الدرس رقم (١) - لغة C - الروتينات والمتغيرات.
س1: (5 نقاط)
(أ) كم نوعا للروتين؟
(ب) قم بتعريف الروتين الأساسي مرتان، الأولى بحيث يعود بالقيمة 0، والثانية بحيث لا يعود بأي قيمة، اجعل وظيفته في الحالتين طباعة اسمك على نافذة Run - Log التي استخدمناها في البرنامج.
ج1:
(أ) للروتين نوعان، الأول يسمى بالإجراء (Procedure) وهو الروتين الذي لا يعود بقيمة، ويبدأ تعريفه بالكلمة: void، والنوع الثاني يسمى بالعملية (Function) وهو الروتين الذي يعود بقيمة، ويبدأ تعريفه بنوع القيمة المعادة.
(ب): الـروتين الأساسي يعود بالقيمة 0:
كود:
int main()
{
printf("%s", "Abo Baker");
return 0;
}
الروتين الأساسي لا يعود بأي قيمة:
كود:
void main()
{
printf("%s", "Abo Baker");
}
س2: (8 نقاط)
عرف المتغيرات التالية بناء على أنواعها المقترحة عليك:
(أ) x ونوعه مجموعة الأعداد الصحيحة، اجعل قيمته الافتراضية = 10.
(ب) delta ونوعه مجموعة الأعداد الصحيحة الطويلة.
(ج) y ونوعه مجموعة الأعداد الحقيقية، اعطه ثلث قيمة المتغير x السابق في السؤال نفسه.
(د) q ونوعه مجموعة الأعداد الصحيحة الطويلة، اعطه قيمة المتغير x، مضروب في قمية المتغير y، ثم اطرح منه 1.
(هـ) Pi وأعطه قيمة افتراضية تساوي 3.14159. (انتبه! يجب عليك اختيار النوع الصحيح).
ج2:
(أ)
(ب)
(ج)
(د)
(هـ)
س3: (7 نقاط)
قم بتعديل البرنامج السابق ليقوم بجمع ثلاث متغيرات بدلا من اثنين، وكذلك يقوم بحساب نتيجة طرحها من بعضها ثم ضربها وقسمتها.
ج3:
كود:
// This is my first C application in Xcode
// Abo Baker { type here your name }
int add (int a, int b, int c)
{
return a + b + c;
}
int subtract (int a, int b, int c)
{
return c - b - a;
}
long multiply (int a, int b, int c)
{
return a * b * c;
}
double divide (int a, int b, int c)
{
return (a / b / c);
}
int main ()
{
int x = 10, y = 5, z = 2;
int result;
double r;
printf("%s", "\n\n===========================================================\n");
printf("%s", "= This is my first C application on Macintosh using Xcode =\n");
printf("%s", "===========================================================\n\n");
printf("%s", "Adding three values... x = 10, y = 5, z = 2\n");
result = add(x, y, z);
printf("%s%d%s" , " . . . Answer = ", result,"\n");
printf("%s", "\n\nSubtracting three values... x = 10, y = 5, z = 2\n");
result = subtract(x, y, z);
printf("%s%d%s" , " . . . Answer = ", result,"\n");
printf("%s", "\n\nMultiplying three values... x = 10, y = 5, z = 2\n");
result = multiply(x, y, z);
printf("%s%d%s" , " . . . Answer = ", result,"\n");
printf("%s", "\n\nDividing three values... x = 10, y = 5, z = 2\n");
result = divide(x, y, z);
printf("%s%d%s" , " . . . Answer = ", result,"\n");
return 0;
}