Puedes aprender que hace cada parte que desconoces aquí: http://c.conclase.net/librerias/index.php?ansilib=time#inicio
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
#include <stdio.h>
#include <time.h>
unsigned calcular_dias(struct tm *fecha) {
double diff;
struct tm aux = *fecha; // Copio la fecha que me han pasado
aux.tm_mday = 1; // Cambio a dia 1 del mes
aux.tm_mon = 0; // Cambio al primer mes del año. Los meses empiezan por 0
diff = difftime(mktime(fecha), mktime(&aux)); // Calculo los segundos de diferencia entre las dos fechas
return diff/(60*60*24); // Devuelvo la diferencia en días
}
int main() {
time_t tiempo;
struct tm *fecha;
tiempo = time(NULL); // Consigo la marca de tiempo actual
fecha = localtime(&tiempo); // Y la paso a la estrutura que la descompone en fecha/hora
printf("Han pasado %u dias.", calcular_dias(fecha));
}
#include <stdio.h>
int func_mul(int m, int n) {
int retval = 0;
int negativo = n<0;
if(negativo)
n = -n;
while(n--)
retval += m;
return negativo? -retval : retval;
}
int func_exp(int base, unsigned ex) {
int retval = 1;
while(ex--)
retval = func_mul(retval, base);
return retval;
}
int main() {
int x;
unsigned y;
printf("base > ");
scanf("%d", &x);
printf("exp > ");
scanf("%d", &y);
printf("%d", func_exp(x, y));
}