• Non ci sono risultati.

Programmazione I Laboratorio

N/A
N/A
Protected

Academic year: 2021

Condividi "Programmazione I Laboratorio"

Copied!
6
0
0

Testo completo

(1)

Programmazione I

Laboratorio

dott. Sabrina Senatore

Dipartimento di Matematica e Informatica

(2)

Esercizio

  Scrivere una funzione con il seguente prototipo

char ultimo(char s[]),

  che restituisca l'ultimo carattere della

stringa (data in input o da programma).

dott.ssa Sabrina Senatore DMI - Universita degli Studi di Salerno

(3)

Soluzione

dott.ssa Sabrina Senatore Universita degli Studi di Salerno

#include <stdio.h>

#define N 81

char ultimo(char s[]) {

int i;

for (i=0; s[i] != '\0'; i++);

return s[i-1];

}

void main() {

char s1[]="Buongiorno";

printf("L'ultimo carattere della stringa \"%s\" e':

'%c'\n",s1,ultimo(s1));

(4)

  Dato un array a di 10 interi e si chiede di scrivere una funzione che costruisca un array int * p di 10 puntatori ad int nel modo seguente:

  si assegna ad ogni posizione p[i] di p un puntatore ad a [i] (p [0] punta ad a[0], etc.)

  Poi si ordina p secondo il valore cui puntano i p[i], cioe’ in modo che *p[0], *p[1], *p[2] ecc. siano in ordine crescente (senza modificare a).

8-11-2011

Esercizio

4

12 23 4 12 23 4

x y z a

p z x y

(5)

dott.ssa Sabrina Senatore I - Universita degli Studi di Salerno

Esercizio

#include <stdio.h>

#define DIM 10

void build(int [], int *[]);

void swap (int **, int **) ; void print(int *[]);

void ordina(int *[]);

int main() {

int arr[]={10, 4, 5, 6, 7, 2, 3, 1, 9, 8} ; int *punt[DIM];

build(arr, punt);

printf("prima:\n");

print(punt);

ordina(punt);

printf("dopo l'ordinamento:\n ");

print(punt);

return 0;

}

(6)

10-11-2011 dott.ssa Sabrina Senatore DMI - Universita degli Studi di Salerno

void ordina(int *p[]){

int i, j;

for(i=1; i<DIM; i++)

for(j=0; j<DIM-i; j++)

if ( *p[ j ] > *p[ j + 1 ] ) swap (p+j, p+j+1) ; }

void swap (int **a, int **b) { int *temp;

temp=*a;

*a=*b;

*b=temp;

}

void build (int a[], int *p[]){

int i;

for(i=0; i<DIM; i++) p[i]=&a[i] ; }

void print(int *a[]){

int i;

for ( i=0; i<DIM; i++)

printf("%d %p \n",*a[i], a[i]);

printf("\n");

}

Riferimenti

Documenti correlati

1) Quale ruolo svolgono il porto di Napoli e Salerno nello sviluppo dei settori economici. 4) Qual è la loro posizione nei confronti della politica “sistema

Appare, a questo punto necessario definire l’obiettivo della ricerca: individuare, cioè, gli strumenti che possano integrare quelli esistenti e supportare

• ANALISI DEL PROBLEMA: Da una analisi della letteratura di riferimento, in materia di Reverse Logistics, ed in particolare di Production Planning esistono pochi studi in letteratura

Dispense (if done) or administration coincide with the recording of the consumption of medicine used from medical unit virtual stock, so that warehouse management system is always

L’obiettivo della ricerca è stato quello di identificare i fattori che consentono di incentivare ed enfatizzare l’engagement dei dipendenti che lavorano presso la

Il public engagement, e cioè le miriade di possibilità con le quali le università possono condividere le proprie attività di ricerca e di didattica, può

The thesis concludes by claiming that public engagement is another “P” in the higher education marketing mix, and by highlighting characteristics, benefits and consequences of

I risultati della ricerca, hanno mostrato che, quando l’alleanza coinvolge categorie di prodotto alle quali il consumatore associa valori meno “mobili”, come ad esempio la