Traditionally, the first and the last subnet (zero subnet and all-ones subnet) were reserved. However, Cisco routers can be configured to override that using the command "ip subnet-zero". This command is enabled by default since IOS version 12.0. For details, please refer to this link:
Usually, when we need 7 subnets, we would use the four bit subnet mask, that is 240. Some CCNA examples in the textbook show the use of three bit subnet mask. It uses both the subnet-zero and the broadcast subnet. Is that correct?
What subnet mask you use depends on how many subnets you need to create and how many stations you have to connect in this subnet. If you are creating subnets just for connections between two routers you need two IPs (one for each router) so You'll use subnet mask 255.255.255.252. With four bit subnet mask there'll be 14 IPs for machines connected to this subnet.
There is no such thing as broadcast subnet. There is broadcast IP address in every subnet, and its the last IP in this subnet, ie. for subnet 10.0.0.1/24 its 10.0.0.255
There are many schemes of IP addressing you can use in each task, it all depends on how many IPs you need in ever subnet and what subnet you are subnetting. Its OK to use zero-subnet.