# PHP 如何實現99乘法表
99乘法表是編程初學者最經典的練習之一,它不僅能幫助理解循環嵌套的用法,也是掌握PHP基礎語法的好機會。本文將詳細介紹用PHP實現99乘法表的多種方法,并分析每種實現的優缺點。
## 一、基礎實現:雙層for循環
最直接的方式是使用雙層`for`循環嵌套:
```php
<?php
for ($i = 1; $i <= 9; $i++) {
for ($j = 1; $j <= $i; $j++) {
echo "$j × $i = " . $i*$j . " ";
}
echo "<br>";
}
?>
輸出效果:
1 × 1 = 1
1 × 2 = 2 2 × 2 = 4
1 × 3 = 3 2 × 3 = 6 3 × 3 = 9
...
為了讓顯示更規整,可以使用HTML表格:
<?php
echo "<table border='1'>";
for ($i = 1; $i <= 9; $i++) {
echo "<tr>";
for ($j = 1; $j <= $i; $j++) {
echo "<td>{$j}×{$i}=" . $i*$j . "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
使用while
循環的替代方案:
<?php
$i = 1;
while ($i <= 9) {
$j = 1;
while ($j <= $i) {
echo "$j × $i = " . $i*$j . "\t";
$j++;
}
echo "<br>";
$i++;
}
?>
將功能封裝為可復用的函數:
<?php
function multiplicationTable($size = 9) {
for ($i = 1; $i <= $size; $i++) {
for ($j = 1; $j <= $i; $j++) {
printf("%d×%d=%-2d ", $j, $i, $i*$j); // 使用printf格式化輸出
}
echo PHP_EOL;
}
}
multiplicationTable(9);
?>
調整循環條件實現倒序輸出:
<?php
for ($i = 9; $i >= 1; $i--) {
for ($j = 1; $j <= $i; $j++) {
echo "$j × $i = " . $i*$j . " ";
}
echo "<br>";
}
?>
減少字符串拼接:使用逗號分隔echo
比字符串連接更快
echo $j, '×', $i, '=', $i*$j, ' ';
使用sprintf:需要復雜格式化時比直接拼接高效
echo sprintf("%d×%d=%-2d", $j, $i, $i*$j);
可以輕松修改為其他乘法表:
// 輸出20×20乘法表
multiplicationTable(20);
// 輸出自定義范圍的乘法表
function customTable($start, $end) {
for ($i = $start; $i <= $end; $i++) {
// ...實現邏輯
}
}
通過這個練習可以掌握: - PHP循環結構的嵌套使用 - 字符串輸出和格式化技巧 - 基礎算法思維 - 代碼封裝思想
建議初學者嘗試用不同方式實現,并比較各種寫法的執行效率和代碼可讀性。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。