c語言通信系統
『壹』 通信工程要把c語言學習到什麼程度啊
看你出來要做什麼工作的!
我就是學的通信工程,如果出來去移動上啊 網通什麼的通信單位,可能用的少!
但是我現在在做手機的模組設計,用的很多,目前正在惡補!
『貳』 用c語言編寫一個程序,學生通訊管理系統
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
usingnamespacestd;
#definemaxlen15
structpersons
{
intnum;
charname[20];
chare_addr[20];
chartel_no[15];
charsim_no;
chararch;
}persons[maxlen];
typedefstructlnode{
intnum;
charname[20];
chare_addr[20];
chartel_no[15];
charsim_no;
chararch;
structlnode*next;
}listnode,*linklist;
linklisthead=NULL,r=NULL;
listnode*s,*p0,*p1,*p2,*p3,*p4,*p5,*p6,*p7,*p8,*p9;
inti;
charname1[10],ch;chartel_no1[15];chararch1;charsim_no1;chare_addr1[20];
chars1[20];
FILE*fp;
voidcreat()
{
intj;
longk;
fp=fopen("數據文件.txt","rt");
if(fp!=NULL)
{for(i=0;i<=maxlen;i++)
{j=fgetc(fp);
if(j==EOF)
return;
k=i;
fseek(fp,k*sizeof(structpersons),0);
fread(&persons[i],sizeof(structpersons),1,fp);
s=(linklist)malloc(sizeof(listnode));
s->num=persons[i].num;
strcpy(s->name,persons[i].name);
strcpy(s->e_addr,persons[i].e_addr);
strcpy(s->tel_no,persons[i].tel_no);
s->sim_no=persons[i].sim_no;
s->arch=persons[i].arch;
if(head==NULL)
{head=s;r=head;head->next=NULL;}
else
{r->next=s;
r=s;r->next=NULL;
}}fclose(fp);}
else
{fp=fopen("數據文件.txt","w");
i=1;
}
}
voidShowA()
{p1=head;
while(p1!=NULL)
{if(p1->arch=='A')
{
cout<<endl;
cout<<p1->name<<endl;
cout<<p1->tel_no<<endl;
cout<<p1->sim_no<<endl;}
p1=p1->next;continue;}
}
voidShowB()
{p1=head;
while(p1!=NULL)
{if(p1->arch=='B')
{
cout<<endl;
cout<<p1->name<<endl;
cout<<p1->tel_no<<endl;
cout<<p1->sim_no<<endl;}
p1=p1->next;continue;}
}
voidShowC()
{p1=head;
while(p1!=NULL)
{if(p1->arch=='C')
{
cout<<endl;
cout<<p1->name<<endl;
cout<<p1->tel_no<<endl;
cout<<p1->sim_no<<endl;}
p1=p1->next;continue;}
}
voidShow()
{charch1;
printf("Whicharchdoyouwanttoshow? ");
cout<<"A:同學同事"<<"B:家人"<<"C:其他"<<endl;
cout<<"請選擇:"<<endl;
cin>>ch1;
switch(ch1)
{case'A':ShowA();break;
case'B':ShowB();break;
case'C':ShowC();break;
default:cout<<"error"<<endl;
}
}
voidDelete()
{printf(" 請輸入要刪除用戶的姓名:");
cin>>name1;
p4=head;
if(strcmp(p4->name,name1)==0)
{p4=p4->next;
head=p4;
}
else
{while(strcmp(p4->next->name,name1)!=0)
p4=p4->next;
p5=p4->next;
p4->next=p5->next;
free(p5);
}
}
voidInput()
{s=(linklist)malloc(sizeof(listnode));
printf(" 請輸入該用戶的信息:");
cout<<"name:";
cin>>s->name;
cout<<"tel_no:";
cin>>s->tel_no;
cout<<"sim_no:";
cin>>s->sim_no;
cout<<"e_addr:";
cin>>s->e_addr;
cout<<"arch:";
cin>>s->arch;
if(head==NULL)printf(" ");
else
{p8=head;
while(p8!=NULL&&strcmp(s->name,p8->name)!=0&&strcmp(s->tel_no,p8->tel_no)!=0)
p8=p8->next;
if(p8!=NULL)
{printf("您添加的用戶已存在!");
free(s);}}
if(head==NULL)
{head=s;head->next=NULL;}
else
{r->next=s;
r=s;r->next=NULL;}
}
voidAlter()
{
printf(" 請輸入姓名:");
cin>>name1;
p3=head;
while(p3!=NULL&&strcmp(name1,p3->name)!=0)
p3=p3->next;
if(p3==NULL)
printf(" 您選擇的用戶不存在!");
else
{printf(" 請輸入該用戶的新信息!");
cout<<"name:";
cin>>name1;
cout<<"tel_no:";
cin>>tel_no1;
cout<<"e_addr:";
cin>>e_addr1;
cout<<"sim_no:";
cin>>sim_no1;
cout<<"arch:";
cin>>arch1;
while(p9!=NULL&&strcmp(name1,p9->name)!=0&&strcmp(tel_no1,p9->tel_no)!=0)
p9=p9->next;
if(p9==NULL)
{strcpy(p3->name,name1);
strcpy(p3->tel_no,tel_no1);
strcpy(p3->e_addr,e_addr1);
p3->sim_no=sim_no1;
p3->arch=arch1;
}
else
printf("您添加的用戶已存在!");
}
}
voidDial()
{inta;charb;
cout<<"1.撥叫用戶:"<<endl;
cout<<"2.使用單鍵撥號:"<<endl;
cin>>a;
p0=head;
if(a==1)
{cout<<"請輸入撥叫用戶的姓名:";
cin>>name1;
while(strcmp(name1,p0->name)!=0&&p0!=NULL)
p0=p0->next;
if(p0==NULL)
cout<<"您選擇的用戶不存在!";
else
/*for(c=0;c<15;c++)
{cout<<endl;
cout<<(*p0).tel_no[c];}*/
{cout<<endl;
cout<<p0->tel_no;
cout<<endl;}
}
else
{cout<<"請輸入單鍵號碼:";
cin>>b;
while(p0!=NULL&&b!=p0->sim_no)
p0=p0->next;
if(p0==NULL)
cout<<"您輸入的單鍵號碼不存在!";
else
{cout<<endl;
cout<<p0->name<<endl;
cout<<p0->tel_no;
cout<<endl;}
}
}
voidSave()
{intj;
fp=fopen("數據文件.txt","w");
for(p2=head,j=0;p2!=NULL;j++,p2=p2->next)
{
strcpy(persons[j].name,p2->name);
strcpy(persons[j].tel_no,p2->tel_no);
persons[j].sim_no=p2->sim_no;
strcpy(persons[j].e_addr,p2->e_addr);
persons[j].arch=p2->arch;
fwrite(&persons[j],sizeof(structpersons),1,fp);
}
}
voidmain()
{creat();
do
{
printf("**********************************************************");
printf(" 歡迎來到通訊錄!");
printf(" 請選擇操作:");
printf(" 1.顯示通訊錄");
printf(" 2.刪除通訊錄");
printf(" 3.添加通訊錄");
printf(" 4.編輯通訊錄");
printf(" 5.撥號功能");
printf(" 6.保存剛才的操作並退出 ");
printf("**********************************************************");
printf(" ");
printf(" 選擇您想要的操作:");
cin>>ch;
switch(ch)
{case'1':Show();
break;
case'2':Delete();
break;
case'3':Input();
break;
case'4':Alter();
break;
case'5':Dial();
break;
case'6':Save();
fclose(fp);
exit(0);
break;
default:
printf(" ********************************* ");
printf(" Thenumshould1-6!!! ");
printf(" **********************************");
break;
}
}while(1);
}
運行結果:
『叄』 c語言和通信工程結合緊密嗎
通信工程最主要是信號的傳輸方面的知識。最重要的課程是數電、模電、信號系統、以及通信原理等。與C語言的聯系很少。
『肆』 c語言windows下網路通信怎麼實現
使用套接抄字即可,socket隔離襲了底層一系列復雜的握手協議,能夠很方便進行網路通信。
程序分為服務端和客戶端。
服務端創建打開得到sockfd後,再進行bind綁定通信埠,IP等,然後進入listen和accept阻塞狀態。
然後客戶端也同樣打開sockfd,然後向服務端發起連接。
連接上後,可以方便使用send/write,recv/read進行通信了。
網路套接字C程序,有很多簡單例子。
『伍』 通信工程的學c語言有什麼用,只是單片機用到嗎
V9zz認為,C語言是最為重要的編程語言,學會C語言,其他語言很好上手。大多數操作系統的內核都是C編寫的,包括linux、windows、mac os, andorid系統的內核也是linux內核。
C語言可以完成其他任何語言能夠完成或者不能完成的工作,可以開發系統,做應用軟體、做界面,基本上C可以做一切。對於你的專業而言,通信工程不僅僅涉及到單片機,還會涉及到嵌入式開發,比如嵌入式linux、比如vxworks、比如windows ce,這些都需要C。
掌握好C,你將有機會擺脫通信工程這個專業對你的限制,因為一個優秀的C語言工程師,有著太大的就業范圍。還有,C是使用人數最多的語言,C程序工程師的待遇也較高。
『陸』 c語言通訊管理系統輸出操作每一步解釋一下
int Delete_a_record(Person per[],int n) //刪除函數
{
char s[20]; 定義字元數組用於接受名字
int i=0,j; 定義變數
printf("\t請輸入想刪除記錄中的名字:");
scanf("%s",s); 接收名字
while(strcmp(per[i].name,s)!=0&&i<n) i++; 調用系統函數strcmp比較字元串大小
if(i==n) 判斷是否有此人存在
{
printf("\t通訊錄中沒有此人!\n");
return(n);
}
for(j=i;j<n-1;j++) 如果存在就將從他以後的每一個值付給前一個達到刪除目的
{ strcpy(per[j].score,per[j+1].score);
strcpy(per[j].num,per[j+1].num);
strcpy(per[j].name,per[j+1].name);
strcpy(per[j].adds,per[j+1].adds);
}
printf("\t\t\t已經成功刪除!\n");
return(n-1);
}
『柒』 求一個c語言 c++ 即時通訊系統源代碼
我有兩套軟體,一個是基於客戶端/服務端的通訊軟體,一個是單客戶端區域網通訊軟體,VC++開發,支持文字,表情,圖片及其文件斷點傳輸,提供源代碼!
『捌』 用C語言編程《通訊管理系統》
建一個順序表,然後在以上函數中調用順序表的各個函數