R< U, F >, U = (A, B, C, G, H, I), F = {A->B, A->C, CG->H, CG->I, B->H}, A-> H? CG -> HI? AG -> I?
时间: 2023-07-15 09:11:35 浏览: 91
根据关系模型R< U, F >,其中U为属性集合,F为函数依赖集合。因此,题目中给出的U和F分别表示有6个属性(A、B、C、G、H和I)和5个函数依赖(A->B, A->C, CG->H, CG->I, B->H)。
对于问题:
1. A-> H?
根据给定的函数依赖,无法推导出A->H。因此,A不决定H,不能得出A->H。
2. CG -> HI?
根据给定的函数依赖,CG决定了H和I,因此可以得出CG->HI。
3. AG -> I?
AG并不是一个属性,因此无法得出AG->I。
相关问题
制作一个Applet小应用程序,设置其布局为BorderLayout,定义一个按钮和多行文本框并分别放到“North”区域和“Center”区域。 import java.awt.*; import java.applet.*; import javax.swing.*; import java.awt.event.*; //声明AppletDemo类,其父类为JApplet,并实现接口ActionListener (1 ) { JButton btn; JTextArea txt; public void init(){ //设置其布局为BorderLayout (2) btn=new JButton("Show Msg"); txt=new JTextArea(3,20); //把按钮btn放到“North”区域,txt放到“Center”区域 (3) //给按钮注册监听器 (4) } public void actionPerformed(ActionEvent e){ txt.append(btn.getText()); } } 对应的html网页文件为: <BODY> <applet code=" (5) " width="300" height="200"></applet> </BODY>
(1)
```
public class AppletDemo extends JApplet implements ActionListener {
//...
}
```
(2)
```
setLayout(new BorderLayout());
```
(3)
```
add(btn, BorderLayout.NORTH);
add(txt, BorderLayout.CENTER);
```
(4)
```
btn.addActionListener(this);
```
(5)
```
AppletDemo.class
```
改正下面程序代码的逻辑错误。 (注意:如果将程序段拷贝至VC环境下需去掉无效的、不可见字符,方可编译通过,因此,建议不要拷贝,最好重新输入程序段) #define N 4 #include “stdio.h” struct man { char name[20]; int age; }person[N]={“li”,19,“wang”,18,“zhang”,32,“sun”,22}; main() {struct man *q,*p; int i,m=0; p=person; for (i=0;i<N;i++) {if(m<p->age) q=p++; m=q->age;} printf("%s,%d",q->name,q->age);}
以下是改正后的程序代码:
```c
#include <stdio.h>
#define N 4
struct man {
char name[20];
int age;
} person[N] = {{"li", 19}, {"wang", 18}, {"zhang", 32}, {"sun", 22}};
int main() {
struct man *q, *p;
int i, m = 0;
p = person;
for (i = 0; i < N; i++) {
if (m < p->age) {
q = p;
m = q->age;
}
p++;
}
printf("%s,%d", q->name, q->age);
return 0;
}
```
程序中的逻辑错误是在循环中寻找年龄最大的人的代码,原来的代码中没有正确地寻找到年龄最大的人,而是输出了最后一个人的信息。修改后的代码使用了一个指针 q 来跟踪年龄最大的人,每次比较找到更大的年龄就更新 q,并在循环结束后输出 q 所指向的人的信息。
阅读全文