C ile ilgili yardımınız gerekiyor Çok acil

Başlatan belgiryon, 19 Kasım 2018 - 04:07:40

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

belgiryon

#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
#include <locale.h>

int main(int argc, char *argv[])

{
int t;
int i=0;
char Name[50];
char Snew[50]="Hello! ";

scanf("%s",&Name);



Bu şekilde bir giriyoruz kullanıcıdan bir isim alıyorum örneğin mehmet (mehmet ismi 6 harf den oluşuyor) char uzunlugum 50 kelime geriye kalan 44 haneyi @@@@@@@ sembolü ile doldurmak istiyorum

Örnek
MEHMET@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ne zaman 50 ye gelecek ozaman durması gerekecek

döngüyü for ile yapmam gerekiyor yardımcı olursanız sevinirim yarı yıl ödevim vermem gerekiyor yapamadım

edge35

Name değişkeninin içeriğine [] ile harf harf erişebilirsiniz. Örneğim: char name[20] = "abcdefghıijklmnoöpre";
for(int i = 0; i<20; i++)
{
    printf("%d -> %c\n", i,name[i]);
}

kodu ile harf harf ekrana yazdırabilirsiniz.

Aynı şekilde içeriğini de değiştirebilirsiniz. Örnek olarak aşağıdaki kodu ve çıktısını inceleyiniz.

char name[20] = "abcdefghijklmnopres";
name[5]='X';
name[6]='X';
name[7]='X';
printf("%s\n",name);


Sorunlarımı çözerken her şeyiyle öğrenmeye çalışıyorum. Bana balık verenden Allah razı olsun, ama bana balık tutmayı öğretenden Allah daha çok razı olsun :)

belgiryon

Dediğiniz şekilde yaptım ama sonuç doğru değil
Benim anlatmak istediğim olay şu

kullanıcıdan bir char a bağlı olarak bir isim alıyorum rakam değil!!!!

Char[40];
scanf("%s",&Name);

for(int i=0;i<=40;i++){
printf("%d -> %c\n", i,Name [i] );
}

bu yaptıgım şey yazdığım ismi adres vererek göstermek olacak
0-> S
1->E
2->R
3->K
4->A
5->N

bu şekilde ama bana
6->@
7->@
8->@
...
40->@

bu şekilde son bulacak isimden sonraki adresler sembol işareti ile dolacak

edge35

Ben zaten ödevinizi yapmadım, sadece yol gösterdim. Konu üzerine biraz düşünmenizi tavsiye ederim.


Sorunlarımı çözerken her şeyiyle öğrenmeye çalışıyorum. Bana balık verenden Allah razı olsun, ama bana balık tutmayı öğretenden Allah daha çok razı olsun :)

belgiryon

name ismine @ tanımlayıp o şekilde yapabileceğimi söylüyorsunuz ama o şekilde öğretmen kabul etmedi bunu ilk başta denemiştim

007

#5
Fazla bir bilgim yok. ASCII kod değiştirme karekter değişimleriyle olma ihtimali vardır belki. Boşluk karakteri değeri 0 veya 32, @ karakteri ASCII 64.

#include<stdio.h>

int main()

{
    char kucuk_a=97, buyuk_a; //97 ASCII'deki kucuk a'nın degeri
   
    printf("Kucuk a harfini giriniz: %c \n", kucuk_a);
   
    buyuk_a = kucuk_a - 32;
   
    printf("Buyuk A harfinin ciktisi: %c \n", buyuk_a);
   
    getch();
    return 0;
}


Soruyu biraz anlayınca yazdığım baya saçma olmuş. :)
2 kuruşluk ben EMİR VEREN 4 kuruşlukların 5 kuruşluk işlerini yaparım.

vud0

Merhaba,

Aşağıdaki kod sanırım istediğiniz gibi. Daha pratik bir yolu mutlaka vardır.


#include <stdio.h>
#include <string.h>

int main(int argc, char const *argv[])
{
    char name[50];

    printf("Enter name: ");
    scanf("%s",name);

    int i = 0;
    int len = strlen(name);

    for (i=0;i < len;i++)
    {
        printf("Name[%d] = %c\n",i,name[i]);
    }

    for (int a=len; a < (50); a++)
    {   
        name[a+1] = '@';
        printf("Name[%d] = %c\n",a+1, name[a+1]);
    }
   
    return 0;
}


Kolay gelsin.

belgiryon

[mention=643242]@vud0[/mention]
nasıl bir kralsın bilemezsin :D ;) ;) ellerine sağlık