Kezdőoldal » Számítástechnika » Programozás » C++, hogy kell úgy adatot...

C++, hogy kell úgy adatot bekérni, ha meg van adva hány sor és hány karakter lehet?

Figyelt kérdés

#include <stdio.h>


int getline(char s[], int lim) {

int i;

char c;

for (i = 0; i<lim && (c = getchar()) != '\n' && c != EOF; ++i)s[i] = c;

s[i] = '\0';

while (c != '\n'&& c != EOF)c = getchar();

return i;

}


void main(void){

char s[128];

int i, h = 0;


h = getline(s, 128);


for (i = 0; i <= h; i++){

printf("%c", s[i]);

}

printf("\n");

}


2014. jan. 20. 18:31
 1/8 uno20001 ***** válasza:

Ez C-ben van, de elvileg működnie kell:


#include <stdio.h>

int main(void){

char c[999];

scanf("%5s", &c);

printf("%s", c);

return 0;

}


A scanf-ben a %-jel és a típus (vagyis az "s") között van a max hossz.

2014. jan. 20. 19:02
Hasznos számodra ez a válasz?
 2/8 anonim ***** válasza:

void main fúj


amúgy kifelejtettél sok mindent a kérdésből..


például mit csináljon a program, ha nem úgy van? több van egy sorban?

2014. jan. 20. 19:20
Hasznos számodra ez a válasz?
 3/8 anonim ***** válasza:
A main függvénynek int-et kell visszaadnia, nem voidot. Ha rendben lefutott, akkor 0-val térjen vissza.
2014. jan. 20. 20:20
Hasznos számodra ez a válasz?
 4/8 uno20001 ***** válasza:
Elnézést, ha hibáztam. Arra mentem, hogy jól lefusson a kód, és, így is lefut.
2014. jan. 20. 20:56
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:
szerintem világos, hogy nem neked szólt..
2014. jan. 20. 21:16
Hasznos számodra ez a válasz?
 6/8 uno20001 ***** válasza:

Ja! :-)

Akkor újra elnézést, már össze-vissza jár az agyam, rá se néztem nagyon a kérdező kódjára. :-)

2014. jan. 20. 21:20
Hasznos számodra ez a válasz?
 7/8 A kérdező kommentje:
Bocsi de nagyon az alapoknál vagyok de ha nem megfelelőt visz be akkor lépjen ki vagy ìrja ki hogy nem jó màst írjon be!
2014. jan. 21. 11:56
 8/8 uno20001 ***** válasza:

Megint csak C-s kódot tudok írni, de Cpp-ben is működnie kell:

Egyszerű, csak egyszer:

#include <stdio.h>

int main(void){

char c[999];

scanf("%s", &c);

if(strlen(c) <= 5){

printf("Ok: %s", c);

}else{

printf("Rossz!");

}

return 0;

}


Ez pedig ciklusban van, addig kérdez be, ameddig nem lesz megfelelő hosszúságú a string:


#include <stdio.h>

int main(void){

char c[999];

scanf("%s", &c);

while(strlen(c)>5){

printf("Rossz, írja be újra: ");

scanf("%s",&c);

}

printf("Jó!");

return 0;

}

2014. jan. 21. 18:11
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!