Se ho capito bene, vorresti fare una cosa del genere?
#include <stdio.h>

main()
{
char scelta;

system("cls");

printf("Camminando camminando arrivi in città che fai?\n");
printf("a: canto\n");
printf("b: ballo\n");

printf("\n");

scelta = getchar();

switch(scelta){
    case 'a':
        printf("Cantando incuriosisci i passanti che cominciano a riunirsi intorno a te\n");
        break;
    case 'b':
        printf("Ballando la gente si scansa per paura che sei in preda ad un attacco di convulsioni\n");
        break;
}

getch();
} 
l'ho provato e funziona.

Riguardo alla dichiarazione delle variabili, se le dichiari fuori dal main sono globali quindi visibili a tutte le funzioni, mentre se le dichiari all'interno di una funzione (quindi anche il main) esse sono visibili solo in essa; come dichiarare una variabile dipende da quello che devi fare, sono scelte da fare durante la progettazione del software.