A fuzzy logic controller (FLC) has been designed to control the water level in an advanced boiling water reactor (ABWR). The performance was comparable to that of a proportional-integral controller. However, the feedwater flow rate did not change smoothly to the steady state. Therefore, a method based on input-output data was adopted to prevent this problem. The data required for deriving the fuzzy rules were the results of various instances of satisfactory manual control of an ABWR simulation model. To construct the membership functions of the linguistic variable, the data were clustered using the fuzzy C-means method. The fuzzy rules were then generated from the data. Because the control actions were not guaranteed to be proper in all the cases and the data were not complete for all the possible operation conditions, the fuzzy rules were modified and extra rules were added based on human knowledge so that satisfactory performance can be achieved. Nevertheless, the method is helpful in deriving a set of important control rules at the beginning stage of design, especially when the importance of the linguistic variables is not clear. The simulation results showed that the designed controller followed the desired control action, which was imposed on the designed data, and the performance of the controller was better than the previously designed FLC.