美文网首页
我刚接触计算机的时候写的程序

我刚接触计算机的时候写的程序

作者: 扬仔360 | 来源:发表于2017-01-11 00:17 被阅读28次

    我早年写的一个程序,大一上半学期的时候写的

    当时我读大一,这是我跟我亲哥都回到老家,我哥给我说的一个题,他们学校计算机研究生的机试最后一道大题,当时的我就跃跃欲试用了四个小时,做出来这个样子:

    用C语言,没有持久化,实现:

    操作提示: 1.插入记录 2.查询记录 3.按英语成绩排序 4.删除记录 5.修改记录 6.退出

    超级简单,程序也很拙劣。当时那种心境,发出来怀念。

    #include <stdio.h>
    struct student
    {
      int number;
      char name[20];
      int math;
      int english;
      int mark;
    };
    struct student stu[200],exc;
    struct student list[200];  //排序用
    int n=0; //数组的总数
    
    int fun1()
    {
      printf("输入新的学生学号,数学成绩,英语成绩,名字 逗号隔开\n");
      scanf("%d,%d,%d,%s",&stu[n].number,&stu[n].math,&stu[n].english,stu[n].name);
      stu[n].mark=n;
      n++;
      return 0;
    }
    int fun2()
    {
      printf("输入查询的学生学号:\n");
      int l;//暂时存储输入学号
      int i,x=0;
      scanf("%d",&l);
      printf("查询结果:\n");
      for(i=0;i<=n;i++)
      {
        if(stu[i].number==l)
        {
          printf("\n学生信息:\n学号:%d\n名字:%s\n数学成绩:%d\n英语成绩:%d\n",stu[i].number,stu[i].name,stu[i].math,stu[i].english);
          x=1;
        }
        if(x==0)printf("未找到\n");
      }
      return 0;
    }
    int fun3()
    {
      
      int i,j,min,imin;
      
      for(i=0;i<n;++i)
        list[i]=stu[i];
      for(j=0;j<n;j++)
      {
        min=list[j].english;     //initialization the min
        for(i=j;i<n;i++)
        {
          if(list[i].english<=min)
            imin=i;  //mark the min's situation
        }
        exc=list[imin];                  //exchange the a[j] and a[min]
        list[imin]=list[j];
        list[j]=exc;
      }
      for(i=0;i<n;++i)//输出循环
      {
        
        printf("学号:%d 名字:%s 数学成绩:%d 英语成绩:%d\n",list[i].number,list[i].name,list[i].math,list[i].english);
      }
      return 0;
    }
    int fun4()
    {
      printf("输入删除的学号:\n");
      int d;
      int lin,i,j;
      scanf("%d",&d);
      for(i=0;i<=n;++i)
      {
        if(stu[i].number==d)
        {
          lin=stu[i].mark;
          for(j=lin;j<=(n-1);++j)
          {stu[lin]=stu[lin+1];}
          n-=1;
        }
      }
      return 0;
    }
    int fun5()
    {
      printf("请输入要修改信息的学生的学号;\n");
      int l;//暂时存储输入学号
      int i,x=0;
      scanf("%d",&l);
      for(i=0;i<n;i++)
      {
        if(stu[i].number==l)
        {
          printf("输入该学号新的学号,数学成绩,英语成绩,名字 逗号隔开\n");
          scanf("%d,%d,%d,%s",&stu[i].number,&stu[i].math,&stu[i].english,stu[i].name);
          x=1;
        }
        
      }
      if(x==0)printf("找不到改学号的信息\n");
      return 0;
    }
    int main()
    {
      int i;
      /*  学号初始化 */
      for(i=0;i<200;++i)
        stu[i].number=0;
      
      int s; //操作提示使用变量
      while(printf("操作提示:\n1.插入记录\n2.查询记录\n3.按英语成绩排序\n4.删除记录\n5.修改记录\n6.退出\n"),scanf("%d",&s)!=EOF)
      {
        switch(s)
        {
          case 1:fun1();break;
          case 2:fun2();break;
          case 3:fun3();break;
          case 4:fun4();break;
          case 5:fun5();break;
          case 6:return 0;
          default : printf("error!\n");break;
        }
      }
    }
    

    相关文章

      网友评论

          本文标题:我刚接触计算机的时候写的程序

          本文链接:https://www.haomeiwen.com/subject/ajvlbttx.html