umuttoksal
Femtopat
- Katılım
- 25 Şubat 2024
- Mesajlar
- 8
Daha fazla
- Cinsiyet
- Erkek
Kod:
1. soru Bir student adında bir struct tanımlayınız.
o Struct içerisinde 50 karakterlik öğrenci isimlerini tutan bir dizi, puan bilgisi
ve öğrenci sıra bilgisi tutulacaktır.
For döngüsü kullanılarak 3 adet öğrenci için isim ve puan bilgisi girilecektir.
(Görseldeki gibi)
Yine for döngüsü kullanılarak tüm girilen bilgiler ekrana yazdırılacaktır.
CEVAP
#include <stdio.h>
struct student
{
char isim[50];
int sira;
float puan;
} s[10];
int main()
{
int i;
printf("Ogrenci Bilgilerini Giriniz:\n");
for(i=0; i<3; ++i)
{
s[i].sira = i+1;
printf("\nOgrenci Sirasi %d,\n",s[i].sira);
printf("isim Giriniz: ");
scanf("%s",s[i].isim);
printf("Puan Giriniz: ");
scanf("%f",&s[i].puan);
printf("\n");
}
printf("Bilgiler Goruntuleniyor:\n\n");
for(i=0; i<3; ++i)
{
printf("\n Sira numarasi: %d\n",i+1);
printf("isim: ");
puts(s[i].isim);
printf("puan: %.1f",s[i].puan);
printf("\n");
}
return 0;
}
2. SORU Bir fonksiyon yaratınız. Bu fonksiyon bir for döngüsü yardımı ile kullanıcı tarafından
girilen sayıya kadar olan tüm sayıların toplamını tutan bir fonksiyon olacaktır.
Main alanında kullanıcıdan bir değer girmesini isteyeceksiniz ve fonksiyon çağrılarak
sonuç ekrana yazdırılacaktır.
CEVAP
#include <stdio.h>
int seriToplama(int x) {
int toplam = 0;
for(int i = 1; i <= x; i++){
toplam = i + toplam;
}
return toplam;
}
int main()
{
int x;
printf("\nx degeri giriniz :\n");
scanf("%d",&x);
int seriToplam = seriToplama(x);
printf("\nx icin seri toplam: %d \n", seriToplam);
return(0);
}
3.SORU Ekrandaki görseli oluşturunuz.
Dizi mantığını kullanarak kullanıcıdan değer girmesini isteyiniz.
Girilen değerleri pointer mantığını kullanarak for döngüsü ile toplayıp, soncu ekrana
yazdırınız.
CEVAP
#include <stdio.h>
int main()
{
int dizi[10];
int i,n, sum = 0;
int *pt;
printf("\n\n Bir dizideki tum elemanlari topla :\n");
printf("------------------------------------------------\n");
printf(" Toplanacak sayilari giriniz (en fazla 10 girilebilir) : ");
scanf("%d",&n);
printf(" %d adet sayi giriniz : \n",n);
for(i=0;i<n;i++)
{
printf(" Deger - %d : ",i+1);
scanf("%d",&dizi[i]);
}
pt = dizi;
for (i = 0; i < n; i++) {
sum = sum + *pt;
pt++;
}
printf(" Tum dizinin Toplami : %d\n\n", sum);
}
4.SORU Kullanıcıdan dizinin kaç elemanlı olacağı bilgisini isteyiniz.
While döngüsü kullanarak eleman sayısı kadar kullanıcıdan değer girmesini isteyiniz.
For döngüsü kullanarak kullanıcının girdiği değerleri tersten yazdırınız.
CEVAP
#include <stdio.h>
int main()
{
int n;
int dizi_uzunlugu;
printf("\nDizi uzunlugunu giriniz:\n");
scanf("%d", &dizi_uzunlugu);
n = dizi_uzunlugu;
int dizi[n];
int i = 0;
while(n > 0) {
printf("%d. elemani giriniz:\n" , i+1);
scanf("%d", &dizi[i]);
i++;
n--;
}
printf("\n ters sirada dizi: \n");
for(i = dizi_uzunlugu - 1; i >=0; i--){
printf("%d ", dizi[i]);
}
}
Dosya Ekleri
Son düzenleyen: Moderatör: