【找文】男主女主都是学计算机的,女主编程很好!
我也想找这本书。是不是有这些情节:我记得剧情开始的一些情节。好像是学计算机的,男主角好像是女主的学长,有一次学校系统出问题男主的公司来解决,结果其中一个人好像看到了校长网盘里面有不可描述的片子。
编程入门先学C语言或者python。
为了解决使用机器语言编写应用程序所带来的一系列问题,人们首先想到使用助记符号来代替不容易记忆的机器指令。这种助记符号来表示计算机指令的语言称为符号语言,也称汇编语言。
在汇编语言中,每一条用符号来表示的汇编指令与计算机机器指令一一对应;记忆难度大大减少了,不仅易于检查和修改程序错误,而且指令、数据的存放位置可以由计算机自动分配。
扩展资料:
使用汇编语言编写计算机程序,程序员仍然需要十分熟悉计算机系统的硬件结构,所以从程序设计本身上来看仍然是低效率的、繁琐的。
但正是由于汇编语言与计算机硬件系统关系密切,在某些特定的场合,如对时空效率要求很高的系统核心程序以及实时控制程序等,迄今为止汇编语言仍然是十分有效的程序设计工具。
但它有不可替代的特性,比如一些单片机或者一些直接控制硬件的程序就一定要用汇编语言。
我给你一个哈夫曼编码译码器,我只有这个,统计字符的代码你自己可以用一个函数实现,然后存放在一个数组中,将其首地址传给Huffman函数就可以了。
#include<stdioh>
#include<malloch>
#include<stringh>
#include<stdlibh>
typedef struct
{
int weight;
char ch;
int parent,lchild,rchild;
}HTNode,HuffmanTree;
typedef struct
{
char ch;
char chs;
}HuffmanCode;
typedef struct
{
char ch;
int weight;
}sw;
typedef struct
{
HuffmanTree HT;
HuffmanCode HC;
}huf;
void select(HTNode HT,int n,int n1,int n2)
{
int i=1; int n3;
while(HT[i]parent!=0)
i++;
n1=i;
i++;
while(HT[i]parent!=0) i++;
n2=i;
if(HT[n1]weight<HT[n2]weight)
{ n3=n1;n1=n2;n2=n3;}
for(i++;i<=n;i++)
{
if(HT[i]parent==0)
{ if(HT[i]weight<HT[n1]weight)
n1=i;
else if(HT[i]weight<HT[n2]weight)
n2=i;
}
}
}
huf HuffmanCoding(HuffmanTree HT,HuffmanCode HC,sw w,int n,huf HUF)
{int m,i,s1,s2,start,c,f;
HuffmanTree p;
char cd;
if(n<=1) return 0;
m=2n-1;
HT=(HuffmanTree)malloc((m+1)sizeof(HTNode));
for(p=HT+1,i=1;i<=n;i++,p++,w++)
{p->weight=w->weight;p->ch=w->ch;p->parent=0;p->lchild=0;p->rchild=0;}
for(;i<=m;i++,p++)
{p->weight=0;p->ch='^';p->parent=0;p->lchild=0;p->rchild=0;}
for(i=n+1;i<=m;i++)
{
select(HT,i-1,&s1,&s2);
HT[s1]parent=i;HT[s2]parent=i;
HT[i]lchild=s1;HT[i]rchild=s2;
HT[i]weight=HT[s1]weight+HT[s2]weight;
}
HC=(HuffmanCode )malloc((n+1)sizeof(char));
cd=(char )malloc(nsizeof(char));
cd[n-1]='\0';
for(i=1;i<=n;i++)
{ start=n-1;
for(c=i,f=HT[i]parent;f!=0;c=f,f=HT[f]parent)
if(HT[f]lchild==c)cd[--start]='0';
else cd[--start]='1';
HC[i]ch=HT[i]ch;
HC[i]chs=(char)malloc((n-start)sizeof(char));
strcpy(HC[i]chs,&cd[start]);
printf("%c %-10s\n",HC[i]ch,HC[i]chs);
}
HUF->HT=HT;
HUF->HC=HC;
return HUF;
}
char convert(char chars,char chars1,HuffmanCode hc,int n)
{
char p=chars; int i;
strcpy(chars1,"");
while(p)
{
i=1; while(hc[i]ch!=p&&i<=n) i++;
strcat(chars1,hc[i]chs); p++;
}
printf("the chars translate are:%s\n",chars1);
return chars1;
}
void transcode(HuffmanTree ht,char chars2,charchars3)
{
int i=1,p; char q=chars2;char r=chars3;
while(ht[i]parent!=0) i++;
p=i;
while(q)
{
while(ht[p]lchild!=0 && q)
{
if(q=='0')
p=ht[p]lchild;
else p=ht[p]rchild;
q++;
}
if(ht[p]lchild==0)
{r=ht[p]ch;r++;}
p=i;
}
r='\0';
printf("the chars are:");
puts(chars3);
}
void input(int n,sw w)
{
int i;
printf("input the mount of char:");
scanf("%d",n);
for(i=1;i<=n;i++,w++)
{printf("input the %dth char and weight:",i);
fflush(stdin);
scanf("%c%d",&w->ch,&w->weight);
}
}
void main(void)
{HTNode HT;
HuffmanCode HC,hc;
HuffmanTree ht;
huf HUF,huf2;
int n;
sw w[40];
char ch,inchar[500],outchar[1000];
char abc;
char p=inchar;
input(&n,w);
HUF=HuffmanCoding(&HT,&HC,w,n,&huf2);
printf("input chars to translate,ends of '#':");
fflush(stdin);//清除流,解决输入干扰
ch=getchar();
while(ch!='#')
{p=ch;
p++;
ch=getchar();
}
p='\0';
hc=HUF->HC;
ht=HUF->HT;
abc=convert(inchar,outchar,hc,n);
transcode(ht,abc,outchar);
}
【找文】男主女主都是学计算机的,女主编程很好!
本文2023-11-10 15:03:08发表“资讯”栏目。
本文链接:https://www.lezaizhuan.com/article/451456.html