Me gustaría hacer un programa en C donde le reste un número entero a una fecha pero encuentro problemas al restarle número grandes. Supongo que tengo que crear un vector pero no sé usarlo bien.
pd : soy principiante y de momento llevo esto.
#include <stdio.h>
#include <stdlib.h>
#define TAM 12
void main()
{
int dia, mes, año, n, absoluto, resta;
int m[TAM]={31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
printf("Introduce una fecha:\n"); scanf("%d%d%d", &dia
, &mes
, &año
); printf("Introduce el numero que quieras restar a la fecha:\n");
if(dia - n > 0){
dia=dia-n;
printf("%d/%d/%d", dia
, mes
, año
); }
else if(dia - n < 0){
absoluto = (dia-n)*-1;
if(mes-1==1 || mes-1==3 || mes-1==5 || mes-1==7 || mes-1==8 || mes-1==10 || mes-1==12){
dia=31-absoluto;
mes=mes-1;
printf("%d/%d/%d", dia
, mes
, año
); }
else{
dia=30-absoluto;
mes=mes-1;
printf("%d/%d/%d", dia
, mes
, año
); }
}
}
MOD: El código debe ir entre etiquetas de Código GeSHi