91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11.42 KB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發布日期: 2024-10-07
  • 語言: 其他
  • 標簽: 通信原理??C??

資源簡介

關于通信原理實驗課上各種調制與解調的C程序

資源截圖

代碼片段和文件信息

#include
#include

#define?n?27
#define?m?2*n-1

struct?hufmtree
{?float?weight;
??int?lchildrchildparent;
};

?struct?codetype
?{?char?bits[n];
???int?start;
???char?ch;
?};

?struct?hufmtree?tree[m];
?struct?codetype?code[n];
?????float?cwit[n]={0.18590.06420.0127\
?0.02180.03170.10310.02080.0152\
?0.04670.05750.00080.00490.0321\
?0.01980.05740.06320.01520.0008\
?0.04840.05140.07960.02280.0083\
?0.01750.00130.01640.0005};/*27個字符的概率順序:‘?‘‘a‘--‘z‘*/

void?HUFFMAN()??????????????????/*定義HUFFMAN子函數?*/???????
{??? int?ijp1p2;???????????/*?功能:用哈夫曼算法形成哈夫曼樹,*/
float?small1small2;?????/*經過處理哈夫曼樹的結構存在于tree[53]中*/
for(i=0;i { tree[i].parent=0;
tree[i].lchild=0;
tree[i].rchild=0;
tree[i].weight=0.0;
}
for(i=0;i tree[i].weight=cwit[i];
for(i=n;i { p1=0;p2=0;
small1=1.0;???small2=1.0;
for(j=0;j if(tree[j].parent==0)
if(tree[j].weight { small2=small1;
small1=tree[j].weight;
p2=p1;
p1=j;
}
else?if(tree[j].weight { small2=tree[j].weight;
p2=j;
}
tree[p1].parent=i+1;
tree[p2].parent=i+1;
tree[i].lchild=p1+1;
tree[i].rchild=p2+1;
tree[i].weight=tree[p1].weight+tree[p2].weight;
}
}?????????????/*HUFFMAN()*/

void?HUFFMANCODE()??????/*定義HUFFMANCODE子函數*/
{ int?ijcp;????/*功能:根據已有的哈夫曼樹對27個字符編碼,*/
struct?codetype?cd;??/*經過處理,第i個字符的碼字存于code

[i].bits[27中*/
for(i=0;i { cd.start=n;
c=i+1;
p=tree[i].parent;
while(p!=0)
{??cd.start--;
???if(tree[p-1].lchild==c)
?????cd.bits[cd.start]=‘0‘;
???else?cd.bits[cd.start]=‘1‘;
???c=p;
???p=tree[p-1].parent;
}
code[i]=cd;
}
code[0].ch=‘?‘;???????/*將空格和26個字母輸入到code[27].ch內*/
for(i=1;i code[i].ch=‘a‘+i-1;
}??????/*HUFFMANCODE()*/

void?CODE()
{???????int?ijl=0t;
char?s[128]={0};
printf(“input?the?words?you?want?to?code(大小寫均可)\n“);
getchar();
scanf(“%c“&s[l]);
while(s[l]!=‘\n‘)
{??l++;
???scanf(“%c“&s[l]);
}
?for(i=0;i ?{ ?if(s[i]==‘?‘)
?j=0;
??else?if((s[i]>=‘a‘)&&(s[i]<=‘z‘))
?????????j=s[i]+1-‘a‘;
??????else?if((s[i]>=‘A‘)&&(s[i]<=‘Z‘))
????????j=s[i]+1-‘A‘; ??
?for(t=code[j].start;t ?printf(“%c“code[j].bits[t]);
?printf(“?“);
?}?
}????????/*CODE()*/

void?DECODE()

{ int?i=m-1k=0jco=0;
char?ak[256];
char?cho[64];

printf(“input?0?or?1?you?want?to?decode\n“);
getchar();
scanf(“%s“ak);
k=strlen(ak);

for(j=0;j {??if(ak[j]==‘0‘)
????i=tree[i].lchild-1;
???? else?if(ak[j]==‘1‘)
i=tree[i].rchild-1;
????if(tree[i].lchild==0)
{??cho[co]=code[i].ch;
???????co++;
???????i=m-1;
}
}
?for(j=0;j ?printf(“%c“cho[j]);

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1265??2006-07-03?16:42??通信原理C程序\FFT.CPP

?????文件???????3531??2006-06-04?14:59??通信原理C程序\Haffman.cpp

?????文件???????2339??2006-07-10?15:37??通信原理C程序\LI‘BUFEN.CPP

?????文件???????1945??2006-06-04?15:12??通信原理C程序\LI‘DPSKcha.CPP

?????文件???????1943??2006-06-04?15:13??通信原理C程序\LI‘DPSKton.CPP

?????文件???????1681??2006-07-03?16:40??通信原理C程序\LI‘FM.CPP

?????文件???????2818??2006-07-17?16:17??通信原理C程序\LI‘PCM.CPP

?????文件???????1456??2006-07-03?16:59??通信原理C程序\QKL???DSB.CPP

?????文件???????1669??2006-07-03?16:49??通信原理C程序\SSB?env.CPP

?????文件???????1587??2006-06-04?15:33??通信原理C程序\SSB?ton.CPP

?????文件???????2109??2006-07-03?16:48??通信原理C程序\VSB?env.CPP

?????文件???????2020??2006-06-04?15:27??通信原理C程序\VSB?ton.CPP

?????文件???????2041??2007-11-05?22:00??通信原理C程序\DRAW.CPP

?????文件???????1334??2007-11-05?22:01??通信原理C程序\LI‘AM.CPP

????....SH.?????????9??2008-01-18?08:38??通信原理C程序\_desktop.ini

?????目錄??????????0??2006-07-14?08:34??通信原理C程序

-----------?---------??----------?-----??----

????????????????27747????????????????????16


評論

共有 條評論