#include <stdio.h>
void printValue(void);
void times(int n, void (*func)(void)){
if(n>0){
func();
times(--n, func);
}
}
int main (void){
int n = 100;
times(n, printValue);
return 0;
}
void printValue(void){
static unsigned int y = 0;
printf("y = %d\n", y);
y+=1;
}
#include <stdio.h>
void printValue(int);
void repeat_upto(int init_value, int end_value, int incremental,
void (*func)(int)){
if(incremental < 0 ? init_value >= end_value : init_value <= end_value){
func(init_value);
repeat_upto(init_value + incremental, end_value, incremental, func);
}
}
int main (void){
repeat_upto(0, 100-1, +1, printValue);
return 0;
}
void printValue(int v){
printf("%d\n", v);
}
#include <stdio.h>
void printValue(int v, int end_value){
if(v < end_value){
printf("%d\n", v);
printValue(v+1, end_value);
}
}
int main (void){
printValue(0, 100);
return 0;
}