c# test Flashcards

1
Q

מה מס׳ הבנאים המינימלי שיכול להיות עבור מחלקה בשפת התכנות c# ?
א. 0, כל עוד לא הכרזנו על בנאי ספציפי
ב. 1, לכל מחלקה יש בנאי אחד לפחות (גם אם לא הוצהר)
ג. 2, לכל מחלקה יש 2 בנאים לפחות (גם אם לא הוצהרו)
ד. מספר הבנאים הנוצרים אוטומטית הם כמספר האטריביוטים/שדות במחלקה.

A

ב. 1, לכל מחלקה יש בנאי אחד לפחות (גם אם לא הוצהר)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
נתון קטע הקוד הבא:
  int x = 5;
  int y = 12;
  string z = "5";
  Console.WriteLine(x+y+z);
מה יודפס למשתמש על המסך?
א.	175 
ב.	1255
ג.	22 
ד.	5125
A

א. 175

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
3.	איזה סוג של שגיאה מונע  קטע הקוד הבא?
string s = Console.ReadLine(); 
int sum=0;
If (int.TryParse(s, out int a))
	sum+=a;
א.	שגיאת קומפילציה
ב.	שגיאה לוגית
ג.	שגיאה בזמן ריצה
ד.	כל התשובות נכונות
A

ג. שגיאה בזמן ריצה

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  1. נתון קטע הקוד הבא:
    for (int i = 0; i < 10; i+=2)
    {
    Console.WriteLine(“${i}”);
       } מה מבצעת הלולאה?   א.	הלולאה עוברת על כל המספרים מ-0 עד 10(כולל) ומדפיסה רק את המספרים הזוגיים ב.	הלולאה עוברת על כל המספרים האי זוגיים מ-2 עד 9 (כולל) ומדפיסה את ערכו של i בכל איטרציה ג.	הלולאה עוברת על כל המספרים הזוגיים מ-0 עד 8 (כולל) ומדפיסה 5 פעמים את המחרוזת ${i} ד.	הלולאה עוברת על כל המספרים הזוגיים מ-0 עד 10 (כולל) ומדפיסה 5 פעמים את המחרוזת ${i}
A

ג. הלולאה עוברת על כל המספרים הזוגיים מ-0 עד 8 (כולל) ומדפיסה 5 פעמים את המחרוזת ${i}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  1. מבין העובדות הבאות, איזו מהן נכונה ?
    א. בשפת c# כל בנאי חייב לקבל פרמטרים (ארגומנטים) לשם יצירת האובייקט
    ב. אף תשובה איננה נכונה
    ג. בשפת c# קיימים סוגי הטיפוסים הבאים בלבד int, char, double, object, array
    ד. בשפת c# אינדקס המערך תמיד מתחיל מ-0 מלבד סוגים מיוחדים כגון מערך של bool.
A

ב. אף תשובה איננה נכונה

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q
6.	אור ונטלי בוגרי המחלקה של מדעי המידע, מועמדים לתפקיד פיתוח יוקרתי באחת מחברות התוכנה המובילות בארץ. שניהם הציגו יכולות מרשימות בכתיבת קוד, אך המשרה פנויה רק לאחד מהם. לאחר שהגישו את המטלה למנהל הפיתוח, נתגלתה טעות אצל אחד מהם.
הקוד של אור:
            int[] myArr = new int[5];
            bool flag = false;
            if (!flag)
            {
                int i = 0;
            }
            while (i < myArr.Length)
            {
                Console.WriteLine("OR");
                i++;     
            }
הקוד של נטלי:
            int[] myArr = new int[5];
            bool flag = false;
            int i = -1;
            if (!flag)
            {
                i = 0;
            }
            while (i < myArr.Length)
            {
                Console.WriteLine("Natali");
                i++;   
            }
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q
  1. public int g()
    {
    Console.WriteLine(“please enter a string”);
    string word = Console.ReadLine();
    int index1 = 0;
    while (index1 < word.Length)
    {
    Console.WriteLine(word[index1]);
    index1++;
    }
    }
    א. בהינתן המתודה לעיל האם יש בה ואם כן מהי שגיאת הקומפילציה במתודה זו?
    a. אין שגיאות קומפילציה במתודה, היא תקינה לחלוטין
    b. המילה Length אינה מוגדרת
    c. המתודה נכנסת ללולאה אינסופית כיוון שהתנאי בwhile מוגדר לא נכון
    d. המתודה אינה מחזירה ערך בניגוד להגדרתה
A

d. המתודה אינה מחזירה ערך בניגוד להגדרתה

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
1.	public int g()
{
Console.WriteLine("please enter a string");
       string word = Console.ReadLine();
       int index1 = 0;
       while (index1 < word.Length)
       {
           Console.WriteLine(word[index1]);
           index1++;
       }
}
ב.	מהי משמעות המילה public?
a.	ניתן לקרוא למתודה מחוץ למחלקה בה היא מוגדרת
b.	ניתן להשתמש במשתנים הלוקאליים של המתודה מחוץ למתודה זו
c.	המתודה לא מקבלת ארגומנטים
d.	המתודה חייבת להחזיר ערך בסיומה
A

a. ניתן לקרוא למתודה מחוץ למחלקה בה היא מוגדרת

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

ג. מהו עיקרון הסתרת המידע בתכנות מונחה עצמים?
a.כל משתנה מוגדר רק בתוך בלוק הקוד שלו ומוסתר מכל בלוק אחר בתכנית
b.כל אטריבוט של מחלקה הוא משתנה גלובלי שניתן להשתמש בו בכל המתודות של המחלקה
c. מידע פנימי של האובייקט כגון אטריבוטים מוגדרים כprivate
ובכך לא ניתן לגשת אליהם מחוץ למחלקה
d. כל התשובות נכונות

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. public int g()
    {
    Console.WriteLine(“please enter a string”);
    string word = Console.ReadLine();
    int index1 = 0;
    while (index1 < word.Length)
    {
    Console.WriteLine(word[index1]);
    index1++;
    }
    }
    ד. מה מבצעת המתודה לעיל (לאחר תיקון השגיאה בה אם ישנה):
    a. מדפיסה כל תו במחרוזת שמקבלת מהמשתמש בשורה נפרדת
    b. מדפיסה את המחרוזת שמקבלת מהמשתמש length פעמים
    c. מדפיסה בלולאה את הערכים שבכל תא במערך word
    d. מדפיסה את הindex1 מספר פעמים כאורך המחרוזת שמקבלת מהמשתמש
    ה. האם מותר בשפת C# להגדיר שתי מתודות בעלות שם זהה באותה המחלקה ?
A

a. מדפיסה כל תו במחרוזת שמקבלת מהמשתמש בשורה נפרדת

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

ה. האם מותר בשפת C# להגדיר שתי מתודות בעלות שם זהה באותה המחלקה ?

a. לא, לכל מתודה צריך להיות שם ייחודי במחלקה שלה.
b. כן, יכולות להיות מספר מתודות בעלות אותו השם באותה המחלקה.
c. כן, רק בתנאי שלכל אחת ממתודות אלו יש ארגומנטים שונים מאלו של המתודות האחרות באותו השם.
d. אף תשובה אינה נכונה.

A

c. כן, רק בתנאי שלכל אחת ממתודות אלו יש ארגומנטים שונים מאלו של המתודות האחרות באותו השם.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q
  1. public int g()
    {
    Console.WriteLine(“please enter a string”);
    string word = Console.ReadLine();
    int index1 = 0;
    while (index1 < word.Length)
    {
    Console.WriteLine(word[index1]);
    index1++;
    }
    }
    ו. האם במתודה לעיל ניתן להפוך את הלולאה ללולאת for תוך שמירה על הפונקציונליות שלה
    (כלומר שהלולאה תבצע את אותה הפעולה בדיוק כמו לולאת while המקורית).
    a. לא ניתן כי בלולאת for לא ניתן לשמור על הפונקציונליות של הלולאה המקורית בצורה מלאה
    b. לא ניתן כי מספר החזרות לא ידוע מראש
    c. לא כי מספר החזרות תלוי בקלט מהמשתמש
    d. אף תשובה אינה נכונה
A

d. אף תשובה אינה נכונה

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

static void Main(string[] args)
{
1. Console.WriteLine(“What Is Your Name?”);
2. string Name = Console.ReadLine();
3. MyFacebook FMember = new MyFacebook(Name);
4. for (int i = 0; i < 10; i++)
5. {
6. Console.WriteLine(“Give Me the Next Friend Name!”);
7. if (!FMember.AddFriend(Console.ReadLine()))
8. i–;
9. }
10. string st = FMember.getFriends();
11. Console.WriteLine(st);

מהי משמעות השורה 3 ?

a. יצירת אובייקט מסוג MyFacebook
b. יצירת משתנה מסוג MyFacebook
c. תשובות a וb נכונות
d. אף תשובה אינה נכונה

A

c. תשובות a וb נכונות

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
static void Main(string[] args)
        {
1.	Console.WriteLine("What Is Your Name?");
2.	string Name = Console.ReadLine();
3.	MyFacebook FMember = new MyFacebook(Name);
4.	for (int i = 0; i < 10; i++)
5.	{
6.	  Console.WriteLine("Give Me the Next Friend Name!");
7.	  if (!FMember.AddFriend(Console.ReadLine())) 
8.	     i--;
9.	}
10.	string st = FMember.getFriends();
11.	Console.WriteLine(st);
            }
מה מקבל הבנאי של המחלקה MyFacebook כארגומנט לפי הקוד בשורה 3?
a.	מחרוזת
b.	לא ניתן לדעת
c.	משתנה בשם Name מסוג כלשהו
d.	אף תשובה אינה נכונה
ג.	מהי מחלקה בשפת C# ?
A

a. מחרוזת

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

static void Main(string[] args)
{
1. Console.WriteLine(“What Is Your Name?”);
2. string Name = Console.ReadLine();
3. MyFacebook FMember = new MyFacebook(Name);
4. for (int i = 0; i < 10; i++)
5. {
6. Console.WriteLine(“Give Me the Next Friend Name!”);
7. if (!FMember.AddFriend(Console.ReadLine()))
8. i–;
9. }
10. string st = FMember.getFriends();
11. Console.WriteLine(st);
}
לפי הקוד בשורה 7 כיצד מוגדרת המתודה AddFriend?
a. המתודה מוגדרת כחלק מהמחלקה MyFacebook, היא מקבלת מחרוזת כארגומנט ומחזירה ערך בוליאני.
b. המתודה מוגדרת כחלק מהמחלקה MyFacebook, היא מקבלת ערך בוליאני כארגומנט ומחזירה ערך בוליאני.
c. המתודה מוגדרת כחלק מהמחלקה MyFacebook, אך לא ניתן לדעת מהקוד המוצג מה היא מקבלת כארגומנטים ומה מחזירה.
d. אף תשובה אינה נכונה.

A

a. המתודה מוגדרת כחלק מהמחלקה MyFacebook, היא מקבלת מחרוזת כארגומנט ומחזירה ערך בוליאני.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

ג. מהי מחלקה בשפת C# ?

a. תכונה של אובייקט
b. הגדרה אבסטרקטית של סוג אובייקטים מסויים
c. מופע של אובייקט
d. כל התשובות נכונות

A

b. הגדרה אבסטרקטית של סוג אובייקטים מסויים

17
Q

static void Main(string[] args)
{
1. Console.WriteLine(“What Is Your Name?”);
2. string Name = Console.ReadLine();
3. MyFacebook FMember = new MyFacebook(Name);
4. for (int i = 0; i < 10; i++)
5. {
6. Console.WriteLine(“Give Me the Next Friend Name!”);
7. if (!FMember.AddFriend(Console.ReadLine()))
8. i–;
9. }
10. string st = FMember.getFriends();
11. Console.WriteLine(st);
}
ה. האם ניתן להשתמש במשתנה i (המופיע בשורה 4 בקוד לעיל) לעיל בשורה 11 על מנת להדפיסו שם?
a. כן ניתן כי הוא משתנה גלובלי של המתודה
b. לא ניתן כי הוא מוגדר כמשתנה לוקאלי של הלולאה
c. כן ניתן כי הוא מוגדר החל משורה 4 והלאה עד סוף התכנית
d. אף תשובה אינה נכונה
ו. מהי משמעות המילה השמורה newבשפת C#?
a. זהו אופרטור המקצה זיכרון לכל משתנה חדש בתכנית

A

b. לא ניתן כי הוא מוגדר כמשתנה לוקאלי של הלולאה

18
Q

ו. מהי משמעות המילה השמורה newבשפת C#?

a. זהו אופרטור המקצה זיכרון לכל משתנה חדש בתכנית
b. זהו אופרטור המפעיל את הבנאי של המחלקה כדי ליצור אובייקט חדש
c. זהו אופרטור המקצה זיכרון עבור אובייקט חדש שנוצר
d. תשובות b וc נכונות.

A

d. תשובות b וc נכונות.

19
Q

static void Main(string[] args)
{
1. Console.WriteLine(“What Is Your Name?”);
2. string Name = Console.ReadLine();
3. MyFacebook FMember = new MyFacebook(Name);
4. for (int i = 0; i < 10; i++)
5. {
6. Console.WriteLine(“Give Me the Next Friend Name!”);
7. if (!FMember.AddFriend(Console.ReadLine()))
8. i–;
9. }
10. string st = FMember.getFriends();
11. Console.WriteLine(st);
}
, מה משמעות הקוד בשורה 10 ?
a. קריאה למתודה getFriends של האובייקט FMember שמחזירה מחרוזת
b. לא ניתן לדעת כי אינה מוגדרת כאן
c. העתקת הערך שבאטריבוט getFriends של האובייקט FMember למחרוזת
d. הגדרת מתודת getFriends של המחלקה MyFacebook

A

a. קריאה למתודה getFriends של האובייקט FMember שמחזירה מחרוזת

20
Q

ח. האם ניתן להמיר מספר שלם לdouble בשפת C#?

a. ניתן על ידי casting (double)
b. ניתן על ידי השימוש בParse ()
c. ניתן על ידי השימוש בToString()
d. כל התשובות נכונות

A

a. ניתן על ידי casting (double)