S}nav kapal} kitap, s|re 100 dakika, sorular}n hepsi 20 puand}r. Ba~ar}lar

1.      A~ap}daki sorular} cevaplay}n}z (her soru 2 puand}r 1 soru bonustur):

a.      C dilinde sat}r bitirme (statement terminator) operatvr| nedir? Bir C sat}r} yazarak gvsteriniz.

printf(hello world);  

b.     y=y-1 i~lemini vnazaltma (predecrement) kullanarak yeniden yaz}n}z.

--y; // predecrement vnce azaltan demektir post decrement sonra azaltan demektir( vrnepin y--; )

c.      A~ap}daki i~lemin sonucunda z deperi ne olur?

z = ( 7 * 3 + 15 / 3 - (7 % 2));   z= 25 olur

d.     PI say}s}n} bir depi~kenin igerisinde tan}mlay}n}z ve depi~keni ekrana bast}ran kodu yaz}n}z (PI say}s} 3.14t|r)

float PI=3.14;

printf(%f,PI);

Buradan sonraki sorular igin (int i = 1,j=3,k=4;) olarak kabul ediniz ve sonuglar} yan}na yaz}n}z:

Deperler

Sonug

i

j

k

e.                   i && j||k =

1

1

3

4

f.                   j%i*k++=

0

1

3

5

g.                  i/j=

0

1

3

5

h.                  2*i+1<j =

0

1

3

5

i.                    !!k=

1

1

3

5

j.                    J==2 || i != 4

1

1

3

5

k.                  k=++j=

1

1

4

4

  1. Kullan}c}dan iki say} okuyarak bu iki say} aras}ndaki gift say}lar} ekrana bast}ran ve ekrana bas}lan say}lar}n ortalamas}n} en altta gvsteren bir program yaz}n}z. (kullan}c}lardan okunan say}lar}n pozitif oldupunu kabul edebilirsiniz.),

 

 

#include <stdio.h>

int main(){

        printf("bir sayi giriniz:");

        int sayi;

        scanf("%d",&sayi);

        printf("bir sayi daha giriniz:");

        int sayi2;

        scanf("%d",&sayi2);

        int toplam=0;

if(sayi2%2==1)

sayi2++;

        for(int i = sayi;i<sayi2;i+=2){

               printf("%d\n",i);

        toplam+=i;

        }

        printf("toplam : %d",toplam);

        printf("ortalama : %d",toplam/((sayi2-sayi1)/2));

 

}

 

  1. A~ap}daki ~}klar igin ayr} ayr} veya tek bir kod yaz}n}z.

a)Kullan}c}dan bir s}n}fta bulunan vprenci notlar}n} okutan bir program yaz}n}z. Vprenci say}s}n} kolay olsun diye 10 kabul edebilirsiniz. Buna gvre kullan}c} 10 vprenci igin klavyeden not girecektir.

b) a k}sm}nda yap}lan programa ilave olarak notlar}n ortalamas}n}, en b|y|p|n| ve en k|g|p|n| hesaplat}n}z.

c) kullan}c}dan bir not okuyarak yukar}da girilen notlardan birisi olup olmad}p}n} bulunuz. Ekrana kullan}c}n}n daha vnceden girdipi bir not ise not zaten girilmi~, girmedipi bir not ise, bu not daha vnce girilmemi~ yaz}n}z.

#include <stdio.h>

int main(){

        int a[10];

        for(int i = 0;i<10;i++){

               printf("ogrenci %d notunu giriniz",i);

               scanf("%d",&a[i]);

        }

        int enbuyuk=0,enkucuk=100,toplam=0;

        for(i = 0;i<10;i++){

               if(a[i]>enbuyuk)

                       enbuyuk = a[i];

               if(a[i]<enkucuk)

                       enkucuk = a[i];

               toplam += a[i];

        }

        int ortalama=toplam/10;

        printf("en buyuk : %d en kucuk %d ortalama %d",enbuyuk,enkucuk,ortalama);

        printf("bir not daha giriniz");

    int yeninot;

        scanf("%d",&yeninot);

    int x=0;

        for(i = 0;i<10;i++){

               if(yeninot==a[i]){

               x=1;

                       printf("not zaten girilmis");

            break;

        }

        }

        if(x==0){

        printf("not girilmemis");

        }

}

 

 

4.       A~ap}da verilen koddaki hatalar} bularak d|zeltiniz.

#insert <studyo.h>

int main()

{

int num1, num2, average;

printf(Enter 3 numbers: );

scanf(&f&f, num1, num2);

if num1>6 & num2>6

printf(Both %num1 and %num2 are greater than 6.\n);

else

printf(Both %num1 and %num2 are less than 6.\n);

num1+num2 / 2 = average;

printf(The average is %average.\n);

return 0;

}

 

#include <stdio.h>

// include: eklenecek

//studyo -> stdio.h olacak

int main()

{

int num1, num2;

float average;

//average float olmal}d}r

printf("Enter 2 numbers: ");

//2 numbers olarak d|zeltilmeli

scanf("%d%d", &num1, &num2);

//scanf parametreleri d|zelecek

if (num1>6 & num2>6) // parantez hatas}

printf("Both %d and %d are greater than 6.\n",num1,num2);

//printf parametreleri d|zelecek

else

printf("Either %d or %d are less than 6.\n",num1,num2);

//printf parametreleri d|zelecek

//mant}ksal hata d|zelecek

average = (num1+num2) / 2.0;

//atama yvn| d|zelecek

//i~lem vncelipi d|zelecek

 printf("The average is %f.\n",average);

//parametreler d|zelecek

return 0;

}

 

 

5.      PI say}s} a~ap}da verilen form|l ile hesaplanabilir. Al}nan bir say}ya kadar olan hassasiyette hesap yapan kodu yaz}n}z.

 

#include <stdio.h>

#include <conio.h>

int main(){

  float PI=4.0;

  int hassas;

  printf("hasasiyeti giriniz");

  scanf("%d",&hassas);

  for(int i = 3;i<hassas;i+=2){

          if((i/2)%2==0)

                    PI+= 4.0/(float)i;

          else

                    PI-= 4.0/(float)i;

           

  }

  printf("%f",PI);

  getch();

}

 

6.      A~ap}daki kod ekrana ne basar?

#include <stdio.h>
 
int go_on (int x)
{ return  (x++ < 5); }
 
int blop (int y)
{
     int i;
 
     for ( i = y; i--;)
             printf ("blop ");
     printf ("\n");
}
 
int main(void)
{
     int x, i = 0;
 
     while (go_on(x)) 
             blop (++x);
     return 0;
}

 

x deperi belirsiz oldupundan ekranda ne g}kacap} bilinemez