下面是一个Applet程序,其功能是打印一个任意进制的乘法表。要求输入乘法表的进制,点击ok则打印出该乘法表。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:

import java.awt.*;
import java.applet.*;
import java.lang.*;
public class ex30 3 extends Applet{
private TextField tf;
private Button btn;
public void init(){
tf = new TextField(25);
add(tf);
btn = new Button("OK");
add(btn);
resize(250, 200);
}
public void paint(Graphics g){
try{
int n = tf.getText();
int i,j,x=20,y=60;
for(i=0;i<n;i++){
for (j=1; j<=n; j++) {
g.drawString(Integer.toString(i)+"*"
+Integer.toString(j)+"="
+Integer.toString(i*j),
i*x,j*y);
}
}
}
catch(NumberFormatException nfe){
g.drawString("error number!",20,50);
}
}
public boolean action(Event e, Object o){
if (o == "OK"){
repaint();
return true;
}
else
return false;
}
}
ex30_3.html
<HTML>
<HEAD>
<TITLE>ex30_3</TITLE>
</HEAD>
<BODY>
<applet code="ex30_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
第1题:
给定程序MODll.C中函数fun的功能是:根据以下公式求π值,并作为函数值返回。
例如,给指定精度的变量eps输入0.0005时,应当输出Pi=3.141480。

请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

第2题:
下列给定程序中,函数proc()的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若proc()返回1,则输出″YES″;若proc()返回0,则输出″NO″!
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main)函数,不得增行或删行,也不得,t更改程序的结构。
试题程序:


(1)错误:k++
正确:k++;
(2)错误:if(m=k)
正确:if(m==k)
【解析】根据C语言的语法规则,每一条语句都要以分号结束,因此,要在语句“k++”之后加上分号。判断变量m与变量k是否相等应该用符号“==”,符号“=”为赋值符号,因此,“if(m=k)”应改为“if(m==k)”。
第3题:
给定程序MODll.C中函数fun的功能是:用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止:

例如,程序运行后,输入0.0001,则程序输出3.1414。
请改正程序中的错误,使它能输出正确的结果。
注意:不要改动smain函数,不得增行或删行,也不得更改程序的结构!

第4题:
给定程序MODll.C中函数fun的功能是:统计字符串中各元音字母(即:A、E、I、O、U)的个数。注意:字母不分大、小写。
例如:若输入:THIs is aboot,则输出应该是:1、0、2、2、0。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第5题:
下列给定程序中,函数proc()的功能是:传人一个整数n,计算如下公式的值。 t=1/2-1/3-…-1/n 例如,若输入3,则应输出0.166667。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: