我这里有一个小程序可以解决该问题------代码如下:
import java.awt.*;
import java.applet.*;
import java.awt.Color;
public class bc extends Applet
{
Label l;
TextField tf;
int n=0;
public void init()
{
l=new Label("请输入正整数:");
tf=new TextField(6);
add(l);
add(tf);
}
public boolean action(Event e ,Object o)
{
n=Integer.parseInt(o.toString());
repaint();
return(true);
}
public void paint(Graphics g)
{
if(n>=20)
{ for(int i=0;i<n;i++)
{g.drawString("*",20+i*10,50);}
for(int j=0;j<n-2;j++)
{
g.drawString("*",20,60+j*10);
for(int i=0;i<n-2;i++)
{g.drawString(" ",30+10*i,60+10*j);}
g.drawString("*",30+10*(n-2),60+10*j);
}
for (int i=0;i<n;i++ )
{
g.drawString("*",20+10*i,60+10*(n-2));
}
}
if(n>=2)
{
for(int i=0;i<n;i++)
{g.drawString("*",20+i*10,50);}
for(int j=0;j<n-2;j++)
{
g.drawString("*",20,60+j*10);
for(int i=0;i<n-2;i++)
{g.drawString(" ",30+10*i,60+10*j);}
g.drawString("*",30+10*(n-2),60+10*j);
}
for (int i=0;i<n;i++ )
{
g.drawString("*",20+10*i,60+10*(n-2));
}
}
else
{
String s1="请输入大于1的整数!";
g.setFont(new Font("华文行楷",Font.PLAIN,40));
g.setColor(Color.red);
g.drawString(s1,30,75);
}
}
}
他的html代码为
<HTML>
<HEAD>
<TITLE> bcd </TITLE></HEAD>
<BODY>
<applet code=bcd.class width=400 height=400></applet>
</BODY>
</HTML>
你可以看看,很简单的了