作业代码

传智播客代码作业 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style> .container{position: absolute;left:710px;top:130px;} .ul2{list-style:... 阅读详情
#include "stdio.h"
#include "stdlib.h"   /*常用子程序*/
#include "dos.h"      /*Ms-dos和8086调用的一些常量和函数*/
#include "string.h"
#include "conio.h"




typedef struct xiaofei  /*定义消费情况*/
{
int year;   /*消费年份*/
int month;  /*消费月份*/  
    int day;   /*消费日*/
char  xfproject[20];  /*消费项目名称*/
int  money;    /*消费金额*/
}xiaofei;




typedef  struct  Info   /*定义记录类型*/
{
char  no[6];          /*学号*/
char  name[15];       /*姓名*/
char  sex[2];         /*性别*/
char  tel[15];        /*电话*/
struct xiaofei  xf[20];  /*消费记录,最多20笔  */
}Info;


typedef  struct node  /*定义链表的节点结构*/
{
struct Info  data;
struct node  *next;
} Node, *link;




int main()
{
void  stringinput();  /*自定义字符串检测函数*/
void  enter(link l);         /*录入函数*/
void  del(link l);           /*信息删除函数*/
void  search(link l);        /*查询函数*/
void  list(link l);          /*列表函数*/
void  save(link l);          /*保存函数*/
void   load(link l);         /*读取函数*/
void   count(link l);        /*统计函数*/
void  add(link l);     /*添加函数*/
void others(link l);         /*其他功能*/
int   menu_select();         /*菜单函数*/
    /*主体*/
link  l;
l=(Node  *)malloc(sizeof(Node));
l->data.xf->year=0;
if(!l)
{  
printf("\n没有申请到内存!");
return -1;
}
l->next=NULL;
system("cls");  /*清屏*/
while(1)
{
system("cls");
switch(menu_select())
{
case  1:   enter(l);   break; 
   case  5:   add(l);   break; 
case  6:   list(l);   break; 
case  4:   search(l);   break; 
case  2:   save(l);   break; 
case  3:   load(l);   break; 
case  7:   del(l);  break;
case  8:   count(l);  break;
case  9:   others(l);  break;
case  0:   exit(0);
}
}



}


/*菜单函数*/
int menu_select()  
{
int i;
printf("\n\n\n\t     ****************我的管家婆财务管理系统****************\n");
printf("\t     |*                                                  *|\n");
printf("\t     |*                                                  *|\n");
printf("\t     |*              0 退出系统                          *|\n");
printf("\t     |*              1 基本信息录入                      *|\n");
printf("\t     |*              2 保存信息                          *|\n");
printf("\t     |*              3 装载                              *|\n");
printf("\t     |*              4 查询                              *|\n");
printf("\t     |*              5 添加信息                          *|\n");
printf("\t     |*              6 显示                              *|\n");
printf("\t     |*              7 删除                              *|\n");
printf("\t     |*              8 统计                              *|\n");
printf("\t     |*              9 其他功能                          *|\n");
printf("\t     |*                                                  *|\n");
printf("\t     |*                                                  *|\n");
printf("\t     ******************************************************\n");
printf("\t     |*     设计者:CWL     版本:v1.0    2015-07-29     *|\n");
printf("\t     ******************************************************\n");
printf("\n\t     请选择菜单:");
scanf("%d",&i);
return i;
}    


/*录入函数*/
void  enter(link l)      
{
int i=0;
int judge=1;
link curr;
if(l->data.xf->year!=0)
{
printf("信息表内已有信息,请使用添加删除操作对信息表进行修改或将信息表清空后再进行输入!\n");
printf("按回车返回");
getchar();
getchar();
return;
}
curr=l;
if(l==NULL)
{
l=(Node*)malloc(sizeof(Node));
l->data.xf->year=0;
}
while(judge==1)
{
printf("请输入学号:");
scanf("%s",curr->data.no);
printf("请输入姓名:");
scanf("%s",curr->data.name);
printf("请输入性别(f/m):");
scanf("%s",curr->data.sex);
while(*(curr->data.sex)!='f'&&*(curr->data.sex)!='m')
{
printf("输入错误,请输入f代表女性,m代表男性:");
scanf("%s",curr->data.sex);
}
printf("请输入电话号码:");
scanf("%s",curr->data.tel);
printf("请输入您的消费记录,每笔消费记录中当年份输入0时退出!\n");
i=0;
while(i<20)
{
printf("第%d笔:  年份:",i+1);
scanf("%d",&(curr->data.xf[i].year));
if(curr->data.xf[i].year==0)break;
printf("月份:");
scanf("%d",&(curr->data.xf[i].month));
printf("日:");
scanf("%d",&(curr->data.xf[i].day));
printf("消费项目名称:");
scanf("%s",&(curr->data.xf[i].xfproject));
printf("消费金额(必须为整数):");
scanf("%d",&(curr->data.xf[i].money));
i++;
}
printf("该学生的消费信息输入完毕,是否输入下一个学生的消费信息(输入1代表是,输入2代表否):\n");
scanf("%d",&judge);
if(judge==1)
{
curr->next=(Node  *)malloc(sizeof(Node));
curr=curr->next;
curr->next=NULL;
}
}
}
 
/*删除函数*/
void  del(link l)           /*信息删除函数*/
{
int judge=1;
link curr=l;
link temp;
char tname[15];
printf("请输入需要删除的学生姓名:");
scanf("%s",tname);
if(l->data.name==tname)
{
judge=0;
l=l->next;
free(curr);
}
if(l==NULL)
{
l=(Node*)malloc(sizeof(Node));
l->data.xf->year=0;
}
while(curr!=NULL)
{
if(strcmp(curr->next->data.name,tname)==0)
{
judge=0;
temp=curr->next;
curr->next=curr->next->next;
free(temp);
}
curr=curr->next;
}
if(judge==1)
{
printf("未找到相关记录.\n");
}
else
{
printf("删除完毕.\n");
}
printf("按回车返回");
getchar();
getchar();
}


/*查询函数*/
void  search(link l)     /*查询函数*/
{
char tname[15];
link curr=l;
int i=0,total=0;
printf("输入要查询的姓名:");
scanf("%s",tname);
while(curr!=NULL&&strcmp(curr->data.name,tname)!=0)
{
curr=curr->next;
}
if(curr==NULL)
{
printf("未找到相关记录.\n");
getchar();
getchar();
return;
}
printf("|学号:%-18s姓名:%-11s 性别:",curr->data.no,curr->data.name);
if(curr->data.sex=="f")printf("女   ");
else printf("男   ");
printf("电话:%-20s|\n",curr->data.tel);
printf("|-----------------------------------------------------------------------------|\n");
for(i=0;curr->data.xf[i].year!=0&&i<20;i++)
{
printf("|日期:%d-%d -%-5d      消费项目名称:%-16s金额:%-8d\t      |\n",curr->data.xf[i].year,curr->data.xf[i].month,curr->data.xf[i].day,curr->data.xf[i].xfproject,curr->data.xf[i].money);
total=total+(curr->data.xf[i].money);
}
printf("|-----------------------------合计:%6d.000000\t----------------------|\n",total);
printf("按回车返回");
getchar();
getchar();
}


/*列表函数*/
void  list(link l)
{
int i=0;
link curr=l;
int total=0;
if(l->data.xf->year==0)
{
printf("空表!\n");
getchar();
getchar();
return;
}
printf("*******************************您的消费记录信息********************************\n");
printf("|-----------------------------------------------------------------------------|\n");
while(curr!=NULL)
{
total=0;
printf("|学号:%-18s姓名:%-11s 性别:",curr->data.no,curr->data.name);
if(curr->data.sex=="f")printf("女   ");
else printf("男   ");
printf("电话:%-20s|\n",curr->data.tel);
printf("|-----------------------------------------------------------------------------|\n");
for(i=0;curr->data.xf[i].year!=0&&i<20;i++)
{
printf("|日期:%d-%d -%-5d      消费项目名称:%-16s金额:%-8d\t      |\n",curr->data.xf[i].year,curr->data.xf[i].month,curr->data.xf[i].day,curr->data.xf[i].xfproject,curr->data.xf[i].money);
total=total+(curr->data.xf[i].money);
}
printf("|-----------------------------合计:%6d.000000\t----------------------|\n",total);
curr=curr->next;
}
printf("|-----------------------------------------------------------------------------|\n");
getchar();
getchar();
}


/*保存函数*/
void  save(link l)
{
link curr=l;
int i=0;
FILE *p=fopen("D:\\save.txt","w");
if(!p)
{
printf("打开文件失败!\n");
getchar();
getchar();
}
if(curr->data.xf->year==0)
{
printf("空表!");
getchar();
getchar();
return;
}
while(curr!=NULL)
{
fprintf(p,"%s\n%s\n%s\n%s\n",curr->data.no,curr->data.name,curr->data.sex,curr->data.tel);
i=0;
while(i!=20&&curr->data.xf[i].year!=0)
{
fprintf(p,"%d\n%d\n%d\n%s\n%d\n",curr->data.xf[i].year,curr->data.xf[i].month,curr->data.xf[i].day,curr->data.xf[i].xfproject,curr->data.xf[i].money);
i++;
}
if(i!=20)fprintf(p,"%d\n",-1);
curr=curr->next;
}
fprintf(p,"%s\n","*");
fclose(p);
printf("保存文件完毕!");
printf("按回车返回");
getchar();
getchar();
}


/*读取函数*/
void   load(link l)
{
int i=0;
link curr=l;
link temp;
FILE *p1=fopen("D:\\save.txt","r");
if(!p1)
{
printf("没有找到该文件.\n");
getchar();
getchar();
return;
}
while(1)
{
i=0;
fscanf(p1,"%s",curr->data.no);
if(strcmp(curr->data.no,"*")==0)
{
temp=curr;
curr=l;
while(curr->next!=temp)
{
curr=curr->next;
}
temp=curr->next;
free(temp);
curr->next=NULL;
curr=NULL;
printf("读取文件完毕!\n");
fclose(p1);
printf("按回车返回");
getchar();
getchar();
return;
}
fscanf(p1,"%s",curr->data.name);
fscanf(p1,"%s",curr->data.sex);
fscanf(p1,"%s",curr->data.tel);
while(i!=20)
{
fscanf(p1,"%d",&(curr->data.xf[i].year));
if(curr->data.xf[i].year==-1)
{
curr->data.xf[i].year=0;
break;
}
fscanf(p1,"%d",&(curr->data.xf[i].month));
fscanf(p1,"%d",&(curr->data.xf[i].day));
fscanf(p1,"%s",curr->data.xf[i].xfproject);
fscanf(p1,"%d",&(curr->data.xf[i].money));
i++;
}
curr->next=(Node*)malloc(sizeof(Node));
curr=curr->next;
}
printf("按回车返回");
getchar();
getchar();
}


/*统计函数ok*/
void   count(link l)
{
int i,c=0,tyear,tmonth;
link curr=l;
int total=0;
printf("请输入需要统计消费的年份:");
scanf("%d",&tyear);
printf("请输入需要统计消费的月份:");
scanf("%d",&tmonth);
while(curr!=NULL)
{
for(i=0;curr->data.xf[i].year!=0&&i<20;i++)
{
if(curr->data.xf[i].year==tyear&&curr->data.xf[i].month==tmonth)
{
total=total+(curr->data.xf[i].money);
}
}
   printf("%d年%d月所有学生一共消费了%d元",tyear,tmonth,total);
curr=curr->next;
}
printf("按回车返回");
getchar();
getchar();
}


/*添加函数ok*/
void add(link l)
{
int i=0;
link curr=l;
int c=0;
if(l->data.xf->year==0)
{
printf("空信息库请选用功能1或3进行信息录入\n");
return;
}
while(curr->next!=NULL)
{
curr=curr->next;
}
curr->next=(Node*)malloc(sizeof(Node));
curr=curr->next;
curr->next=NULL;
printf("请输入学号:");
scanf("%s",curr->data.no);
printf("请输入姓名:");
scanf("%s",curr->data.name);
printf("请输入性别(f/m):");
scanf("%s",curr->data.sex);
while(*(curr->data.sex)!='f'&&*(curr->data.sex)!='m')
{
printf("输入错误,请输入f代表女性,m代表男性:");
scanf("%s",curr->data.sex);
}
printf("请输入电话号码:");
scanf("%s",curr->data.tel);
printf("请输入您的消费记录,每笔消费记录中当年份输入0时退出!\n");
while(i<20)
{
printf("第%d笔:  年份:",i+1);
scanf("%d",&(curr->data.xf[i].year));
if(curr->data.xf[i].year==0)break;
printf("月份:");
scanf("%d",&(curr->data.xf[i].month));
printf("日:");
scanf("%d",&(curr->data.xf[i].day));
printf("消费项目名称:");
scanf("%s",curr->data.xf[i].xfproject);
printf("消费金额(必须为整数):");
scanf("%d",&(curr->data.xf[i].money));
i++;
}
printf("添加信息完毕\n");
curr=l;
while(curr!=NULL)
{
c++;
curr=curr->next;
}
printf("添加后总共有%d名学生.\n",c);
printf("按回车返回");
getchar();
getchar();
}


void others(link l)
{
int i,j;
system("cls");
printf("\n\n\n\t\t\t\t大班早日脱单!\n");
  
printf("\n\t\t\t     ******       ******\n");
printf("\t\t\t   **********   **********\n");
printf("\t\t\t ************* *************\n");
  
for(i=0;i<3;i++)
{
printf("\t\t\t");
for(j=0;j<29;j++)
printf("*");
printf("\n");
}
  
for(i=0;i<7;i++)
{
printf("\t\t\t");
for(j=0;j<2*(i+1)-1;j++)
printf(" ");
for(j=0;j<27-i*4;j++)
printf("*");
printf("\n");
}
  
for(i=0;i<14;i++)
printf(" ");
printf("\t\t\t      *\n");
getchar();
getchar();
}
qqxml代码-班级作业xml卡片代码班级作业 制作效果图如下: 下面卡片代码展示 。 <?xml version='1.0' encoding='UTF-8' standalone='yes' ?><msg serviceID="1" templateID="1" action="web" brief="邪少QQXML论坛" sourceMsgId="0" url="https://qun.qq.com/homewor... 阅读详情

相关推荐

作业 代码

小作业作业的 代码。初学者。做的比较粗糙见谅

JAVA day11:代码作业(集合)

1.手动输入一串无序的英文字母,输出每个字母的出现的个数 package ZuoYe; import java.util.HashMap; import java.util.Map; import java.util.Scanner; import java.util.Set; import java.util.Map.Entry; public class Test01 { /* *小知识点:利用ASCII码:A=65;z=122 *char ch=(char)65; *System

weixin_44641804的博客 910

vb代码作业

vb代码练习作业,适合初学者,就是菜鸟也可以看得懂的。

大学生网页设计制作作业实例代码 (全网最全,建议收藏) HTML+CSS+JS

临近期末,大一新生的各种考试和专业结课作业纷至沓来。web实训大作业、网页期末作业、web课程与设计、网页设计等,简直让人头大。你还在为网页设计老师的作业要求感到头大?网页作业无从下手?网页要求的总数量太多?没有合适的模板?等等一系列问题。你想要解决的问题,在这篇博文中基本都能满足你的需求, 废话不多说,直接看效果。📔网站布局方面:计划采用目前主流的、能兼容各大主流浏览器、显示效果稳定的浮动网页布局结构。📓网站程序方面:计划采用最新的网页编程语言HTML5+CSS3+JS程序语言完成网站的功能设计。并确

HTML网页设计 27万+

c语言代码作业

c语言代码作业

JAVA大作业文本编辑器(记事本)txt(含代码)

包含了windows系统风格的文本编辑器.txt

python大作业代码及文档,python大作业有哪些题目

​ 我们自己根据一级评论的api,手动查找到最后一页评论,发现当没有评论时,data下的replies为null,机当前api中next的参数值为最后一页的页码,如果有评论时replies不为空。​因此我们在爬取所有评论时可以将replies是否为null作为循环退出条件。

chatgpt001的博客 4612

电机FOC控制实战:STM32 CubeMX配置六路互补PWM与死区优化

本文详细介绍了如何使用STM32 CubeMX配置六路互补PWM与死区优化,实现电机FOC控制。通过实战经验分享,包括时钟配置、定时器设置、死区时间计算及优化技巧,帮助开发者避免常见问题,提升电机控制性能。特别适用于STM32G4系列的无刷电机驱动应用。

weixin_29193259的博客 402

c语言作业代码

/用了最大最小函数又偷懒了;i++)//所以从2开始。=a[j])//相等时只要加一次。if(list[i]==x)//用数组了又偷懒了。*p++=*q++//先赋值然后++

m0_74169515的博客 532

SICK LMS111激光雷达数据解析实战:从原始帧到三维点云的完整流程

本文详细解析了SICK LMS111激光雷达从原始数据帧到三维点云的完整处理流程,包括数据帧结构解析、坐标转换、点云可视化及性能优化技巧。通过实战代码示例,展示了如何高效处理激光雷达数据,并应用于动态物体检测、地面分割等工业场景,为AGV和服务机器人开发者提供实用指南。

garlic的博客 769

STM32G474片内运放实战:从独立模式到PGA与ADC采样链路

在嵌入式控制系统中,运放是连接模拟信号与数字处理的关键环节。传统方案依赖外部分立运放搭建放大电路,存在成本高、PCB布局敏感、一致性差等痛点。STM32G474在MCU内部集成多路可编程运放(OPAMP),支持独立模式、跟随器、PGA以及比较器模式,配合内部ADC和DMA可构成完整模拟采集链路。通过片内互联,信号路径大幅缩短,抗干扰性和通道一致性显著提升,尤其适用于电机电流采样、数字电源等场景。本文以STM32G474为例,详解从独立模式到PGA增益配置,再到ADC与DMA联动调试的完整过程,并给出采样时间

weixin_29194255的博客 246

Java基础:代码小作业(三)

代码小作业1、冒泡排序算法2、二分查找(折半查找)算法3、归并 1、冒泡排序算法 冒泡排序是将数组的第一个,与后面的两两相比后,将大的往后放,在最后面的是最大的数。 然后循环将第一个数与后面的两两相比,取大的放后面。 因为每次找到最大的放在后面,所有每次循环过后,下一循环不用比较已经排好的最大数,只需要比上一循环少比较一个数。 代码: /** * @author Hui */ public class BubbleSort { public static void main(String[]

weixin_45450352的博客 534

Pspice安装教程:Windows系统完整指南(含环境变量设置)

详细讲解在Windows系统中完成Pspice安装的全过程,涵盖安装步骤与关键的环境变量设置,帮助用户顺利运行仿真工具。适合初学者快速上手pspice安装教程中的核心环节。

weixin_42230607的博客 1179

python代码numpy作业

python代码

desehou的博客 358

在overleaf中使用bibtex引用参考文献

最近在挑选写tex的平台,挑来挑去,个人感觉overleaf给我带来的体验感是最舒适的。不过由于对内部的文件组织和make进行了一层封装,所以与一般的本地平台编译tex会有一点不同。此处写一下在overleaf中使用bibtex的方法。 在tex中使用bibtex引用文献是一件很舒适的事,毕竟这是tex的优点之一(要是tex比word难用,我干什么不去用word,hhh) 第一步,我们创建一个.bib文件,名字随便起,我这边起为reference.bib。 然后打开谷歌学术,搜索你想要引用的文章,并找到

锦恢的博客 4万+

从三个角度理解知识图谱

2012年谷歌首次提出“知识图谱”这个词,由此知识图谱在工业界也出现得越来越多,对于知识图谱以及相关概念的理解确实也是比较绕。自己在研究大数据独角兽Palantir之后开始接触知识图谱,也算对其有了一定了解,这里从三个角度总结一下怎么去理解知识图谱。 几个基本概念:本体、实体、知识库、知识图谱 1、本体是概念的集合,是大家都公认的概念框架,一般不会改变如“人”、“事”、“物”、 “地”、“组...

JavaChaoCo的博客 6902

games101作业1代码解析

学习games101过程中所记的笔记,记叙了我对作业1代码的理解

zwx3199386318的博客 2024

【笔试真题】- 华子-2025.12.17-研发岗

难度:中等难度:中等偏难难度:中等K小姐是一名服务器运维工程师,她负责监控公司服务器的访问日志。服务器采用指数退避策略来优化访问频率,每次重试的时间间隔会按照某种规律增长。经过一段时间的监控,K小姐记录了 nnn 个访问时间点,第 iii 个时间点的值为 a[i]a[i]a[i](可能有重复)。现在,她想分析这些访问时间点是否符合某种特定的模式。具体来说,对于给定的参数对 (x,y)(x, y)(x,y),她想知道:有多少个访问时间点 a[i]a[i]a[i] 满足 a[i]=xK+ya[i] = x^K

春秋招笔试突围 187

HTML5+CSS大作业——个人简历设计(5页) html期末作业代码网页设计 期末作业成品代码

HTML5+CSS大作业——个人简历设计(5页) 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 军事、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他 等网页设计题目, A+水平作业, 可满足大学生网页大作业网页设计需求, 喜欢的可以下载! html期末作业代码网页设计 期末作业成品代码 文章目录HTML5+CSS大作业

qq_524614081的博客 3330

天猫精灵设备拆机及系统分析

我手头的这个天猫精灵型号为TG_X1,黑色天猫精灵AI助手,拆解没有多少难度,但需要注意连接线的问题。具体的拆机过程可以参见:http://www.geekifix.com/wp/archives/415.html注意一点就是,天猫精灵的主板的位置,位于音频按键的底部,也就是顶端,而拆解是从电源的位置从低到顶进行拆机;拆机后,看到主控板的信息如下:主控型号:联发科 MT8516MT8516支持四核...

LeeKwen的专栏 3万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

python大作业代码及文档,python大作业代码100行

增加项目模块,比如UI用PyQt写一遍,再用HTML5写一遍,比如后端用后端渲染方式写一遍,又以RESTful写一遍,老师问为什么写这么多遍,你说你项目是跨平台的,搞个桌面版,搞个网页版,还搞好多接口给未来移动端用。以上都是些不得已的方法,真正建议的,还是希望题主把这个任务当做一次挑战,认真地完成,而不要像上面那样投机取巧。能写两行的不要写成一行,不用列表推导,不用匿名函数,少用继承,少用生成器,少用装饰器;你多编用户故事,多编工作流,多写测试用例,何愁代码量上不来。把注释改成日志,就成了有效代码,

2301_81896102的博客 919

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

8月26日代码作业

作业。

L22530的博客 470

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

8月18号思维导图代码作业

作业。

L22530的博客 449
上一篇: 蓄水池算法简介
下一篇: 再次开始写博客
class_brick
博客等级 码龄12年 223粉丝 76原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值