Valaki segítene c ben van egy programom ami nem működik? Kifejtem.
az a része nem működik h kiírja azt hogy "hello (neve változót)" elég kezdő vagyok, adnátok tippeket mit változtassak?
#include <stdio.h>
#include <string.h>
main()
{
char neve[]=" "; // kell egy space a ket idezojel koze
char valasz[]=" "; // kell egy space a ket idezojel koze
printf("Adja meg a nevet: "); scanf("%s", &neve);
printf("Kiirjam a nevet? (igen/nem): "); scanf("%s", &valasz);
printf("%s\n", neve);
int res=strncmp(valasz,"igen",4);
//printf("%d\n", res);
if (res==0)
printf("Hello %s!!!\n", neve);
else
printf("Akkor nem hello!!!");
}
char neve[]=" ";
Ezzel ugye lefoglalsz egy karaktertömböt. Mivel a string-literalod egy ' ' spacet és '\0' lezáró nullát tartalmaz, 2 helyet foglal neki. Ebbe nyilván nem fog beleférni 5 karakter.
Javítás: char neve[5].
#include <stdio.h>
#include <string.h>
main()
{
char neve[5]=" "; // kell egy space a ket idezojel koze
char valasz[4]=" "; // kell egy space a ket idezojel koze
printf("Adja meg a nevet: "); scanf("%s", &neve);
printf("Kiirjam a nevet? (igen/nem): "); scanf("%s", &valasz);
printf("%s\n", neve);
int res=strncmp(valasz,"igen",4);
//printf("%d\n", res);
if (res==0)
printf("Hello %s!!!\n", neve);
else
printf("Akkor nem hello!!!");
}
még nem működik, mi lehet a baj?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!