C程序走到scanf后就不走了,想问一下,(int)k = (int)E - (int)'A';这个程序出错在哪里?原因是什么。

printf("Please input a letter\n");
scanf("%s\n",&E);
(int)k = (int)E - 65;
printf("k is %d\n", k);

img

scanf("%c", &E);

scanf中别用换行符,把\n去掉