Está en la página 1de 8

Informática

Industrial

Programación C

Ejercicios semiresueltos
de C

CS Automatización y Robótica Industrial

Curso 2022-2023

Luis Diéguez González


Ejercicios semiresueltos ININ
Programación C

1 El primer programa es el clásico HOLA MUNDO del inicio de todos los


.

lenguajes de programación
Primero.c
#include <stdio.h> main()
{
printf("Hola mundo\n");
}

PREGUNTA
Comenta qué hace cada línea

2 – Tipos de datos. Intercambio del valor de dos números


Segundo.c
/***********************************************************************/
/*************** intercambio valor de dos numeros *********/
/***********************************************************************/
#include <stdio.h>
main()
{
int a,b,aux;
printf("\n Dame valores de a y de b ( a,b)\n");
scanf("%d,%d",&a,&b);
printf("\n a = %d y b = %d\n",a,b);
aux=a;
a=b;
b=aux;
printf("\n a = %d y b = %d\n",a,b);
}

PREGUNTA RESPUESTA
Qué tipo de variables declaramos?

Qué operaciones estamos realizando?

Cuál es el comando para mostrar salida por pantalla?

Por qué declaramos la variable aux

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 2
Ejercicios semiresueltos ININ
Programación C

3 – uso de getchar() y putchar() en un bucle while...


/*****************************************************************************/
/*************** uso de getchar y putchar en bucle *************/
/*****************************************************************************/
#include "stdio.h"
main()
{
char car;
printf("\n introduce un texto . Finaliza con <ENTER>\n");
car=getchar();
while(car!='\0')
{
putchar(car);
car=getchar();
}
}

PREGUNTA RESPUESTA

Para qué declaramos la variable car ?

Por qué leemos la primera vez fuera del bucle?


Qué hace la sentencia:
while(car!='\0')

Funciones de manejo de cadenas de


caracteres: getchar() y putchar()
4 – uso de getchar() y putchar()
/*****************************************************************************/
/*************** uso de getchar() y putchar() *************/
/*****************************************************************************/
#include "stdio.h"
main()
{
char car;
printf("\n introduce un caracter\n");

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 3
Ejercicios semiresueltos ININ
Programación C
car=getchar();
putchar(car);
}

5 – uso de gets() y puts().


/*****************************************************************************/
/*************** ver funciones gets() y puts() *************/
/*****************************************************************************/
#include<stdio.h>
main()
{
char car[22];
printf("Introduce una cadena....( max 19)\n");
gets(car);
printf("Imprimiendo cadena...\n");
puts(car);
}

PREGUNTA RESPUESTA

Para qué declaramos la variable car[22] ?


Qué hace la siguiente sentencia:
puts(car);
Cómo podríamos hacer lo mismo con la función
printf()

Uso del bucle while()

6 – uso de gets(), puts() y while().


/*****************************************************************************/
/*************** ver funciones gets() y puts() *************/
/*****************************************************************************/
#include<stdio.h>

main()
{
char car1[22],car;

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 4
Ejercicios semiresueltos ININ
Programación C
int i=0;
printf("Introduce una cadena....( max 19)\n");
gets(car1);
printf("Imprimiendo cadena...\n");
//puts(car1); vamos a imprimir con puchar();
car=car1[i];
while(car!='\0')
{
putchar(car);
i++;
car=car1[i];

}
}

PREGUNTA RESPUESTA

Para qué declaramos la variable car?

Qué hace la siguiente sentencia:


while(car!='\0')
Qué hace el bucle while en su conjunto?

7– leer cadena con getchar() y un bucle while y luego imprimir con


putchar() y un bucle while.

/*****************************************************************************/
/*************** ver funciones gets() y puts() *************/
/*****************************************************************************/
#include<stdio.h>
main()
{
char car1[22],car;
int i=0;
printf("Introduce una cadena....( max 19)\n");
// vamos a leer con getchar()
car=getchar();
while(car!='\n')
{
car1[i]= car;
i++;
car=getchar();
}
i=0;
printf("Imprimiendo cadena...\n");
// vamos a imprimir con puchar();
car=car1[i];

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 5
Ejercicios semiresueltos ININ
Programación C
while(car!='\0')
{
putchar(car);
i++;
car=car1[i];
}
}

PREGUNTA RESPUESTA

Qué hace el programa en su conjunto? (no


comentes linea a linea, sino interpretando el
programa....)

8: Una variante del ejercicio anterior


/*****************************************************************************/
/*************** ver funciones gets() y puts() *************/
/*****************************************************************************/
#include<stdio.h>
main()
{
char car1[22],car;
int i=0;
printf("Introduce una cadena....( max 19)\n");
//gets(car1); // vamos a leer con getchar()
// llevamos los caracteres directamente al array sin pasarlos por una variable
car1[i]=getchar();
while(car1[i]!='\n')
{
i++;
car1[i]=getchar();
}
i=0;
printf("Imprimiendo cadena...\n");
//vamos a imprimir con puchar();
car=car1[i];
while(car!='\0')
{
putchar(car);
i++;
car=car1[i];
}
}

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 6
Ejercicios semiresueltos ININ
Programación C

PREGUNTA RESPUESTA
Cuál es la diferencia con el programa anterior?

9: Otra variante del ejercicio anterior


/*****************************************************************************/
/*************** ver funciones gets() y puts() *************/
/*****************************************************************************/
#include<stdio.h>
main()
{
char car1[22],car;
int i=0;
printf("Introduce una cadena....( max 19)\n");
// vamos a leer con getchar()
// llevamos los caracteres directamente al array sin pasarlos por una variable
car1[i]=getchar();
while(car1[i]!='\n')
{
i++;
car1[i]=getchar();
}
printf("Imprimiendo cadena...\n");
//vamos a imprimir con printf()
printf("%s",car1);
}

PREGUNTA RESPUESTA
Cuál es la diferencia con el programa anterior?

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 7
Ejercicios semiresueltos ININ
Programación C

10: leer una cadena con la función scanf()


/*****************************************************************************/
/*************** ver función scanf() *************/
/*****************************************************************************/
#include<stdio.h>
main()
{
char car1[22],car;
int i=0;
printf("Introduce una cadena....( max 19)\n");
// vamos a leer con scanf()
// llevamos los caracteres directamente al array sin pasarlos por una variable
scanf("%[^\n]",&car1);
printf("Imprimiendo cadena...\n");
// vamos a imprimir con printf()
printf("%s",car1);
}

PREGUNTA RESPUESTA
Qué hace la siguiente sentencia?
scanf("%[^\n]",&car1);

Informática Industrial IES Politécnico de Vigo


L Diéguez González Pag: 8

También podría gustarte