Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892

    C : programma sulle stringhe!

    Ciao raga, scusate la penosità del titolo!
    Devo fare un programma che prende in input N stringhe che rappresentano degli interi , le converta in interi e ne visualizzi il minimo.!

    chi mi aiuta?

    thanks
    Debian Sarge 3.01a
    Slackware 10.2

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    se devi convertire "1" > 1 usa sprintf
    o forse "uno" > 1 e sarebbe una roba carina
    ma incasinata

  3. #3
    Originariamente inviato da floyd
    se devi convertire "1" > 1 usa sprintf
    o forse "uno" > 1 e sarebbe una roba carina
    ma incasinata
    un inizio potrebbe essere definire un vettore di stringhe..
    codice:
    char *v[8] ={"uno\0","due\0","tre\0", .. ,"nove\0"}

  4. #4
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    le stringhe devo inserirle da tastiera.... e in più devo usare la f.ne atoi!
    Debian Sarge 3.01a
    Slackware 10.2

  5. #5
    Originariamente inviato da Fabiuz
    le stringhe devo inserirle da tastiera.... e in più devo usare la f.ne atoi!
    vabbe' se devi usare atoi e' semplice,
    gli passi semplicemente la stringa
    codice:
    int atoi(const char *s);
    converte una stringa in un integer
    finche' non incontra un carattere non aspettato se fallisce torna 0
    la stringa dovrebbe essere in questo formato [spazi] [segno] [decimale]
    regex: \s?[\+|\-]?[0-9]*
    salvi il contenuto in una var
    e se !=0 aggiorni il minimo e stampi la var

    in caso di errore ti fermi e visualizzi il minimo.

  6. #6
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    puoi guardare un attimo il codice che ho fatto:?

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #define N 10

    int main(){
    char stringhe[N][N];
    int a[N];
    int i,j,min=0,n;
    printf("Inserire il numero di stringhe(max 10): ");
    scanf("%d", &n);
    for (i=0; i<n; i++){
    printf("Inserire la %d stringa:", i+1);
    scanf ("%s",stringhe[i]);
    }
    for (i=0; i<n; i++){
    printf("Stringa %d:", i+1);
    printf("%s\n", stringhe[i]);

    }
    for (i=0; i<n; i++){
    //for (j=0; stringhe[i][j]!='\0'; j++){
    a[i]=(atoi(stringhe[i]));
    }
    for (i=0; i<n; i++)
    if (a[i]<=min)
    min=a[i];
    printf("Minimo :%d",min);
    return 0;

    }
    Debian Sarge 3.01a
    Slackware 10.2

  7. #7
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    ti stampa sempre 0?

    prova con
    min = a[0]
    for (i=1; i<n; i++)
    if (a[i] <= min)
    min = a[i];

  8. #8
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    ma atoi proprio calcola sempre 0!!!
    ho provato a stampare quello che calcola e per ogni stringa calcola 0!

    come mai?
    Debian Sarge 3.01a
    Slackware 10.2

  9. #9
    al posto di
    scanf ("%s",stringhe[i]);
    usa
    gets(stringhe[i]);
    poi atoi mi funziona..
    ma che stringhe immetti, scusa?

  10. #10
    Utente di HTML.it L'avatar di Fabiuz
    Registrato dal
    Nov 2004
    Messaggi
    892
    stringhe tipo "ciao" oppure "ciccio"
    senza spazi ne niente!
    Debian Sarge 3.01a
    Slackware 10.2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.