问题 选择题

在加热时,浓硫酸与铜发生反应的化学方程式为:2H2SO4(浓)+Cu  CuSO4+SO2↑+2H2O,对于该反应,下列说法中不正确的是

A.是氧化还原反应

B.浓硫酸是还原剂

C.H2SO4表现了氧化性和酸性

D.反应中Cu发生了氧化反应

答案

答案:B

题目分析:A、该反应中铜、硫元素的化合价发生了变化,是氧化还原反应,正确;B、硫元素的化合价降低被还原,作氧化剂,错误;C、硫酸作氧化剂,表现氧化性,同时有硫酸铜和水生成又表现了酸性,正确;D、铜的化合价升高,被氧化,正确,答案选B。

选择题
填空题

本题的功能是用文本框来设定表盘中指针的位置。窗口中有一个画板和两个文本框,画板中绘制了一个表盘和时针、分针,通过文本框分别设定“时”和“分”,表盘中的时针和分针就会指到对应的位置上。
import java. awt. * ;
import java. awt. event. * ;
import java. awt. geom. * ;
import javax. swing. * ;
import javax. swing, event. * ;
public class java3

public static void main(String[] args)

TextTestFrame frame=new TextTestFrame();
frame. setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
frame. show();


class TextTestFrame extends JFrame

public TextTestFrame()

setTitle("java3");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
Container contentPane=getContentPane();
DocumentListener listener=new DocumentListen-er();
JPanel panel=new JPanel();
hourField=new JTextField("12",3);
panel, add(hourField);
hourField, getDocument (). addDocumentListener(this);
minuteField=new JTextField("00",3);
panel, add(minuteField);
minuteField, getDocument(), addDocumentListener(listener);
contentPane, add ( panel, BorderLayout. SOUTH);
clock=new ClockPanel();
contentPane, add (clock, BorderLayout. CENTER);

public void setClock()

try

int hours
= Integer. parseInt (hourField. getText(). trim());
int minutes
= Integer. parselnt(minuteField, getText(), trim());
clock, setTime(hours, minutes);

catch (NumberFormatException e)

public static final int DEFAULT WIDTH=300;
public static final int DEFAULT_HEIGHT=300;
private JTextField hourField;
private JTextField minuteField;
private ClockPanel clock;
private class clockFieldListener extends DocumentListener

public void insertUpdate(DocumentEvent e) setClock();
public void removeUpdate(DocumentEvent e) setClock();
public void changedUpdate(DocumentEvent e)


class ClockPanel extends JPanel

public void paintComponent(Graphics g)

super, paintComponent(g);
Graphics2D g2=(Graphics2D)g;
Ellipse2D circle
=new Ellipse2D. Double(0,0,2 * RADIUS, 2 * RADIUS);
g2. draw(circle);
double hourAngle
=Math. toRadians(90-360 * minutes/(12 * 60));
drawHand (g2, hourAngle, HOUR_HAND_LENGTH);
double minuteAngle
Math. toRadians(90-360 * minutes/60)
drawHand(g2, minuteAngle, MINUTE_HAND_LENGTH);

public void drawHand(Graphics2D g2,
double angle, double handLength)

Point2D end=new Point2D. Double(
RADIUS+handLength * Math. cos(angle),
RADIUS-handLength * Math. sin(angle));
Point2D center=new Point2D. Double(RADIUS, RADIUS)
g2. draw(new Line2D. Double(center, end));

public void setTime(int h, int m)
minutes=h*60+m;
repaint();

private double minutes=0;
private double RADIUS=100;
private double MINUTE_HAND_LENGTH=0.8 * RADIUS;
private double HOUR_HAND_LENGTH=0.6 * RADIUS;