LSz.Ro

  
Scrie un subiect nou Acest subiect este închis, nu puteţi modifica mesaje sau să scrieţi răspunsuri viitoare.  Pagina 1 din 1
[ View Topic Options ] [ ‹‹ | ›› ]
Autor
 
Neconectat
 Subiectul mesajului: C] Standard#4 ~ Citirea si scrierea din consola.
MesajScris: 11 Dec 2016, 15:37 
Membru
Avatar utilizator
Membru din: 07 Oct 2016, 18:50
Mesaje: 487
Vârsta: 16
Citirea si scrierea sunt de baza in acest limbaj, fie ca se citeste dintr-un fisier sau dintr-o consola.

Astfel citirea din consola este ceea ce vom invata pentru inceput, iar dupa ce ne vom obisnui cu ea vom trece si la cea de fisiere.



Citirea in C difera de cea din C++, deoarece in C++ s-a decis ca sistemul dezolvat in C este prea invechit, astfel avem asa :

exemplul in C :

Cod:
#include <stdio.h>
 
int main ()
{
    printf("Intoduceti un numar : \n"); // Printarea clasica a unui text.
    int i;
    scanf("%d", &i); // citirea unui numar
    printf("Numarul ales de tine a fost %d \n", i); // printarea unui numar
    printf("Intoduceti si un caracter : \n");
    char c;
    getchar(); // voi explica mai jos folosirea acestei functii.
    scanf("%c", &c); // citirea unui caracter
    printf("Caracterul ales de tine a fost '%c' \n", c);
 
    return 0;
}


Functii utilizate :

scanf(); - Cu aceasta functie vom scana din consola ceea ce vrem sa citim.

Functia se poate folosi in mai multe feluri :

int i;

scanf("%d", &i); // "%d" inseamna ca vrem ca sa citim un numar in baza 10, &i este defapt pozitia RAM a obiectului i, noi va trebui sa ii oferim pozitia pentru ca functia sa stie unde sa salveaze valoarea.

astfel putem folosi scanf in urmatorul fel :

%d = citire de numar intreg

%c = citire de caracter

%f = citire de float

int i;

char c;

float f;

scanf("%d %c %f", &i, &c, &f); // vom citi de la tastatura un numar intreg, un caracter si un numar rational (cu virgula).

Pentru a se intelege mai usor functia o putem imparti in 2 :

1. Partea in care scriem ce vrem sa citim : "%d %d %c %f %d" // vom citi 2 int-uri, un char, un float dupa iar int

2. Partea in care salvam ceea ce am citit : &i, &in, &c, &f, &int

unde i, in si int sunt obiecte de tip INT, c este CHAR si f este FLOAT.



getchar() - Aceasta functie are un rol destul de important, deoarece dupa ce am citit in programelul de mai sus numarul, noi am apasat ENTER, iar programul stie ca am facut aceasta miscare, cu acesta functie vom elimina enter-ul scris de noi, alfel il vom citi ca si caracter.

Sunt 2 metode de a evita enterul :

1. Varianta mot-a-mot :

getchar(); // citim caracterul dar nu facem nimic cu el

scanf("%c", &c); // citim doar urmatorul caracter

2. Varianta rapida :

scanf(" %c", &c); // acel spatiu spune calculatorului ca vrem sa evitam primul caracter citit.



printf() - Acesta functie are rostul de a printa in conola ceea ce scriem noi, functia este formata pe aceasi baza ca si scanf() :

1. Prima parte unde scriem ceea ce vrem ex : "Intoduceti numele de familie" sau unde putem pune valoarea unei variabile ex : "Varsta dumneavoastra este de %d", unde %d va fi inlocuit cu un int.

2. Partea in care scriem obiectele care le folosim :

int a = 16, b = 20;

print("Varsta dumneavoastra este intre %d si %d ani.", a, b); // se va afisa : Varsta voastra este intre 16 si 20 ani.





IMPORTANT : Functia gets() folosita de unii pentru a citii un string este nesigura ! Se recomanda sa nu se foloseasca, cand voi ajunge la capitolul string-uri voi explica de ce.



Nu uitati, incepand de acum se poate lucra in mod individual, va las aici un sinte unde se pot face probleme : http://infonline.pbinfo.ro/?pagina=prob ... =6&start=0

Va faceti cont si trimiteti codul de fiecare data si nu va lasati pana nu faceti 100 puncte !



Sus
  Profil  
 
Neconectat
 Subiectul mesajului: Re: C] Standard#4 ~ Citirea si scrierea din consola.
MesajScris: 11 Sep 2017, 21:32 
Moderator Global
Avatar utilizator
Membru din: 04 Sep 2017, 21:22
Mesaje: 6
Localitate: Pitesti
:closed:



Sus
  Profil  
 
 Subiectul mesajului: C] Standard#4 ~ Citirea si scrierea din consola.
MesajScris: 11 Sep 2017, 21:32 
Avatar Robotel

Recrutam Staff si servere! Multumim!
Sus
 Profil Trimiteţi mesaj privat E-mail  
Afişează mesajele din ultimele:  Sortează după  
Scrie un subiect nou Acest subiect este închis, nu puteţi modifica mesaje sau să scrieţi răspunsuri viitoare. [ ‹‹ | ›› ]


Cine este conectat

 

Utilizatorii ce navighează pe acest forum: Niciun utilizator înregistrat şi 1 vizitator


Nu puteţi scrie subiecte noi în acest forum
Nu puteţi răspunde subiectelor din acest forum
Nu puteţi modifica mesajele dumneavoastră în acest forum
Nu puteţi şterge mesajele dumneavoastră în acest forum
Nu puteţi publica fişiere ataşate în acest forum

Căutare după:
Mergi la:  
Termeni de utilizare | Politica de confidenţialitate

Designs by LSz.Ro Team.

Toate drepturile sunt rezervate.


Translation/Traducere: phpBB România