Tema 6 (II)

 

 

 


Completa el siguiente código para que la función incremente los dos argumentos recibidos en uno. No escriba blancos

 void main(void){
    int x,y;

    scanf("%d%d",,);
    incrementa(,);
    printf("el valor de x es %d y el de y es %d\n",);
}

void incrementa (int a, int b){
    ()++;
    ()++;
}




El código de la función que devuelve el máximo elemento de un array de enteros y la posición que ocupa puede ser:

 maximo(const TablaEnteros t, int n, int pos){
    int max,i;
    =t[0];
    =0;
    for(i=0;i<n;i++){
        if (<t[i]){
             =t[i];
             =i;
        }
    }
    return ;
}





El código de la función que devuelve el máximo elemento de un array de enteros y la posición que ocupa puede ser:

 maximo2(const TablaEnteros t, int n, int pos, int max){
    int i;
    =t[0];
    =0;
    for(i=0;i<n;i++){
        if (<t[i]){
            =t[i];
             =i;
        }
    }
}




La función que calcula a la vez el máximo y el mínimo de una matriz de reales puede ser:

void maximo_minimo(const MatrizReal m, int nf, int nc, float , float ){
    int i,j;

    max=m[0][0];
    min=m[0][0];
    for(i=0;i<nf;i++){
        for(j=0;j<nc;j++){
            if(<m[i][j]){
                =m[i][j];
            }
            if(>m[i][j]){
                =m[i][j];
            }
        }
    }
}




Una función para leer los elementos de una matriz de reales puede ser:

void leeMatriz(MatrizReal m, int nf, int nc){
    int i,j,numf, numc;

    printf("dame el numero de filas\n");
    scanf("%d",&numf);
    printf("dame el numero de columnas\n");
    scanf("%d",&numc);
    =numf;
    =numc;
    for(i=0;i<numf;i++){
        for(j=0;j<numc;j++){
            printf("deme el elemento (%d,%d) de la matriz\n",i,j);
            scanf("%f",[i][j]);
        }
    }
}




Tenemos el prototipo de una función:

void funcion(int, char, float *);

y declaradas las variables

int m;
float x;
char c;

Entonces una invocación a la función con esas variables es (no deje espacios en blanco):




Tenemos el prototipo de una función:

void funcion(int, char *, float , double *);

y declaradas las variables

int m;
float x;
char c;
double y;

Entonces una invocación a la función con esas variables es (no deje espacios en blanco):




Tenemos el prototipo de una función:

int funcion(long, char, float *);

y declaradas las variables

int m;
float x;
char c;
long d;

Entonces una invocación a la función con esas variables es (no deje espacios en blanco):




Implemente una función que recibe dos números enteros correspondientes a minutos y segundos y devuelva tres enteros representando horas, minutos y segundos que corresponden. Por ejemplo, si se dan 123 minutos y 80 segundos, la salida de la función sería 2 horas, 4 minutos y 20 segundos.


void tiempo(int min, int seg, int h, int m, int s){
      int mintot;

    =seg%60;
   
    mintot=min+seg/60;
    =%60;
   
    =/60;
}




Tenemos  implementada una función que recibe dos números enteros correspondientes a minutos y segundos y devuelva tres enteros representando horas, minutos y segundos que corresponden. Por ejemplo, si se dan 123 minutos y 80 segundos, la salida de la función sería 2 horas, 4 minutos y 20 segundos. La función se llama tiempo, complete el siguiente código:

int horas, minutos, segundos;
...

funcion(123,80,,,);
printf("el tiempo indicado es %d horas : %d minutos : %d segundos\n",,,);




Tenemos una función que calcula el máximo y el mínimo de los elementos de un array de reales. La función tiene el siguiente prototipo:

void maximo_minimo(const TablaReales, int, float *, float *);

Complete el siguiente código:

TablaReales t={4.3, 5.6, 2.3, 1.6, 9.8};
float max,min;
...

(,,,);
printf("El máximo y el mínimo de los %d elementos de la tabla t son %f y %f respectivamente\n",,,); 






Si una función debe devolver el máximo elemento de un array de enteros y la posición que ocupa.
Entonces su llamada es (puede haber más de una respuesta correcta)

 max=maximo(tabla,numelem,*posicion);

 max=maximo(tabla,numelem,&posicion);

 maximo(tabla,numelem,max,posicion);

 maximo(tabla,numelem,&max,&posicion);

 maximo(tabla,numelem,*max,*posicion);




En C el prototipo de una función que recibe un array de números reales y devuelve un valor real puede ser:
(Hay más de una respuesta correcta)

float funcion(VectorReal);

float funcion(VectorReal, int);

void function(VectorReal, int, float);

void function(VectorReal, int, float *);

void funcion(VectorReal, float);




En C el prototipo de una función que recibe un array de números reales y devuelve otro array de reales puede ser:(Hay más de una respuesta correcta)

void funcion(VectorReal, int, VectorReal, int *);

void funcion(VectorReal, int, VectorReal, int);

int function(VectorReal, int, VectorReal);

void funcion(VectorReal, int, VectorReal *, int *);

void funcion(VectorReal, VectorReal);




Si una función en C tiene como prototipo

float funcion(const TablaReales, int, float *);

y tenemos declaradas las variables:

TablaReales v;
int n;
float x,y;

Entonces su llamada puede ser:
(Hay más de una respuesta correcta)

y=funcion(v,n,x);

funcion(v,n,&x);

x=funcion(v, 5, &y);

y=funcion(v,n,&x);

x=funcion(v, n, *y);




Si una función en C tiene como cabecera

void funcion(const TablaReales v, int n, float *p);

entonces en el cuerpo de la función si se desea devolver en p el cuadrado del primer elemento de v se pone:

p=v[0]*v[0];

*p=v*v;

v[0]=*p*p;

v[0]=*p*(*p);

*p=v[0]*v[0];




Si una función en C tiene como cabecera

float funcion(const TablaReales v, int n, float *p);
entonces una posible última línea de la función podría ser:

return &p;

return p;

return *p/v[0];

No puede haber return en la funcion

return *p*n;




Si una función en C tiene como prototipo

void funcion(const TablaReales, int, TablaReales, int *);

y tenemos declaradas las siguientes variables:

int n,m;
TablaReales t,t2;

Entonces su llamada puede ser:

funcion(t,n,t2,m);

funcion(t,n,t2,*m);

funcion(t,&n,t2,&m);

funcion(t,10,t2,&m);

funcion(t, 5, t2, 10);




Tenemos implementada una función que dada una matriz de números reales devuelve la posición (fila y columna) donde se encuentra un elemento cuyo prototipo es:

void posicion(const MatrizReales, int, int, float, int *, int *);

y declaradas las variables:

MatrizReales m;
float x;
int numf, numc, posf, posc;

Entonces una posible invocación es:

posicion(,,,,,);




Tenemos implementada una función que dada una matriz de números reales devuelve la posición (fila y columna) donde se encuentra un elemento cuyo prototipo es:

void posicion(const MatrizReales, int, int, float, int *, int *);

y declaradas las variables:

MatrizReales m;
float x;
int numf, numc, posf, posc;

Entonces una posible invocación es (hay más de una respuesta correcta):

 posicion(m,7,5,6.7,&posf,&posc);

 posicion(m,numf,numc,x,*posf,*posc);

  posicion(m,numf,numc,&x,&posf,&posc);

 posicion(m,numf,numc,x,posf,posc);

 posicion(m,numf,numc,x,&posf,&posc);





Puntuacion Total

Aciertos

Aciertos Parciales

No hay comentarios:

Publicar un comentario