1

这是一个我遇到问题的练习题。到目前为止,我要创建的是使用以下代码的表。我需要帮助来解决它,并解释我的错误是什么。

我想做的很简单:使用嵌套在 html 代码中的 php 在表格中生成从 1 到 100 的数字

每 10 个数字应该在一个对齐的行中,然后在 10 之后中断

| 1 | 2 | . . . | 10 |

|11 | 12| ....  | 20 |

|21 | 22| ....  | 30 |
.
.
.
|91| 92 | ...   |100|

<table border="1">
<?php
    for ($x=1; $x <= 100; $x++){
        if($x%11 ==0) {
            echo "<tr><td>" . "<br>" . "</tr></td>";
        }
        echo "<tc><td>" . $x . "</td></tc>" ;
    }
?>
</table>

for为循环使用if语句,其中嵌套的语句用于中断行

请有人指出我在这段代码中的错误。

好的,正确的代码应该是这样的:

<table border="1">
<?php
    for ($x=1; $x <= 100; $x++){
        if($x%10 ==1) {
            echo "<tr>";
        }
        echo "<td>" . $x . "</td>" ;
    }
?>
</table>

谢谢大家的帮助

4

3 回答 3

4

我们需要先了解需求。

要求:

  1. 需要水平增量计数器。

  2. 每行应该包含从 1 到 10、11 到 20 等的 10 个整数。

  3. 因此,如果我们将输出视为 HTML 表格,则<tr>递增11<td>递增1

  4. 所以,我们需要两个循环:一次递增10:外循环,另一次递增1:内循环。

  5. 因此,编写外循环并在其中添加内循环,两者都有步骤:1

  6. 因此,外循环将增加计数器,在其中,内循环也将运行。

  7. 对于每个外循环,内循环将运行 10 次。

  8. 因此,我们得到准确的行:1-10,11-20

尝试这个:

<table>
       <?php
       $k=0;
       for ($i=0; $i<10; $i++) {
       ?>
       <tr>
           <?php
           for ($j=0; $j<10; $j++) {
           ++$k;
           ?>
           <td><?php print $k;?></td>
           <?php
           }
           ?>
       </tr>
       <?php
       }
       ?>
</table>
于 2013-09-26T16:43:26.373 回答
0

尝试这个:

<?php
echo "<table border =\"1\" style='border-collapse: collapse'>";
    for ($row=1; $row <= 10; $row++) { 
        echo "<tr> \n";
        for ($col=1; $col <= 10; $col++) { 
           $p = $col * $row;
           echo "<td>$p</td> \n";
            }
            echo "</tr>";
        }
        echo "</table>";
?>
于 2021-02-15T05:53:50.793 回答
-2
<table>
    <?php
    for ($x=1; $x <= 100; $x++)
    {
        if($x%10 ==1)
        **{
            echo "<tr><td>" . "<br>" . "</tr></td>";**
        }
        echo "<tc><td>" . $x . "</td></tc>" ;
    }
    ?>
</table>
于 2018-09-28T10:08:34.050 回答