STM32F103 TC\TXE bits are set automatically after USART1 clock enable
What you see is the normal behavior of the USART peripheral of the STM32.

Those bits are set independently of the UE bit in the CR1 register. They just indicate, that the transmit buffer is empty (TXE) and the transfer shift register is empty (TC).

Which is true (because you just enabled the clock, nothing can be in there) and usually not a problem - just don't enable the TXE or TC interrupt before the UE bit is set, otherwise your interrupt will probably not do what you'd like it to do.

The UE-bit description reads:


  When this bit is cleared the USART prescalers and outputs are stopped and the end of the
  current
  byte transfer in order to reduce power consumption. This bit is set and cleared by software.
  
  0: USART prescaler and outputs disabled
  
  1: USART enabled


So while it might sound a bit like a complete USART enable bit, it just works on the prescaler and outputs.