dev c 编程语言,devc如何自定义头文件并使用

#ifndef SQLIST_H

#define SQLIST_H

#include

#include

#include

#define LIST_INIT_SIZE 50

#include "SqList.h"

//顺序表操作函数的实现

typedef int ElemType;

typedef struct

{ElemType *elem;//存放顺序表元素,教材中使用了指针来表示顺序表的基地址,允许扩展

int listsize;//在本处代码中使用了基本数组data,不允许扩展

int length;//存放顺序表的长度

} SqList;

int InitList_Sq(SqList &L)/*初始化线性表*/

{

L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));

if(!L.elem) return(-2);

L.length=0;

L.listsize=LIST_INIT_SIZE;

return 1;

}

int DestoryList_Sq(SqList &L)

{

if(L.elem!=NULL)

free(L.elem);

return 1;

}

int ListLength_Sq(SqList L)/*求线性表长度*/

{

return L.length;

}

int GetElem_Sq(SqList L,int i,ElemType &e)/*求线性表中第i个元素*/

{

if (i<1 || i>L.length)/*无效的i值*/

return 0;

else

{

e=L.elem[i-1];

return 1;

}

}

int LocateElem_Sq(SqList L,ElemType e)/*按值查找*/

{

int i=0;

while (L.elem[i]!=e)/*查找值为x的第1个结点*/

i++;

if (i>L.length)

return(0);/*未找到*/

else

return(i+1);

}

int ListInsert_Sq(SqList &L,ElemType e,int i) /*插入元素*/

{

int j;

if (i<1 || i>L.length+1)/*无效的参数i*/

return 0;

for (j=L.length;j>i;j--)/*将位置为i的结点及之后的结点后移*/

L.elem[j]=L.elem[j-1];

L.elem[i-1]=e;               /*在位置i处放入x*/

L.length++;                      /*线性表长度增1*/

return 1;

}

int ListDelete_Sq(SqList &L,ElemType &e,int i)/*删除元素*/

{

int j;

if (i<1 || i>L.length)        /*无效的参数i*/

return 0;

j=i-1;

e=L.elem[i-1];

for (j=i;jL.elem[j-1]=L.elem[j];

L.length--;                   /*线性表长度减1*/

return 1;

}

void ListTraverse_Sq(SqList L) /*输出线性表*/

{

int i;

for (i=1;i<=L.length;i++)

printf("%d ",L.elem[i-1]);

printf("\n");

}

#endif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我无法提供完整的DevC语言高校水电费管理系统的源代码。但是,我可以提供一些关于该系统的基本信息和代码示例。 首先,高校水电费管理系统通常由两部分组成:前端和后端。前端通常是一个用户界面,用户可以通过它进行数据输入和查询。后端是一个数据库,用于存储和管理用户输入的数据。 以下是一个简单的DevC语言水电费管理系统的代码示例: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> struct electricity { char month[20]; int year; float cost; } elec; void add_electricity() { FILE *fp; char filename[20]; printf("Enter the month: "); scanf("%s", elec.month); printf("Enter the year: "); scanf("%d", &elec.year); printf("Enter the cost: "); scanf("%f", &elec.cost); sprintf(filename, "%s_%d.dat", elec.month, elec.year); fp = fopen(filename, "wb"); fwrite(&elec, sizeof(elec), 1, fp); fclose(fp); printf("Electricity bill added successfully!\n"); } void view_electricity() { FILE *fp; char filename[20]; printf("Enter the month: "); scanf("%s", elec.month); printf("Enter the year: "); scanf("%d", &elec.year); sprintf(filename, "%s_%d.dat", elec.month, elec.year); fp = fopen(filename, "rb"); if (fp == NULL) { printf("Electricity bill not found for %s %d!\n", elec.month, elec.year); return; } fread(&elec, sizeof(elec), 1, fp); fclose(fp); printf("Month: %s\nYear: %d\nCost: %.2f\n", elec.month, elec.year, elec.cost); } int main() { int choice; do { printf("1. Add electricity bill\n"); printf("2. View electricity bill\n"); printf("0. Exit\n"); printf("Enter your choice: "); scanf("%d", &choice); switch (choice) { case 1: add_electricity(); break; case 2: view_electricity(); break; case 0: printf("Exiting...\n"); break; default: printf("Invalid choice!\n"); } printf("Press any key to continue...\n"); getch(); system("cls"); } while (choice != 0); return 0; } ``` 注意,这只是一个简单的示例,实际的高校水电费管理系统可能包含更多的功能和复杂的代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值