Пример #1
0
int main()
{
    char line[MAXLINE+1];   /* ricordiamo il /0 */
    char c;
    int trovato; int len; int pos;
    int i;
    int occorrenze;

    printf("Immetti linea: ");
    gets(line);         /* leggiamo la linea intera */

    printf("Immetti char da cercare: ");
    c = getchar();
    getchar();  /* butta via l'invio */

    printf("Cerco %c in '%s'.\n", c, line);
    len = strlen(line); /* calcola la lunghezza della str */

    /* line -> fz_line , len -> fz_len, c -> fz_c */
    pos = ricerca(line, len, c, &occorrenze);

    if(pos != -1) {   /* if(trovato==VERO) */
        printf("Carattere %c trovato, "
               "pos vale %d, "
               "occorrenze vale %d.\n" ,c ,pos, occorrenze);
    } else {
        printf("Carattere %c non trovato, pos vale %d.\n",c, pos);
    }

    return 0;
}
Пример #2
0
int main(){
	
	utente *testa, *coda, *tmp,da_inserire;
	char da_cercarenome[M],da_cercarecognome[M];
	int n, i, size,ok=0,soluz=0,lunghnome=0,lunghcognome=0;
	char name[M], surname[M];
	
	//Inserimento utenti
	size=sizeof(utente);

	testa=(utente *)malloc(sizeof(utente));
	testa->next=NULL;
	
	
	coda=testa;
	
	
	//Ho creato il primo elemento messo a NULL + testa e coda puntano entrambi a questo primo elemento
	printf("\nQuanti utenti vuoi inserire?\n");
	scanf("%d",&n);
	
	printf("\nInserisci il nome e cognome del 1° utente\n");
	scanf("%s%s",name,surname);
	
	lunghnome=strlen(name);
	lunghcognome=strlen(surname);
	
		
	//printf("lughnome:%d lungcognome %d",lunghnome, lunghcognome);
	
	testa->nome=(char*)malloc(sizeof(char)*(lunghnome+1));  // +1 perchè c'è il carattere terminatore che la strlen non conta!!!
	testa->cognome=(char*)malloc(sizeof(char)*(lunghcognome+1));
	
	strcpy(testa->nome,name);
	strcpy(testa->cognome,surname);
	
	printf("nome del primo %s",testa->nome);
	
	printf("\nInserisci il numero di telefono del 1° utente\n");
	scanf("%d",&testa->num_di_t);
	
	
	for(i=1;i<n;i++){
		tmp=(utente *)malloc(sizeof(utente));
		
		printf("\nInserisci il nome e cognome del %d° utente\n",i+1);
		scanf("%s%s",name,surname);
		
		lunghnome=strlen(name);
		lunghcognome=strlen(surname);
	
		tmp->nome=(char*)malloc(sizeof(char)*(lunghnome+1));
		tmp->cognome=(char*)malloc(sizeof(char)*(lunghcognome+1));
	
		strcpy(tmp->nome, name);
		strcpy(tmp->cognome,surname);
	
		printf("\nInserisci il numero di telefono del %d° utente\n",i+1);
		scanf("%d",&tmp->num_di_t);
		tmp->next=NULL;
		
		coda->next=tmp;
		coda=tmp;
	}
	
	printf("\nLa rubrica e':\n");
	
	
	
	for(tmp=testa;tmp!=NULL;tmp=tmp->next)
	
		printf("\nUtente: %s\t%s\t%d\n", tmp->nome,tmp->cognome,tmp->num_di_t); 
	
	
	
	//Ricerca di un utente
	
	printf("\nDigita il nome e cognome dell'utente che vuoi cercare\n");
	scanf("%s%s",da_cercarenome,da_cercarecognome);
	
	printf("\n il nome e cognome dell'utente che vuoi cercare sono : %s\t%s\n",da_cercarenome,da_cercarecognome);
	
	soluz=ricerca(testa,da_cercarenome,da_cercarecognome);
	
	if(soluz==1)
		printf("\nUtente trovato\n");
	else 
		printf("\nUtente NON trovato\n");
	
	
	
	//Ordina cognomi
	
	
	ordina_cognomi(testa);
	
	printf("Rubrica ordinata alfabeticamente:\n");
	for(tmp=testa;tmp!=NULL;tmp=tmp->next){
		
		printf("\nUtente: %s\t%s\t%d\n", tmp->nome,tmp->cognome,tmp->num_di_t); 
	}
	
	//Cancella un utente
	
	printf("\nDigita il nome e cognome dell'utente che vuoi cancellare\n");
	scanf("%s%s",da_cercarenome,da_cercarecognome);
	
	printf("\n il nome e cognome dell'utente che vuoi cancellare sono : %s\t%s\n",da_cercarenome,da_cercarecognome);
	
	
	ok=cancella_utente(da_cercarenome,da_cercarecognome,&testa);

	
	if(ok==1){
		
		printf("Utente trovato e cancellato\n");
		printf("Rubrica sistemata:\n");
		
		for(tmp=testa;tmp!=NULL;tmp=tmp->next)
			
			printf("\nUtente: %s\t%s\t%d\n", tmp->nome,tmp->cognome,tmp->num_di_t); 
		
	}else
	
		printf("Utente NON trovato e  NON cancellato\n");
	
	
	
/*	
	//Inserire altro utente in modo ordinato
	
	tmp=(utente *)malloc(sizeof(utente));
	tmp->next=NULL;
	
	da_inserire=tmp;
	
	printf("\nDigita il nome, cognome e numero di tel dell'utente che vuoi inserire\n");
	scanf("%s%s%d",da_inserire->nome,da_inserire->cognome, &da_inserire->num_di_t);
	
	printf("\n il nome e cognome dell'utente che vuoi cancellare sono : %s\t%s\n",da_inserire->nome,da_inserire->cognome);
	
	soluz=inserisci(testa,da_inserire);
	
	if(soluz==1){
	printf("Utente inserito in modo corretto\n");
	printf("Rubrica ordinata alfabeticamente con l aggiunta dell utente:\n");
	for(tmp=testa;tmp!=NULL;tmp=tmp->next){
		
		printf("\nUtente: %s\t%s\t%d\n", tmp->nome,tmp->cognome,tmp->num_di_t); 
		}
	}
	else
	printf("Utente NON inserito\n");
	
	//free(da_inserire);
	
*/
	
return 0;
}
Пример #3
0
mainClient::mainClient(const string& us, const string& pw, QMainWindow* from) : pagPadre(from) {
    try {
        client=new LinQedInClient(us,pw);
        this->setStyleSheet("background-color:lightblue;");
        this->setFixedSize(600, 430);
        QRect screenGeometry=QApplication::desktop()->screenGeometry();
        int x=(screenGeometry.width()-width())/2;
        int y=(screenGeometry.height()-height())/2;
        move(x,y);

        QLabel* titolo= new QLabel(this);
        titolo->setText("LinQedIn");
        titolo->setGeometry(20,15,200,30);
        QFont font("Ubuntu",20, QFont::Bold);
        titolo->setFont(font);

        QPushButton* logout=new QPushButton("LogOut",this);
        logout->setGeometry(490,20,90,30);
        logout->setStyleSheet("background-color:blue;color:white; font-weight:bold;");

        QPushButton* mostraPr=new QPushButton("Visualizza il profilo",this);
        mostraPr->setGeometry(40,70,150,30);
        mostraPr->setStyleSheet("background-color:white;");

        QPushButton* modificaPr=new QPushButton("Modifica il profilo",this);
        modificaPr->setGeometry(215,70,150,30);
        modificaPr->setStyleSheet("background-color:white;");

        QPushButton* modificaCont=new QPushButton("Gestisci i tuoi contatti",this);
        modificaCont->setGeometry(390,70,170,30);
        modificaCont->setStyleSheet("background-color:white;");

        areaRisultato=new QScrollArea(this);
        areaRisultato->setGeometry(30,115,540,220);
        areaRisultato->setStyleSheet("background-color:white;");
        areaRisultato->setFrameShadow(QFrame::Raised);
        areaRisultato->setFrameShape(QFrame::WinPanel);
        areaRisultato->setLineWidth(1);
        areaRisultato->setWidgetResizable(true);

        output=new QLabel(areaRisultato);
        output->setAlignment(Qt::AlignTop);
        output->setMargin(5);

        QLabel* indicazione=new QLabel("Inserire lo username dell'utente che si desidera cercare:",this);
        indicazione->setGeometry(30,350,500,25);

        campo=new QLineEdit(this);
        campo->setGeometry(30,380,400,30);
        campo->setStyleSheet("background-color:white;");

        QPushButton* ricerca=new QPushButton("Cerca",this);
        ricerca->setGeometry(450,380,100,30);
        ricerca->setStyleSheet("background-color:white;");

        connect(logout,SIGNAL(released()),this,SLOT(logOut()));
        connect(mostraPr,SIGNAL(released()),this,SLOT(mostraProfilo()));
        connect(modificaPr,SIGNAL(released()),this,SLOT(modificaProfilo()));
        connect(modificaCont,SIGNAL(released()),this,SLOT(gestisciContatti()));
        connect(ricerca,SIGNAL(released()),this,SLOT(ricerca()));
    }
    catch(Errore err) {
        throw(err);
    }


}