İYi günler.

C++ ile struct, pointer çalışması yapıyorum konuyu öğrenme amaçlı.

Yalnız yazdığım kodlarda hep hata veriyor. C++ a yabancı olduğum için de çözemedim. Biri yardımcı olabilir mi? Yapmak istediğim şey şu. Öğrenci adlı bir struct ve onun içerisinde de derslerin bulunduğu bir struct olacak. bu bilgileri alan ve yazdıran da metod olacak. Kodlarım aşağıda.

#include <iostream>
using namespace std;
struct ogrenci
{
    char adi[30];
    char soyadi[30];
    int yas;
    int derssayisi;
    dersnot *dersler;
};
struct dersnot
{
    char dersadi[50];
    int not;
};
ogrenci ogrencibilgial()
{
    ogrenci ogrencim;
    cout << "Öğrenci adı:"; cin >> ogrencim.adi;
    cout << "\\nÖğrenci soyadı:"; cin >> ogrencim.soyadi;
    cout << "\\nÖğrenci yaşı:"; cin >> ogrencim.yas;
    cout << "\\nDers sayısı:"; cin >> ogrencim.derssayisi;
    ogrencim.dersler = new dersnot[ogrencim.derssayisi];
    for (int i = 0; i < ogrencim.derssayisi; i++)
    {
        cout << "\\n" << i << ". ders adı:"; cin >> ogrencim.dersler[i].dersadi;
        cout << "\\n" << i << ". ders notu:"; cin >> ogrencim.dersler[i].not;
    }
    return ogrencim;
}
void ogrenciyazdir(ogrenci ogrencim)
{
    cout << "\\nÖğrenci adı:" << ogrencim.adi;
    cout << "\\nÖğrenci Soyadı:" << ogrencim.soyadi;
    cout << "\\nÖğrenci yaşı:" << ogrencim.yas;
    for (int i = 0; i < ogrencim.derssayisi; i++)
    {
        cout <<"\\n"<< i << "." << "Öğrenci dersadı:" << ogrencim.dersler[i].dersadi;
        cout <<"\\n"<< i << "." << "Öğrenci ders notu:" << ogrencim.dersler[i].not;
    }
}

Bunu kullanan c++ main dosyam da aşağıda.

#include <iostream>
#include "ogrenci.h"
using namespace std;
void main()
{
    ogrenci ogrencim;
    ogrencim=ogrencibilgial();
    ogrenciyazdir(ogrencim);
}

Tabii birsürü hata çıkıyor. Yardımcı olabilecek biri var mı? Teşekkürler.

soruldu: 29 Mar '14, 12:05

kaptan's gravatar image

kaptan
445334244
cevap kabul oranı: 0%


Kısaca bir bakalım (çok iyi c++ bildiğimi iddia etmiyorum. gcc ye verdiom kodu hatalara baktım derledim o kadar).

  1. ogrenci.h dosyası senin örneğinde yok ?
  2. not kelimesini dğeişken olarak kullanmana itiraz ediyor.
  3. struct sıralamalarında problem var
  4. main metodu void

düzeltilmiş halini yazmayacağım. bu bilgiler ışığında düzeltirsin diye umuyorum.

başarılar

permanent link

cevaplandı: 31 Mar '14, 03:29

myururdurmaz's gravatar image

myururdurmaz
2.2k11027
cevap kabul oranı: 23%

Teşekkürler. 1-ogrenci.h dosyası üstteki. alttaki de main dosyam. sanırım belirtmemişim onu. 2-not kelimesini değişken olarak kullanmada sorun yaşamadım. 3-c++ da sıralamaya da önem vermek gerekiyormuş evet öğrendim teşekkürler :) Diğer dillerde problem yaşamadığım için bu mantıkta... 4- main metodu void derken? visual studioda böyle kullanımda sorun vermedi. dev c++ ta vs. return etmek gerekiyor sanırım. Problemleri çözdüm sayılır bu arada. hatasız çalışıyor şu an. Teşekkürler.

(31 Mar '14, 07:45) kaptan kaptan's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×45
×4
×3

Soruldu: 29 Mar '14, 12:05

Görüntüleme: 733 kez

Son güncelleme: 31 Mar '14, 07:45

powered by BitNami OSQA