Salve, la traccia del mio esercizio è questa:
Scrivete una funzione con prototipo void max_secondmax ( int a[], int n, int *max, int *second_max )
che, dato un array a di lunghezza n individui il valore più grande in a e il secondo elemento per grandezza in a, e li
memorizzi nelle variabili puntate da max e second_max.
Non riesco a ricordare un modo per segnare il numero più grande e ricordarlo per stamparlo poi. Allego il codice che ho scritto (ovviamente l'if è sbagliato, ho provato a farlo in quel modo ma non va, penso d'aver sbagliato a scrivere la condizione)
#include<stdio.h>
#define N 100
void max_secondmax(int a[], int n, int *max, int *second_max);
int main(){
int n=0, a[N], i;
int *max;
int *second_max;
printf("Quanti numeri vuoi nel vettore(massimo 100): ");
scanf("%d", &n);
printf("\nInserisci i numeri:\n");
for(i=0;i<n;i++){
scanf("%d", &a[i]);
}
printf("\n\nI numeri sono: ");
for(i=0;i<n;i++){
printf("\n");
printf("%d", a[i]);
}
max_secondmax(a, n, max, second_max);
}
void max_secondmax(int a[], int n, int *max, int *second_max){
int m=0, s=0, j, i;
for(i=0;i<n;i++){
if(a[i]>a[i+1]){
m=a[i];
}
}
printf("\n\nIl numero piu' grande e': %d", m);
}
So di dover salvare i puntatori poi, ma vorrei prima capire come fare e poi mettere i puntatori :)