Stringhe di caratteri In linguaggio C.

Slides:



Advertisements
Presentazioni simili
Puntatori Linguaggio C.
Advertisements

Introduzione al linguaggio C++
I tipi Strutturati.
Corso di Fondamenti di Programmazione canale E-O
INFORMATICA Altre Istruzioni di I/O
LINGUAGGIO DI PROGRAMMAZIONE C
Gli Algoritmi di ordinamento
Uso avanzato di C.
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
Introduzione al linguaggio C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A2 Java: le basi del linguaggio.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
String c++.
Iterazione A. Ferrari.
Dati strutturati A. Ferrari.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità G1 Dati strutturati.
Array multidimensionali
Selezione - approfondimento
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Introduzione al linguaggio C Dr. Francesco Fabozzi Corso di Informatica.
INFORMATICA Strutture iterative
Programmazione Procedurale in Linguaggio C++
Caratteri e stringhe di caratteri
Algoritmi Politecnico di Milano C Primi programmi Politecnico di Milano.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 2 – Info B Marco D. Santambrogio – Riccardo Cattaneo –
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Stringhe e Puntatori Marco D. Santambrogio – Ver. aggiornata al 18 Marzo 2013.
Process synchronization
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
Laboratorio di Linguaggi lezione VI Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione XI: I/O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Corso di Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 13 (21 novembre 2008) Programmazione in Java: stringhe e array.
Array Un array è una collezione in sequenza di variabili del medesimo tipo Riferimento con un nome comune Nome_studente1 Nome_studente2. Nome_studenteN.
Funzioni di Libreria per le stringhe DICHIARAZIONI CONTENUTE NEL FILE: char *strcpy( char *dest, const char *sorg ); Copia sorg in dest, incluso il carattere.
INFORMATICA Altre Istruzioni di I/O. © Piero Demichelis 2 Funzioni di I/O Per la lettura e la scrittura da videoterminale il C prevede numerose istruzioni.
A.A. 2010/2011Ambienti di Programmazione per il Software di Base1 (Es. – 6) Ambienti di Programmazione per il Software di Base Le Stringhe in C Input.
Struct, enum, Puntatori e Array dinamici
Strutture di controllo nel C
Esercizi C sui tipi definiti dall’utente
Politecnico di Milano Esercizi Stringhe Ricerca binaria.
Esercizi Puntatori, struct con campi puntatore, puntatori a struct, rapporto tra array e puntatori. FUNZIONI Passaggio di parametri per indirizzo, passaggio.
Politecnico di Milano Esercizi Preparazione alla prima prova intermedia.
Dichiarazioni e tipi predefiniti nel linguaggio C
I File.
Il Linguaggio C.
Le funzioni.
Java base III: Array e Stringhe
4 Tipi di dati & variabili
Biologia Computazionale - Algoritmi
Programmazione di Calcolatori
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e stringhe Marco D. Santambrogio – Ver. aggiornata al 9 Agosto 2013.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni – BCOR Ingegneria Elettronica – BELR Introduzione al C Esercitazione 5 D. Bloisi, A.
LdL - LP1 - lez 11 - ver 6 - aa Linguaggi di programmazione I Stringhe (II) Prof. Luigi Di Lascio Lezione 11.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (II) Istruzioni e strutture di controllo.
Università di Torino – Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a prof. Viviana Bono Blocco 7 – Array.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 8 Aprile 2015.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 26 Marzo 2014.
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
Operatori di incremento e decremento
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (III)
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 14 Marzo 204.
Stringhe In linguaggio C. Stringhe  Un insieme di caratteri in sequenza forma una stringa.  Alcuni linguaggi definiscono per le stringhe uno specifico.
Stringhe Una stringa è un vettore di char con un carattere costante \0 che indica la fine della stringa il terminatore rende differenti gli array di char.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 28 Ottobre 2014.
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
Fondamenti di Informatica L- A Il linguaggio C Tipi strutturati X Y Z … … N … M-1 NomeCognomeRedditoAliquota
Transcript della presentazione:

Stringhe di caratteri In linguaggio C

Stringhe Un insieme di caratteri in sequenza forma una stringa Alcuni linguaggi definiscono per le stringhe uno specifico tipo di dato e offrono metodi specifici per gestire valori di quel tipo. Il linguaggio C non fornisce un tipo di dato specifico per le stringhe che vengono trattate come array di caratteri. char nomeStudente[10];

Le stringhe in C char nomeScuola[]=“Itis” nomeScuola 0 I 1 t 2 i 3 s 4 /0 Nell’esempio viene dichiarato l’array di caratteri nomeScuola e inizializzato con il valore “Itis”. Il numero di elementi dell’array è determinato dalla lunghezza della stringa più 1. L’elemento in più è necessario al linguaggio per memorizzare il carattere terminatore di stringa: \0, conosciuto come il carattere null.

Un esempio

Inizializzazione

Stringhe e … caratteri Attenzione alla differenza tra le seguenti dichiarazioni con inizializzazione. char nota = 'C'; che assegna alla variabile nota di tipo char il valore C char nota[] = "C"; che assegna all’array nota[] la stringa di due caratteri C\0 Un carattere inserito tra apici singoli è trattato come un singolo carattere.

Selezione di un carattere … char nomeScuola[] = ”Itis parma"; nomeScuola[5] = ‘P’; L’assegnamento al sesto elemento di nomeScuola del carattere P modifica la stringa che diviene “Itis Parma”. Il carattere terminatore \0 consente di gestire le stringhe senza conoscerne a priori la dimensione.

Caratteri e codici ASCII In linguaggio C char nomeScuola[] = ”Itis Parma"; int i=0; while(nomeScuola[i]!=’\0’){ printf(“carattere %c ASCII %d\n”, nomeScuola[i], nomeScuola[i]); i++; } … Il codice visualizza ogni elemento sia sotto forma di carattere che di codice ASCII

Esempio funzione che ritorna il numero di caratteri presenti in una stringa

Problema Problema: concatenare due parole immesse dall’utente, aggiungendo la seconda alla prima e inserendo tra le due un carattere spazio. Input: due parole. Output: visualizzare la stringa frutto della concatenazione.

// Concatenazione di stringhe #include <stdio.h> int main() { char p1[25],p2[25],p3[50]; //le tre stringhe int i,j; //indici per scorrere i caratteri printf("Inserisci la prima parola"); scanf("%s”,p1); printf("Inserisci la seconda parola"); scanf("%s”,p2); for(i=0;p1[i]!='\0';i++) p3[i]=p1[i]; //copio i caratteri della prima parola p3[i]=' '; //inserisco uno spazio i++; for(j=0;p2[j]!='\0';j++) p3[i+j]=p2[j]; p3[i+j]='\0'; //inserisco il terminatore printf(“%s”,p3); }

Libreria string.h La libreria string.h rende disponibili molte funzioni standard per gestire le stringhe.: strcpy(stringa1, stringa2) copia stringa2 su stringa1; strncpy(stringa1, stringa2, n) copia i primi n caratteri di stringa2 in stringa1; strcat(stringa1, stringa2) concatena stringa2 a stringa1; strcmp(stringa1, stringa2) confronta stringa2 con stringa1, se sono uguali restituisce 0, se stringa1 è maggiore di stringa2 un valore positivo, altrimenti un valore negativo; intero = atoi(stringa) converte una stringa in un intero; reale = atof(stringa) converte una stringa in un valore in virgola mobile double; intero = strlen(stringa) conta il numero di caratteri di una stringa;