Fundamentos de Programación en C: Vectores, Funciones y Macros
Clasificado en Informática
Escrito el en
español con un tamaño de 6,81 KB
I. Complete los espacios en blanco
- Un vector permite almacenar varios datos del mismo tipo utilizando un solo nombre.
- Los vectores en C comienzan desde la posición 0.
- Un procedimiento no retorna un valor.
- Una función retorna un valor.
- Los datos enviados a funciones o procedimientos se denominan parámetros.
- La directiva utilizada para crear macros es
#define. - El operador utilizado para obtener el resto de una división es
%. - La instrucción
returndevuelve un valor desde una función. - Un arreglo unidimensional también se conoce como vector.
- La función
buscar()retorna 1 cuando encuentra un elemento.
II. Verdadero o Falso
- (F) Un vector puede almacenar datos de distintos tipos simultáneamente.
- (F) Un procedimiento retorna un valor.
- (V) Una función puede recibir parámetros.
- (F) Los vectores comienzan desde la posición 1.
- (V) Una macro sirve para simplificar operaciones repetitivas.
- (V) La función
mayor()busca el valor más grande del vector. - (V) El operador
%permite calcular el resto de una división. - (V) Un vector de tamaño 10 posee posiciones de 0 a 9.
- (V) La función
menor()busca el valor más pequeño del vector. - (V) Una función siempre debe devolver un valor.
III. Sintaxis y Declaraciones en C
Declaración de un vector de 10 enteros
int v[10];Sintaxis de un procedimiento
void nombre()
{
instrucciones;
}Sintaxis de una función
tipo nombre()
{
instrucciones;
return valor;
}Macro para calcular el cuadrado
#define CUADRADO(x) ((x)*(x))Instrucción para retornar un valor
return valor;IV. Definiciones Técnicas
Vector
Estructura que almacena varios datos del mismo tipo utilizando un único nombre y posiciones numeradas.
Procedimiento
Bloque de instrucciones que realiza una tarea específica y no devuelve un valor.
Función
Bloque de código que realiza una tarea y devuelve un resultado mediante la instrucción return.
Parámetro
Dato que se envía a una función o procedimiento para que pueda trabajar con él.
Macro
Instrucción definida con #define que permite reemplazar expresiones y simplificar operaciones repetitivas.
V. Selección Múltiple
¿Cuál es la declaración correcta de un vector de 5 enteros?
- a)
int(5)v; - b)
int v[5];✓ - c)
vector v[5]; - d)
array v(5);
¿Cuál de las siguientes opciones representa una función?
- a)
void mostrar() - b)
void cargar() - c)
int suma()✓ - d)
printf()
¿Cuál es la posición del primer elemento de un vector?
- a) 1
- b) 2
- c) 0 ✓
- d) -1
¿Qué palabra devuelve un valor en una función?
- a)
scanf - b)
return✓ - c)
void - d)
define
¿Cuál es el resultado de la siguiente macro?
#define CUADRADO(x) ((x)*(x))
CUADRADO(4)- a) 8
- b) 12
- c) 16 ✓
- d) 20
¿Qué función calcula el promedio?
- a)
promedio()✓ - b)
mayor() - c)
buscar() - d)
cargar()
¿Qué función cuenta números pares?
- a)
suma() - b)
promedio() - c)
contarpares()✓ - d)
buscar()
¿Cuál es el operador para determinar si un número es par?
- a)
/ - b)
* - c)
%✓ - d)
+
¿Qué retorna buscar() cuando encuentra un dato?
- a) 0
- b) -1
- c) 1 ✓
- d) 10
¿Cuál es la finalidad principal de una macro?
- a) Crear vectores
- b) Simplificar operaciones repetitivas ✓
- c) Crear ciclos
- d) Crear funciones
VI. Corregir el código
1. Declaración de vector
Incorrecto: int v(10);
Corrección: int v[10];
2. Retorno en procedimiento
Incorrecto:
void suma()
{
return s;
}Corrección:
void suma()
{
// Los procedimientos no retornan valores; use una función si requiere return.
// instrucciones
}3. Lógica de Macro
Incorrecto: #define CUADRADO(x) (x+x)
Corrección: #define CUADRADO(x) ((x)*(x))
4. Ciclo de iteración
Incorrecto:
for(i=1; i<=10; i++)
{
printf("%d", v[i]);
}Corrección:
for(i=0; i<10; i++)
{
printf("%d", v[i]);
}VII. Implementación de Funciones en C
#include <stdio.h>
int suma(int v[])
{
int i, s = 0;
for(i = 0; i < 10; i++)
s = s + v[i];
return s;
}
float promedio(int v[])
{
return suma(v) / 10.0;
}
int mayor(int v[])
{
int i, m = v[0];
for(i = 1; i < 10; i++)
if(v[i] > m)
m = v[i];
return m;
}
int menor(int v[])
{
int i, m = v[0];
for(i = 1; i < 10; i++)
if(v[i] < m)
m = v[i];
return m;
}VIII. Ejercicio Práctico: Macros y Vectores
Crear una macro denominada CUBO(x) y calcular la suma de los cubos de 8 números almacenados en un vector.
#include <stdio.h>
#define CUBO(x) ((x)*(x)*(x))
int main()
{
int v[8], i, suma = 0;
for(i = 0; i < 8; i++)
{
printf("Ingrese el valor %d: ", i + 1);
scanf("%d", &v[i]);
suma += CUBO(v[i]);
}
printf("La suma de los cubos es: %d\n", suma);
return 0;
}