问题 问答题

某机关职员田某和胡某是夫妻关系。该机关主管张某因态度粗暴、工作方法简单,与同事关系紧张。一日,因新职员田某的一点小过错,张某即对其当众训斥,因以前张某曾追求过田某之妻胡某而没有结果,田某认为这是张某借机报复。从此,田某对张某怀恨在心,并消极怠工,上班经常迟到。田某越是消极怠工,张某越是对其当众训斥,而田某愈发认为张是故意刁难自己,同自己故意过不去。某年某月,张某因经济问题被立案审查,田某以为时机已到,为把张某彻底搞垮、搞臭,遂与妻子胡某商量,捏造张某犯罪事实:某年某月某日,张某把田之妻胡某骗至宿舍中强行 * * 淫。周密计划后,田某,胡某遂向有关机关告发了张某。
问:田某、胡某的行为构成了什么罪

答案

参考答案:田某、胡某的行为构成了诬告陷害罪。诬告陷害罪是指意图使他人受到刑事处分,捏造事实,向国家机关或有关单位告发他人有罪的行为,本罪的特点是:(1)犯罪对象是特定他人,如果捏造犯罪事实向国家机关或有关单位作虚假告发,但没有指向任何具体的人,则不构成犯罪。(2)本罪在客观方面表现为假借司法机关以达到诬陷之目的的行为。这种行为包括两个方面:一是捏造犯罪事实;二是向有关国家机关或单位作虚假告发。二者缺一不可。行为人如果捏造的不是犯罪事实,虽有使他人受到刑事处罚之目的,也不构成犯罪。 (3)本罪在主观方面是故意并且具有使特定的他人受到刑事处分的目的。但事实上被诬陷人是否受到刑事处分,不影响本罪成立。如果行为人并无使他人受到刑事处罚的目的,只是意图损坏他人名誉或使其受纪律处分,不构成本罪。认定本罪,须注意其与报复陷害罪的区别,所谓报复陷害罪是指国家机关工作人员滥用职权、假公济私,对控告人、申诉人、批评人、举报人实行报复陷害的行为。两罪的主要区别有:(1)犯罪对象的范围不同,前者可以是任何人,无身份限制;后者的对象只限于控告人、申诉人、批评人、举报人;(2)犯罪的行为方式不同,报复陷害罪必须是利用职务、滥用职权,进行报复陷害;诬告陷害的行为,是否利用职权,对构成犯罪与否,没有影响;(3)犯罪故意的内容不同,报复陷害罪的行为人有陷害他人的目的,但并非限于让被害人受到刑事处罚;诬告陷害罪,行为人在主观上必须具有意图使他人受到刑事处分的目的;(4)犯罪主体不同,报复陷害罪的主体必须是国家机关工作人员;诬告陷害罪是一般主体。
结合本案来看,被告人虽然具有国家机关工作人员的身份,客观上也实施了诬告陷害的行为,但是关键在于被告人没有滥用职权的行为,而且张某也不是控告人、申诉人、批评人或举报人。所以,被告人构成了诬告陷害罪。

单项选择题
填空题

[说明]
Huffman树又称最优二叉树,是一类带权路径长度最短的树,在编码中应用比较广泛。
构造最优二叉树的Huffman算法如下:
①根据给定的n各权值w1,w2,…,wn构成n棵二叉树的集合F=T1,T2,…,Tn,其中每棵树Ti中只有一个带权为wi的根节点,其左右子树均空。
②在F中选取两棵根节点的权值较小的树作为左右子树,构造一棵新的二叉树,置新构造二叉树的根节点的权值为其左右子树根节点的权值之和。
③从F中删除这两棵树,同时将新得到的二叉树加入到F中。
重复②③,直到F中只剩一棵树为止。
函数中使用的预定义符号如下:
#define INT_MAX 10000
#define ENCODING LENGTH 1000
typedef enum(none,left_chiid, right chiid Which;
/*标记是左孩子还是右孩子*/
typedef char Elemtype;
typedef struct TNode//Huffman树节点
Elemtype letter;
int weight; //权值
int parent; //父节点
Which sigh;
char *code; //节点对应编码
HTNode,*HuffmanTree;
int n;
char coding[50];//储存代码
[函数]
void Select(HuffmanTree HT, int end, int *s1, int *s2)
/*在0~END之间, 找出最小和次小的两个节点序号,返回s1、s2*/

int i;
int min1= INT_MAX;
int min2 = INT_MAX;
for (i = 0; i <= end; i++) /*找最小的节点序号*/
if((______) && (HT[i].weight < minl1))
*s1 = i;
min1 = HT[i].weight;


for(i = 0; i <= end; i++) *找次小节点的序号*/
if((HT[i].parent == 0) && (______)
&& (min2 > HT[i].weight))
*s2 = i;
min2 = HT[i].weight;



void HuffmanTreeCreat(HuffmanTree &HT)/*建立HUFFMAN树*/

int i;
int m = 2 * n - 1;
int s1,s2;
for(i = n; i < m; i++)
Select(______);
HT[s1].parent = i;
HT[s2].parent = i;
HT[s1].sigh = left_child;
HT[s2].sigh = right_child;
HT[i].weight = ______;


void HuffmanTreeEncoding(char sen[],HuffmanTree HT)
/*将句子进行编码*/
int i = 0;
int j;
while(sen[i] != ’\0’)
for(j = 0; j < n; j++)
if (HT[j].letter == sen[i]) /*字母匹配则用代码取代*/
strcat(coding, ______);
break;


i++;
if (sen[i] == 32) i++;

printf("\n%s",coding);