>>10
そりゃ初期化子に書くからいかんのだ。
static int num;
     :
num=strlen(str);

と書けば問題なかろうが。
ところで、staticの意味はわかっておろうな?