int char unsigned float void main union long double printf sprintf if else struct fork switch for define return include case && || break bool static public enum typedef private exit scanf NULL malloc calloc free realloc fgets strcmp strcpy fputs stdout EOF getc while fclose fopen do fscanf extern