使用C语言打造通讯录管理系统和教学安排系统的代码示例

通讯录管理系统
实现了通讯录的录入信息、保存信息、插入、删除、排序、查找、单个显示等功能。。

完整的代码如下:

#include <stdio.h>
#include <malloc.h> //得到指向大小为Size的内存区域的首字节的指针//
#include <string.h>
#include <stdlib.h> //标准库函数//
#define NULL 0
#define LEN sizeof(struct address_list) //计算字节//
int n;
struct address_list
{
  char name[30];   //名字
  char work[30];   //职业
  char handset[30]; //手机
  char email[30];  //电子邮件
  char address[30]; //通讯地址
  struct address_list *next;
};
struct address_list *shifang(struct address_list *head); // 释放内存函数声明
//创建函数,不带头结点的链表
struct address_list *creat(void)
{
  struct address_list *head,*p1,*p2;
  char name[20];
  n=0;
  p1=(struct address_list *)malloc(LEN);
  p2=p1;  //强制内存转换
  printf("请输入通讯录的内容!\n姓名输入为0时表示创建完毕!\n");
  printf("请输入姓名:");
  gets(name);
  if(strcmp(name,"0")!=0)
  {
    strcpy(p1->name,name);
    printf("请输入职业:");   gets(p1->work);
    printf("请输入手机:");   gets(p1->handset);
    printf("请输入电子邮件:"); gets(p1->email);
    printf("请输入通讯地址:"); gets(p1->address);
    head=NULL;
    while(1)
    {
      n=n+1;  //记录通讯录人数个数
      if(n==1)
        head=p1;
      else
        p2->next=p1;
      p2=p1;
      printf("请输入姓名:");
      gets(name);
      if(strcmp(name,"0")==0)
      {
        break;
      }
      else
      {
        p1=(struct address_list *)malloc(LEN);
        strcpy(p1->name,name);
        printf("请输入职业:"); gets(p1->work);
        printf("请输入手机:"); gets(p1->handset);
        printf("请输入电子邮件:"); gets(p1->email);
        printf("请输入通讯地址:"); gets(p1->address);
      }
    }
    p2->next=NULL;
    return head;
  }
  else
    return 0;
}
//输出函数
void print(struct address_list *head)
{
  struct address_list *p;
  if(head!=NULL)
  {
    p=head;
    printf("本通讯录现在共有%d人:\n",n);
    printf("---姓名-------职业--------手机-------Email-------通讯地址\n");
    printf("==================================\n");
    do
    {
      printf("== %s",p->name); printf("    ");
      printf("%s",p->work); printf("    ");
      printf("%s",p->handset); printf("    ");
      printf("%s",p->email); printf("    ");
      printf("%s",p->address); printf("    \n");
      p=p->next;
    }while(p!=NULL);
    printf("==================================\n");
  }
  else
    printf("通讯录为空,无法输出!\n");
}
//增加函数
struct address_list *insert(struct address_list *head)
{
  struct address_list *p0,*p1,*p2;
  char name[20];
  p1=head;
  printf("请输入增加的内容:\n");
  printf("请输入姓名:"); gets(name);
  if(strcmp(name,"0")==0)
  {
    printf("姓名不能为0,增加失败!\n");
    return(head);
  }
  else
  {
    p0=(struct address_list *)malloc(LEN);
    strcpy(p0->name,name);
    printf("请输入职业:"); gets(p0->work);
    printf("请输入手机:"); gets(p0->handset);
    printf("请输入电子邮件:"); gets(p0->email);
    printf("请输入通讯地址:"); gets(p0->address);
    n=n+1;
    if(head==NULL)
    {
      head=p0;
      p0->next=NULL;
      return head;
    }
    else
    {
      while(strcmp(p0->name,p1->name)>0&&(p1->next!=NULL))
      {
        p2=p1;
        p1=p1->next;
      }
      if(strcmp(p0->name,p1->name)<0 || strcmp(p0->name,p1->name)==0)
      {
        if(head==p1)
        {
          head=p0;
        }
        else
        {
          p2->next=p0;
        }
        p0->next=p1;
      }
      else
      {
        p1->next=p0;
        p0->next=NULL;
      }
      return head;
    }
  }
}
struct address_list* delete_txl(struct address_list *head)
{
  struct address_list *p,*q;
  char name[30];
  if(head==NULL)
  {
    printf("通讯录为空,无法显示!\n");
    return head;
  }
  p=head;
  printf("请输入需要删除的人的姓名:");
  gets(name);
  if(strcmp(head->name,name)==0)
  {
    head=head->next;
    free(p);
    printf("删除操作成功!\n");
    return head;
  }
  else
  {
    q=head,p=head->next;
    while(p!=NULL)
    {
      if(strcmp(p->name,name)==0)
      {
        q->next=p->next;
        free(p);
        printf("删除操作成功!\n");
        return head;
      }
      p=p->next;
      q=q->next;
    }
  }
}
//显示函数
struct address_list *display(struct address_list *head)
{
  struct address_list *p1,*p2;
  char name[30];
  int m;
  if(head==NULL)
  {
    printf("通讯录为空,无法显示!\n");
    return head;
  }
  p1=head;
  m=0;
  printf("请输入需要显示人的姓名:");
  gets(name);
  while(p1!=NULL)
  {
    while((strcmp(p1->name,name))!=0 && p1->next!=NULL)
    {
      p2=p1;
      p1=p1->next;
    }
    if(strcmp(p1->name,name)==0)
    {
      m++;
      printf("%s的通讯内容如下:\n",name);
      printf("---姓名--------职业--------手机-------Email------通讯地址\n");
      printf("==================================\n");
      printf("== %s",p1->name);printf("    ");
      printf("%s",p1->work);printf("    ");
      printf("%s",p1->handset);printf("    ");
      printf("%s",p1->email);printf("    ");
      printf("%s",p1->address); printf("    \n");
      printf("==================================\n");
    }
    p1=p1->next;
  }
  if(m==0)
  {
    printf("此人未在本通讯录中!\n");
  }
  return(head);
} 

//排序函数
struct address_list *paixu(struct address_list *head)
{
  struct address_list *p1,*p2;
  int i,j;
  struct address_list1
  {
    char name[30];
    char work[30];
    char handset[30];
    char email[30];
    char address[30];
  };
  struct address_list1 px[200];
  struct address_list1 temp;
  if(head==NULL)
  {
    printf("通讯录为空,无法排序!\n");
    return(head);
  }
  p1=head;
  for(i=0;i<n,p1!=NULL;i++)
  {
    strcpy(px[i].name,p1->name);
    strcpy(px[i].work,p1->work);
    strcpy(px[i].handset,p1->handset);
    strcpy(px[i].email,p1->email);
    strcpy(px[i].address,p1->address);
    p2=p1;
    p1=p1->next;
  }
  head=shifang(head);
  for(j=0;j<n-1;j++)
  {
    for(i=j+1;i<n;i++)
    {
      if(strcmp(px[i].name,px[j].name)<0)
      {
        temp=px[i];
        px[i]=px[j];
        px[j]=temp;
      }
    }
  }
  p1=(struct address_list *)malloc(LEN);
  p2=p1;
  strcpy(p1->name,px[0].name);
  strcpy(p1->work,px[0].work);
  strcpy(p1->handset,px[0].handset);
  strcpy(p1->email,px[0].email);
  strcpy(p1->address,px[0].address); 

  head=p1;
  for(i=1;i<n;i++)
  {
    p1=(struct address_list *)malloc(LEN);
    strcpy(p1->name,px[i].name);
    strcpy(p1->work,px[i].work);
    strcpy(p1->handset,px[i].handset);
    strcpy(p1->email,px[i].email);
    strcpy(p1->address,px[i].address);
    p2->next=p1;
    p2=p1;
  }
  p2->next=NULL;
  printf("按姓名排序后为:\n");
  print(head);
  return(head);
}
//姓名查找函数
struct address_list *search(struct address_list *head)
{
  struct address_list *p1,*p2;
  int m;
  char name[30];
  if(head==NULL)
  {
    printf("通讯录为空,无法分类查找!\n");
    return(head);
  }
  p1=head;
  printf("********************\n");
  printf("** 请输入需要查找的姓名 **\n");
  printf("********************\n");
  m=0;
  gets(name);
  while(p1!=NULL)
  {
    while(strcmp(p1->name,name)!=0&&p1->next!=NULL)
    {
      p2=p1;
      p1=p1->next;
    }
    if(strcmp(p1->name,name)==0)
    {
      m++;
      printf("你查找的内容是:\n");
      printf("+++++++++++++++++++++++++++++++++++\n");
      printf("++ %s    %s    %s    %s    %s\n",p1->name,p1->work,p1->handset,p1->email,p1->address);
      printf("+++++++++++++++++++++++++++++++++++\n");
    }
    p1=p1->next; 

    if(m==0)
    {
      printf("此人未在本通讯录中!\n");
    }
    break;
  } 

  return(head);
} 

//释放内存函数
struct address_list *shifang(struct address_list *head)
{
  struct address_list *p1;
  while(head!=NULL)
  {
    p1=head;
    head=head->next;
    free(p1);
  }
  return(head);
} 

//文件写入函数
void save(struct address_list *head)
{
  FILE *fp;
  struct address_list *p1;
  char tong[30];
  if(head==NULL)
  {
    printf("通讯录为空,无法存储!\n");
    return;
  }
  printf("请输入保存后的文件名:");
  gets(tong);
  fp=fopen("(tong).txt","w");
  if(fp==NULL)
  {
    printf("cannot open file\n");
    return;
  }
  p1=head;
  fprintf(fp,"姓名  职业   手机   Email   通讯地址\n");
  for(;p1!=NULL;)
  {
    fprintf(fp,"%s    %s    %s    %s    %s\n",p1->name,p1->work,p1->handset,p1->email,p1->address);
    p1=p1->next;
  }
  printf("保存完毕!\n");
  fclose(fp);
} 

//文件读出函数
struct address_list *load(struct address_list *head)
{
  FILE *fp;
  char tong[30];
  struct address_list *p1,*p2;
  printf("请输入要输出的文件名:");
  gets(tong);
  fp=fopen("(tong).txt","r");
  if(fp==NULL)
  {
    printf("此通讯录名不存在,无法输出!\n");
    return(head);
  }
  else
  {
    head=shifang(head);
  }
  p1=(struct address_list *)malloc(LEN);
  fscanf(fp,"%s%s%s%s%s",&p1->name,&p1->work,&p1->handset,&p1->email,&p1->address);
  if(feof(fp)!=0)
  {
    printf("文件为空,无法打开!\n");
    return(head);
  }
  else
  {
    rewind(fp);
    p2=p1;
    head=p1;
    n=0;
    while(feof(fp)==0)
    {
      fscanf(fp,"%s%s%s%s%s",&p1->name,&p1->work,&p1->handset,&p1->email,&p1->address);
      if(feof(fp)!=0)
        break;
      p2->next=p1;
      p2=p1;
      p1=(struct address_list *)malloc(LEN);
      n=n+1;
    }
    p2->next=NULL;
    p1=head;
    head=head->next;
    n=n-1;
    free(p1);
    print(head);
    printf("打开完毕!\n");
    return(head);
  }
  fclose(fp);
} 

//综合操作函数
struct address_list *menu(struct address_list *head)
{
  char num[10];
  while(1)
  {
    printf("*********************\n");
    printf("*** 1 姓名查找   ****\n");
    printf("*** 2 单个显示   ****\n");
    printf("*** 3 增加     ****\n");
    printf("*** 4 退出     ****\n");
    printf("*********************\n");
    printf("请输入您选择的操作:");
    gets(num);
    switch(*num)
    {
    case '1':
      {
        head=search(head);             //姓名查找
        print(head);
      }
      break;
    case '2':
      {
        head=display(head);             //显示
      }
      break;
    case '3':
      {
        head=insert(head);              //增加
        print(head);
      }
      break;
    case '4':
      return head;
    default:
      printf("操作错误,此项不存在!\n");
      break;
    }
    if(strcmp(num,"6")==0)
      break;
  }
  return head;
}
//主函数
void main()
{
  struct address_list *head=NULL;
  char num[10];
  printf("*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*\n");
  printf("*=*        程序说明        *=*\n");
  printf("*=*  请及时保存创建完毕的通讯录内容!  *=*\n");
  printf("*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*\n");
  while(1)
  {
    printf("************************\n");
    printf("***   1 创建通讯录   ****\n");
    printf("***   2 按名字排序   ****\n");
    printf("***   3 综合操作    ****\n");
    printf("***   4 保存      ****\n");
    printf("***   5 打开      ****\n");
    printf("***   6 删除      ****\n");
    printf("***   7 退出      ****\n");
    printf("************************\n");
    printf("请输入您选择的操作:");
    gets(num);
    switch(*num)
    {
    case '1':
      {
        if(head==NULL)
        {
          head=creat();                //创建
          print(head);
        }
        else
        {
          head=shifang(head);
          head=creat();                //重新创建
          print(head);
        }
      }
      break;
    case '2':
      {
        head=paixu(head);                //排序
      }
      break;
    case '3':
      {
        head=menu(head);               //综合操作
      }
      break;
    case '4':
      {
        save(head);                  //文件保存
        print(head);
      }
      break;
    case '5':
      {
        head=load(head);               //文件输出
      }
      break;
    case '6':
      {
        head=delete_txl(head);              //删除
        print(head);
      }
      break;
    case '7':
      head=shifang(head);
      break;
    default:
      printf("操作错误,此项不存在!\n");
      break;
    }
    if(strcmp(num,"7")==0)
      break;
  }
}

歌厅歌曲管理系统

#include "stdlib.h"
#include "stdio.h"
#define MAX 100
typedef struct
{
  int s[MAX][MAX];//用二维数组存放教师专业特长
  int D[MAX]; //用一维数组存放安排的教学任务
}MGraph;
MGraph G;
int creat(int *k,int n) //初始化,将二维数组s和一维数组D的adj全部赋值为0
{
  int i,j;
  for(i=1;i<=n;i++)
  {
    G.D[i]=0;
    k[i]=0;
    for(j=1;j<=n;j++)
      G.s[i][j]=0;
  }
  printf("/n");
  printf("科目数成功确定为 %d/n",n);
  return 1;
} 

int techer_speciality(int n)
{   

  int k,i;
  printf("请输入教师专业特长编号(1-%d) 0表示结束输入:/n",n);
  for(i=1;i<=n;i++)
  {
    printf("输入教师编号为 %d 的特长专业号:",i);
    do
    {
      scanf("%d",&k);
      if(k>n)
      {
        printf("超出范围,重新输入: ");
        continue;
      }
      else
        G.s[i][k]=1;
    }while(k);
  }
  printf("设定成功!/n");;
  return 1;//设定成功!
}   

int serch(int i,int j,int n)
{
  for(;j<=n;j++)
  {
    if(G.s[i][j]==1)
      break;
  }
  return j;
} 

int serch_error(int *k,int n)//在所有老师都有被进行安排过的情况下运行
{
  int t,i,j;
  static int b=0; //b检测是否有两个或两个以上的专业只有一个老师可授
  for(j=1;j<=n;j++)
    if(k[j]==0) //存在有科目没有老师授课
      for(i=1;i<=n;i++) //哪个老师可以授此科目且此科目当前还没有老师授课
        if(G.s[i][j]==1)
        {
          if(b!=i)
            b=i;
          else
            return 0; //if(b!=i)b=i记录第一个没有授课的科目但有老师可以授课的老师下标
          //若再次运行这个函数且另一个没有授课的科目也是这位老师可授,即有
          //多个科目只有此老师可授,即调用此函数的老师没有科目可授。
          t=G.D[i];
          if(G.D[i]==0)
            return 0; //可能有后面老师还没受到安排,返回等所有老师都有被进行安排过才进行
          G.D[i]=j;
          k[j]=i;
          k[t]=0;
          return 1;//有,让此老师授此课,原来所授的课取消,重新安排过。
        }
        return 0; //(没有科目没有被安排)或者(有科目没有被安排但没有老师有此专长)
}
int anpai(int *k,int n)
{
  int c[MAX]={0},i,j, js, p=0,t;
  for(i=1;i<=n;i++)
  {
    if(G.D[i]==0)
    {
      j=1;
      while(1)
      {
        js=serch(i,j,n);
        if(js<=n)
        {
          c[p++]=js;//保存从serch里返回的教师专长
          if(k[js]<=0)
          {
            G.D[i]=js;k[js]=i;p=0;break;
          }
          else
          {
            j=js;
            j++;
          }
        }
        else
        {
          p=0;
          t=k[c[p]];
          j=c[p]+1;
          while(1)
          {
            js=serch(t,j,n);
            if(k[js]<=0 && js<=n)
            {
              k[c[p]]=0; G.D[t]=js; k[js]=t; G.D[i]=c[p]; k[c[p]]=i; p=0; break;
            }
            else if(js<=n)
              j++;
            else
            {
              p++;
              if(c[p]==0)
              {
                G.D[i]=0;
                if(serch_error(k,n))
                  anpai(k,n);
                break;
              }
              t=c[p];j=c[p]+1;
            }
          }
          break;
        }
      }
    }
  }
  printf("教师专长课程设定成功!/n");
  return 1;
}  

void display(int n)
{
  int ch,i;
  printf(" 教师编号     课程编号/n");
  for(i=1;i<=n;i++)
    printf("%5d %13d/n",i,G.D[i]);
}   

void list(int n)
{
  int i,j;
  for (i=1;i<=n;i++)
  {
    printf("%3d号教师的专业特长有:",i);
    for(j=1;j<=n;j++)
      if (G.s[i][j])
        printf("%3d/n",j);
    printf("/n");
  }   

}   

void edit(int n)
{
  int k,i=0,m=0,j=0;
  printf("请输入要修改的老师:");
  while(i==0||i>n)
  {
    scanf("%d",&i);
    if(i>0 && i<=n)
      printf("第%d个老师的专长科目有: ",i);
    else
      printf("没这个老师!请重新输入:/n");
  }   

  for(k=1;k<=n;k++)
  {
    if(G.s[i][k]==1)
    {
      printf("%3d/n",k);
      j++;
    }
  }
  if(j==0)
    printf("没有专长科目/n");
  printf("/n输入你要修改的科目(输入0结束):/n");
  do
  {
    scanf("%d",&k);
    if(k>n)
    {
      printf("超出范围,重新输入: ");
      continue;
    }
    else if(G.s[i][k]==1)
      G.s[i][k]=0;
    else G.s[i][k]=1;
  }while(k);
  printf("修改后第%d个老师的专长科目有 :",i);
  for(k=1;k<=n;k++)
  {
    if(G.s[i][k]==1)
    {
      printf("%3d/n",k);
      m++;
    }
  }
  if(m==0)
    printf("没有专长科目/n");
  printf("/n");
}
int main(void)
{
  int k[MAX],ch,i=0, n=0,w=0,a=0;//n为0 用来表示还没 i 检查是否专长课程设定 w 检查是否科目数设定 a检查是否课程安排
  char cx;
  while(1)
  {
    printf(" ┏━━━━━━━━欢迎进入教学任务安排系统━━━━━━━━┓/n");
    printf(" § §/n");
    printf(" § 1 -----确定科目数 2 -----教师专长课程设定 §/n");
    printf(" § 3 -----课程安排 4 -----教师专长浏览 §/n");
    printf(" § 5 -----教师专长课程修改 6------查看教学任务安排 §/n");
    printf(" § 0 -----退出系统 §/n");
    printf(" └────────────────────────────┘/n");
    printf("请选择功能 ");
    scanf("%d",&ch);
    printf("/n");
    switch(ch)
    {
    case 1:
      {
        if(!w)
        {
          printf("请确定课程数或教师人数 ");
          scanf("%d",&n);
          w=creat(k, n);
          break;
        } //初始化
        else
        {
          printf("你已经确定了课程数 ,是否要从新确定(是:Y/y 否:其余键 )");
          scanf("%c",&cx);
          if(cx=='Y'|| cx=='y')
          {
            printf(" 重新输入课程数: ");
            scanf("%d",&n);
            w=creat(k, n);
            break;
          }
          else break;
        }
      }
    case 2:
      {
        if (!w)
          printf("请先确定科目数!/n/n");
        else if(i)
        {
          printf("你已经教师专长课程设定 ,是否要从新设定(是:Y/y 否:其余键 )");
          scanf("%c",&cx);
          if(cx=='Y'|| cx=='y')
          {
            i=techer_speciality(n);
            break;
          }
          else break;
        }
        else
          i=techer_speciality(n);
        break;
      }
    case 3:
      {
        if (!w)
          printf("请先确定科目数!/n/n");
        else if(!i)
          printf("请先教师专长课程设定!/n");
        else
          anpai(k,n);
        break;
      }
    case 4:
      {
        if (!w)
          printf("请先确定科目数和 教师专长课程设定!/n/n");
        else if(!i)
          printf("请先教师专长课程设定!/n");
        else
          list(n);//教师专长浏览函数
        break;
      }
    case 5:
      {
        if (!w)
          printf("暂无确定科目数!/n");
        else if(!i)
          printf("教师专长课程暂无设定/n");  //教师专长课程修改函数
        else
          edit(n) ; //修改函数
        break;
      }
    case 6:
      {
        if (!w)
          printf("请先确定科目数!/n/n");
        else if(!i)
          printf("请先教师专长课程设定!/n");  //查看教学任务安排函数
        else if (!a)
          printf("请先选择课程安排!/n");
        else ;//查看教学任务安排函数;
        break;
      }
    case 0:
      {
        printf(" ************** 谢谢使用 ************/n");
        return ;
      }
    default:
      printf("从新选择功能:/n");
    }
  }
  system("pause");
  return 0;
} 
(0)

相关推荐

  • 简单实现Android学生管理系统(附源码)

    本文实例讲述了Android实现学生管理系统,分享给大家供大家参考.具体如下: (1)管理系统实现的功能主要是:学生.教师的注册登录,和选课,以及修改学生的成绩等基本简单的功能,最主要的是实现一些Dialog的使用. 界面如下: (2)主要代码如下:(个人留作笔记,如需要完整代码,在最下边免费下载) 下边是一个适配器,适配器是为了一个listvie进行设置值,其中加载的是一个itemview,适配器中还是用了继承的方法,用于通知适配器进行更新. public class CourseAdapte

  • C++基础学生管理系统

    本文实例为大家分享了C++基础学生管理系统的实现代码,供大家参考,具体内容如下 适用于c++6.0,codeblocks等常用工具 1. 链表处理部分 #include<stdio.h> #include<string.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" void dispnode(linklist h) { node *p; p=h->ne

  • C++实现简单的职工信息管理系统

    功能主模块描述 模块一:增加人员函数Add():增加职工基本信息. 模块二:删除人员函数Delete():删除指定的职工的基本信息以及薪酬. 模块三:修改人员函数Modify():修改指定的职工基本信息. 模块四:查询职工信息函数Search():查询指定的职工信息以及薪酬. 模块五:排序职工信息函数Sort():职工信息排序功能实现 模块六:基础数据设置函数Set():设置五类职位的基本薪酬. 模块七:数据存盘,载入函数Save()以及Load():储存职工基本信息,薪酬以及五类职位的基本薪酬

  • 简单实现Java版学生管理系统

    本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下 package BookDemo_1; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Test { public static void main(String[] args) { StudentSys stuSys=new StudentSys("学生管理系统"); stuSys.initWi

  • Winform学生信息管理系统登陆窗体设计(1)

    对这块的知识学习早已期待已久,感觉学习的进度还是慢了,最近一直在学习Winform,不得不说一些登陆窗体的设计,这几天算是小有收获,自己也看了许多这方面的知识,知道了要想做学生信息管理系统是一个漫长的过程,但是从今天起就来慢慢地进行学生信息管理系统的构建,此外还用到数据库的知识,打算着自己开始学数据库的知识,今天就来看看学生信息管理系统登录窗口的设计.下面图片的是样例: 这方面的知识还是基于C#语言和.NET Framework平台的.自己所用的还是熟悉的开发环境VS2012,感觉VS2013和

  • C++实现简单的图书管理系统

    今天再为大家介绍另一个常用的管理系统--图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果. 图书信息包括:登录号.书名.作者名.分类号.出版单位.出版时间.价格等.试设计一图书信息管理系统,使之能提供以下功能: (1)图书信息录入功能(图书信息用文件保存) (2)图书信息浏览功能 (3)查询和排序功能:(至少一种查询方式)         .按书名查询         .按作者名查询 (4)图书信息的删除与修改 分享代码如下 #include<iostream.h>

  • C++实现简单的信息管理系统

    本文为大家分享C++实现简单的信息管理系统,小编之前在学习的时候也要做一些管理系统,在网上查了许多资料,现在我把资料分享给大家,希望能够帮助到大家. #include <stdio.h> #include <stdlib.h> #include "file.h" void savaList(Node *head)/**把用户录入的数据存储到文件里面去方便下次读取*/ { FILE *fp=fopen("data\\data.txt" ,&qu

  • PHP+MYSQL的文章管理系统(一)

    ###############################################  此篇文章属原创,如有引用,请标明作者信息.  Email: leo_cdp@yeah.net http://www.cfeng.net/ 本文代码任意转载,使用请保留此声明 ###############################################  去年写了个文本管理总觉得有些不爽再加上申请了主机所以写个PHP+MYSQL的对文章进行管理测试期间 受到广大网友的支持现将代码公布

  • java留言管理系统中模糊查询实例分享

    本文分享了一个基于MVC+DAO的留言管理系统,包含增删改查,其中查询,有全部查询和按关键字进行模糊查询的功能,具体内容如下 NoteDAO.Java package cn.mldn.lxh.note.dao ; import java.util.* ; import cn.mldn.lxh.note.vo.* ; public interface NoteDAO { // 增加操作 public void insert(Note note) throws Exception ; // 修改操作

  • 使用C语言打造通讯录管理系统和教学安排系统的代码示例

    通讯录管理系统 实现了通讯录的录入信息.保存信息.插入.删除.排序.查找.单个显示等功能.. 完整的代码如下: #include <stdio.h> #include <malloc.h> //得到指向大小为Size的内存区域的首字节的指针// #include <string.h> #include <stdlib.h> //标准库函数// #define NULL 0 #define LEN sizeof(struct address_list) //计

  • C语言求矩阵的各列元素之和的代码示例

    问题描述: 统计一个矩阵的各列元素之和.矩阵各元素为整数且绝对值不超过100. 要求输入: 有多个测试用例,每个测试用例的第一行是空格分隔的两个正整数n和m( 1 < n, m < 80 ),接下来的n行每行有m个空格分隔的整数,组成一个n*m的矩阵.最后一个测试用例n=0 m=0不用处理. 要求输出: 对每个测试用例,输出一行整数(空格分隔),顺序表示从第1列至第m列的各列元素之和. 输入示例: 3 5 1 1 1 2 -1 0 1 0 7 4 0 2 0 -8 -4 2 2 1 1 0 1

  • C语言实现选择排序、冒泡排序和快速排序的代码示例

    选择和冒泡 #include<stdio.h> void maopao(int a[],int len){ int i,j,temp; for(i = 0;i < len - 1 ; i ++){//从第一个到倒数第二个 for (j = 0 ; j < len - 1 - i ; j ++)//排在后的是已经排序的 { if (a[j] > a[j + 1])//大的数换到后面去 { temp = a[j]; a[j] = a[j + 1]; a [j + 1] = tem

  • 易语言高级表格选择任意行列获取内容的代码示例

    高级表格取选择任意行列的内容 .版本 2 .支持库 eGrid .程序集 窗口程序集1 .子程序 __启动窗口_创建完毕 高级表格1.置数据 (1, 1, #表格常量.文本型, "我") 高级表格1.置数据 (1, 2, #表格常量.文本型, "爱") 高级表格1.置数据 (1, 3, #表格常量.文本型, "你") 高级表格1.置数据 (1, 4, #表格常量.文本型, "你") 高级表格1.置数据 (1, 5, #表格常量

  • C语言实现通讯录系统

    C语言通讯录系统实现,供大家参考,具体内容如下 需求分析: 利用文件读,写的方法 实现增加通讯录联系人信息 实现删除通讯录联系人信息 实现查找通讯录联系人信息 实现修改通讯录联系人信息 实现查看现有通讯录联系人信息 代码实现: // main.c // C语言通讯录实现 // // Created by Brisinga on 15/10/14. // Copyright © 2015年 yan. All rights reserved. // #include <stdio.h> #incl

  • C语言实现通讯录功能

    本文实例为大家分享了C语言实现通讯录功能的具体代码,供大家参考,具体内容如下 先定义头文件 #ifndef __CONTACT_H__ #define __CONTACT_H__ #define NAME_LEN 10 #define SEX_LEN 6 #define TELE_LEN 12 #define ADDR_LEN 20 #define MAX_PEO 1000 typedef struct PEO { char name[NAME_LEN]; int age; char sex[S

  • 易语言开发上网导航步骤教学

    易语言开发上网导航,程序实现本地程序的快捷方式和上网的网址导航. 1.打开易语言程序,在程序菜单选择新建 windows窗口程序,适当的点击程序边角放大程序界面. 2.在窗口组件箱中的基本组件中选择文件夹,在程序界面上点击,放到合适的位置,并调整位置. 3.在文件夹区域中右键选择"设置子夹管理",在此修改第1项的内容输入"本地程序",单击向后插入空项目,在此修改第2项的内容输入"上网导航",确定. 4.在窗口组件箱中的基本组件中选择按钮,在程序界

  • 易语言制作举牌照的教学

    利用国语版易语言制作简单的举牌照,可以选择任何图片来宣传自己 1.打开易语言 2.点击易语言右边的图片按钮,在左边的框内随机拉出图片尺寸的一个方框 3.点击我们刚才拉的那个方框,在左边会出现图片两个字,我们来单击一个,会出现一个图片属性对话框 4.我们来点击更换那个按钮,在电脑上面选取我们要制作的图片原图,点击确认. 现在图片在要添加的这个小方框内了,我们再点击确认,图片就出现在我们刚才随机拉取的图片框内了 5.点击左边的"字"在中间的位置随机拉取一定长度.这个是我们用来提醒下面的输入

  • C语言实现通讯录

    本文实例为大家分享了C语言实现通讯录的具体代码,供大家参考,具体内容如下 实现的功能有: 1.初始化通讯录: 2. 通讯录中增加条目: 3. 删除通讯录中的指定条目: 4. 按指定规则查找通讯录中特定条目: 5. 打印通讯录中的所有信息: 6. 修改通讯录的指定条目: 7. 销毁通讯录: 8. 将通讯录内容保存在文件: 9. 将文件中的内容加载回内存. **Addr_Book.h** #pragma once #include <stddef.h> #include <stdio.h&g

  • C语言简易通讯录的实现代码

    本文实例为大家分享了C语言简易通讯录的具体代码,供大家参考,具体内容如下 通讯录的实现: 一.介绍: 运用C语言的数组.指针.结构体等相关知识:实现一个简易的通讯录: 此通讯录的大概内容为: 通讯录可存储1000个人的信息: 每个人的基本信息有:名字+ 年龄+性别 +  电话+ QQ + 地址 此通讯录所具有的功能:增加+ 删除 +  查询 + 修改 +  排序 + 退出 此通讯录在设计时:总共设计了三个文件: contact.h: 类型的声明和函数的声明 contact.c:函数功能的具体实现

随机推荐