C programlama soruları

msyucel
03-06-2018, 17:39   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Soru çözüldü @root__'a çok teşekkür ederim konu kilit.

Son Düzenleme: msyucel ~ 10 Haziran 2018 17:06 Neden: İmla
root__
04-06-2018, 20:07   |  #2  
Taze Üye
Teşekkür Sayısı: 1
6 mesaj
Kayıt Tarihi:Kayıt: Haz 2018

sorularınızı paylaşırsanız yardımcı olmaya çalışırım

msyucel
04-06-2018, 21:07   |  #3  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Bu sorulardan herhangi 2 tanesi lazım https://i.hizliresim.com/dBW1k4.jpg

Son Düzenleme: msyucel ~ 04 Haziran 2018 22:12 Neden: resim düzenlendi
root__
04-06-2018, 23:24   |  #4  
Taze Üye
Teşekkür Sayısı: 1
6 mesaj
Kayıt Tarihi:Kayıt: Haz 2018

kusura bakmayın ilk soruda linki görmemişim,şans bugün başka bir forumda en üstteki soruya cevap vermiştim, bir tane daha çözüp yine bu mesajı düzenleyerek paylaşacağım birazdan

kontrol ifadeleri eklenebilir ve daha çok süslenebilirdi,text dosyalarından kullanıcılar alınıp yeni kullanıcılar oraya kaydedilebilirdi, size tavsiyem kodu o hale getirmeniz ödevinizi vermeden.Basit bir halde yazdım ve uzun uzun kontrolden geçiremedim, bir sorun çıkarsa özel mesaj ile ulaşabilirsiniz.

#include <stdio.h>

typedef struct {
       
        char isim[50],soyisim[50];
        int yas,tc;
       
}hasta;


int main()
{        hasta hasta[100];       
int input,secim,i,j=0;
while(1)
{getch();
system("cls");
                printf("ABC hastanesi otomasyon sistemi");
                printf("\nHasta kaydi eklemek icin 1\nKullanici arama icin 2\nTum kullanicilari goruntulemek icin 3 u tuslayin");
                scanf("%d",&secim);
                fflush(stdin);
switch(secim)
{       
        case 1:
                printf("Hasta ismi giriniz:");
                gets(hasta[j].isim);
                printf("Hasta soyismi giriniz:");
                gets(hasta[j].soyisim);
                printf("Hasta yasini giriniz");
                scanf("%d",&hasta[j].yas);
                printf("Hasta tcsini giriniz:");
                scanf("%d",&hasta[j].tc);
        break;
        case 2:printf("Bulmak istediginiz kayitin TC sini giriniz:");
                scanf("%d",&input);
                for(i=0;i<100;i++)
                        if(input==hasta.tc)
                        {
                        printf("AD: %s\nSOYAD:%s,YAS:%d,TC:%d",hasta.isim,hasta.soyisim,hasta.yas,hasta.tc);
                break;               
                }       
                if(i==100)printf("Kullanici bulunamadi");               
                break;
                case 3:
                        printf("\nTum kullanicilar listeleniyor");
                        printf("\nAD\t\t\tSOYAD\t\t\tYAS\t\t\tTC");
                        for(i=0;i==j;i++)
                        printf("\n%s\t\t\t%s\t\t\t%d\t\t\t%d",hasta.isim,hasta.soyisim,hasta.yas,hasta.tc);
                       
        break;
       
        default: printf("Gecersiz giris");
}}}

Son Düzenleme: root__ ~ 04 Haziran 2018 23:42
root__ bu faydalı yanıtı için aşağıdaki 1 kişiden teşekkür aldı... [ Göster ]
msyucel
05-06-2018, 00:14   |  #5  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

if(input==hasta.tc) burada hata veriyor sebebi ne olabilir?

Son Düzenleme: msyucel ~ 08 Haziran 2018 11:01
root__
09-06-2018, 14:53   |  #6  
Taze Üye
Teşekkür Sayısı: 1
6 mesaj
Kayıt Tarihi:Kayıt: Haz 2018

Şuan nasıl olduğuna hiç anlam veremediğim bir hata yapmışım, ama kodu 2-3 defa çalıştırarak gönderdiğime de eminim, şu halini kullanın, yine bir sorun olursa özelden yazarsanız aynı gün içerisinde cevaplarım,gecikme için kusura bakmayın


şimdi anladım, buraya kodu aktarırken bazı köşeli parantezler ve içerisi aktarılmıyor.

satır 36 da hastaKOSELIPARANTEZICERISINDE i .tc şeklinde

satır 38 de her hastadan sonra KOSELIPARANTEZICERISINDE i olacak şekilde

yine satır 47de de her 'hasta' dan sonra  yani printf("xxx %d xxx %s xx", hastaKOSELIPARANTEZICERISINDE i .isim ...); olacak şekilde düzenleme yaparsanız kod sorunsuz çalışacaktır, bir sorun olursa yukarıda da dediğim gibi özelden ulaşabilirsiniz

Son Düzenleme: root__ ~ 09 Haziran 2018 14:58
msyucel
09-06-2018, 15:25   |  #7  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Ben de inceledikten sonra köşeli parantezleri koymuştum sadece getch(); kısmında hata alıyordum conio kütüphanesini ekleyince o da halloldu fakat system ("cls") de hata veriyor .İsminizde özel karakter olduğu için özelden mesaj atılamıyor kusura bakmayın.

Son Düzenleme: msyucel ~ 09 Haziran 2018 15:31 Neden: İmla
msyucel
09-06-2018, 15:44   |  #8  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Son hali aşağıdaki gibi oldu.Fakat satır 39 if(input==[hasta].tc) olan yerde hata veriyor.(For dan sonra { açmama rağmen)

#include  <stdio.h>
#include  <conio.h>
#include  <stdlib.h>

typedef struct {
        
        char isim[50],soyisim[50];
        int yas,tc;
        
}hasta;


int main()
{        hasta hasta[100];        
int input,secim,i,j=0;
while(1)
{
getch();
system("cls");
                printf("ABC hastanesi otomasyon sistemi");
                printf("\nHasta kaydi eklemek icin 1\nKullanici arama icin 2\nTum kullanicilari goruntulemek icin 3 u tuslayin");
                scanf("%d",&secim);
                fflush(stdin);
switch(secim)
{        
        case 1:
                printf("Hasta ismi giriniz:");
                gets(hasta[j].isim);
                printf("Hasta soyismi giriniz:");
                gets(hasta[j].soyisim);
                printf("Hasta yasini giriniz");
                scanf("%d",&hasta[j].yas);
                printf("Hasta tcsini giriniz:");
                scanf("%d",&hasta[j].tc);
        break;
        case 2:printf("Bulmak istediginiz kayitin TC sini giriniz:");
                scanf("%d",&input);
                for(i=0;i<100;i++)
                        if(input==[hasta].tc)
                        {
                        printf("AD: %s\nSOYAD:%s,YAS:%d,TC:%d",[hasta].isim,[hasta].soyisim,[hasta].yas,[hasta].tc);
                break;               
                }        
                if(i==100)printf("Kullanici bulunamadi");               
                break;
                case 3:
                        printf("\nTum kullanicilar listeleniyor");
                        printf("\nAD\t\t\tSOYAD\t\t\tYAS\t\t\tTC");
                        for(i=0;i==j;i++)
                        printf("\n%s\t\t\t%s\t\t\t%d\t\t\t%d",[hasta].isim,[hasta].soyisim,[hasta].yas,[hasta].tc);
                        
        break;
        
        default: printf("Gecersiz giris");
}
}
}

Son Düzenleme: msyucel ~ 09 Haziran 2018 16:03 Neden: İmla
root__
10-06-2018, 00:37   |  #9  
Taze Üye
Teşekkür Sayısı: 1
6 mesaj
Kayıt Tarihi:Kayıt: Haz 2018

biraz yanlış anlaşıldım, hata bende, düzelteyim

<> şu işaretler köşeli parantez olsun

hasta<i>.tc gibi olmalı koşeli parantez i yi içerisine almalı yani, bütün bölümlerde

msyucel
10-06-2018, 02:07   |  #10  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Hala if(input== hasta<i>.tc) olan yerde hata alıyorum sanırım olmayacak çok şey denedim.

root__
10-06-2018, 16:17   |  #11  
Taze Üye
Teşekkür Sayısı: 1
6 mesaj
Kayıt Tarihi:Kayıt: Haz 2018

dostum ben çalıştırıp gönderdim kodu,dün tekrar çalıştırdım, özelden ulaşırsan yardımcı olacağım burayı meşgul etmeyelim daha fazla

msyucel
10-06-2018, 16:32   |  #12  
OP Taze Üye
Teşekkür Sayısı: 0
9 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

özelden ulaşmaya çalışıyorum fakat forumda özel mesaj kısmına adınızı yazınca çıkmıyor.