-
C语言链表
2020-04-14 20:29:56#C语言链表的操作 我的第一篇博客文章 你们好啊,这是我的第一篇博客文章,写的是C语言的链表,...void menu(); //菜单 LinkList *initList(); //初始化 void addList(LinkList *); //添加数据 void printList(Link...#C语言链表的操作
我的第一篇博客文章
你们好啊,这是我的第一篇博客文章,写的是C语言的链表,嘿嘿,来咯!!
C语言实现链表
我们先来看下基本操作
//函数声明 void menu(); //菜单 LinkList *initList(); //初始化 void addList(LinkList *); //添加数据 void printList(LinkList *); //输出数据 int lengList(LinkList *); //长度 void delmaxList(LinkList *); //删除最大值 void insertList(LinkList *); //插入数据 void delList(LinkList *); //删除数据 void numList(LinkList *); //排序数据 void seekList(LinkList *); //按元素查找位置 void seatList(LinkList *); //按位置查找元素
所包含的头文件
#include <stdio.h> #include <stdlib.h> typedef struct Node { int data; //数据域 struct Node* next; //指针域 }LinkList;
主函数
int main() { LinkList *L; int n; int out = 1; menu(); while(1) { printf("输入要执行的功能:"); scanf("%d",&n); switch(n) { case 1: L=initList(); addList(L); break; case 2: printList(L); break; case 3: printf("链表长度为:%d\n\n",lengList(L)); break; case 4: delmaxList(L); printf("删除后链表为:"); printList(L); break; case 5: insertList(L); printf("插入后链表为:"); printList(L); break; case 6: delList(L); printf("删除后链表为:"); printList(L); break; case 7: numList(L); printf("排序后链表为:"); printList(L); break; case 8: seekList(L); break; case 9: seatList(L); break; case 10: menu(); break; case 0: out = 0; break; } if(out == 0) { printf("系统运行结束!\n"); break; } } return 0; }
其操作
//菜单 void menu() { printf("|===============================|\n"); printf("|-------1.添加数据 |\n"); printf("|-------2.输出数据 |\n"); printf("|-------3.输出长度 |\n"); printf("|-------4.删除最大值 |\n"); printf("|-------5.插入数据 |\n"); printf("|-------6.删除数据 |\n"); printf("|-------7.排序数据 |\n"); printf("|-------8.按元素查找位置 |\n"); printf("|-------9.按位置查找元素 |\n"); printf("|-------10.显示菜单栏 |\n"); printf("|-------0.退出系统 |\n"); printf("|_______________________________|\n"); } 初始化 LinkList *initList(void) { LinkList *L; L = (LinkList *)malloc(sizeof(LinkList)); L->next = NULL; //L指向的下一个节点赋空 return L; } //添加数据 void addList(LinkList *L) //采用头插法 { LinkList *p; int n,i; printf("输入创建节点个数:"); scanf("%d",&n); for(i=0;i<n;i++) //循环建立结点 { printf("输入第%d个数:",i+1); p = (LinkList *)malloc(sizeof(LinkList)); scanf("%d",&p->data); p->next = L->next; //将*p插入原开始结点前,头结点之后 L->next = p; } printf("添加成功!\n\n"); } 输出数据 void printList(LinkList *L) { LinkList *p; p = L->next; //p指向开始节点 while(p != NULL) //p不为空,输出*p节点的data域 { printf("%d ",p->data); p = p->next; //p移到下一个结点 } printf("\n\n"); } //长度 int lengList(LinkList *L) { LinkList *p; int n=0; p = L->next; while(p != NULL) { n++; p = p->next; } return n; } ///删除最大元素 void delmaxList(LinkList *L) { LinkList *p = L->next; LinkList *pre = L; LinkList *max = p; LinkList *maxp = pre; while(p != NULL) { if(max->data < p->data) //找到更大的节点 { max = p; //更改max maxp = pre; //更改maxp } pre = p; p = p->next; //p,pre 同步向后移一个字节 } maxp->next = max->next; // 实现删除*max节点 free(max); printf("删除成功!\n"); } 插入数据 void insertList(LinkList *L) { int j=0; int i,n; printf("输入插入的元素:"); scanf("%d",&n); printf("输入插入的位置:"); scanf("%d",&i); LinkList *p = L; LinkList *s; while(j<i-1 && p!=NULL) { j++; p = p->next; } if(p == NULL || j>i-1) printf("位置插入错误!\n\n"); else { s = (LinkList *)malloc(sizeof(LinkList)); s->data = n; s->next = p->next; //将*s插入到*p之后 p->next = s; printf("插入成功!\n\n"); } } ///删除数据 void delList(LinkList *L) { int s=0; int i,n; printf("输入要删除的位置:"); scanf("%d",&i); LinkList *p = L; LinkList *q; while(s<i-1 && p!=NULL) { s++; p = p->next; } if(p == NULL) printf("位置错误!\n\n"); else { q = p->next; if(q == NULL) { printf("位置错误!\n\n"); } n = q->data; p->next = q->next; //删除*q节点 free(q); //释放q } } 排序数据 void numList(LinkList *L) { int i,j,t; LinkList *p,*q; int len = lengList(L); for(i=0,p=L->next ; i<len-1 ; i++,p=p->next) { for(j=i+1,q=p->next ; j<len ; j++,q=q->next) { if(p->data > q->data) { t = p->data; p->data = q->data; q->data = t; } } } } ///按元素查找位置 void seekList(LinkList *L) { int s=0,n; printf("输入元素:"); scanf("%d",&n); LinkList *p = L->next; while(p != NULL && p->data != n) { p = p->next; s++; } if(p == NULL) printf("输入错误!\n"); else printf("%d为链表中的第%d位!\n\n",n,s+1); } 按位置查找元素 void seatList(LinkList *L) { int s=0; int n,i; printf("输入位置:"); scanf("%d",&i); LinkList *p = L; while(s<i && p !=NULL) { s++; p = p->next; } if(p == NULL) printf("位置错误!\n\n"); else { n = p->data; printf("链表中的第%d位存放的元素为:%d\n\n",i,n); } }
好啦!结束了。。。。
-
C语言超市管理系统(c语言)
2020-07-01 12:29:10int menu1();//打印主菜单函数 int menu2();//打印管理员菜单函数 int menu3();//打印顾客函数 void CreateGoods();//录入商品信息函数 void ShowGoods();//显示库存信息函数 void ShopCart超市管理系统
1.包括管理员和顾客
2.管理员有登入,录入商品信息,显示所有商品信息功能
3.顾客有购物车和结算功能
4.购物车具有显示商品列表,显示购物车商品,往购物车添加商品的功能全部代码下载链接:点击前往下载链接
函数
int menu1();//打印主菜单函数 int menu2();//打印管理员菜单函数 int menu3();//打印顾客函数 void CreateGoods();//录入商品信息函数 void ShowGoods();//显示库存信息函数 void ShopCart();//对购物车进行操作 int ShopCartMenu();//打印购物车菜单 void ShowCart();//显示购物列表 void add();//在购物车里添加商品 void UpdateKu();//更新购物车信息函数 void calculate();//计算所购商品价格并修改保存
建立库存函数
void CreateGoods() {//手动建立库存信息 FILE *fp;//定义文件指针 int i; printf("请输入需要录入的商品个数:\n"); scanf("%d",&n);//输入数量 printf("请依次输入货物信息:\n"); printf("--------------------------------------------\n"); for(i=0;i<n;i++) {//向文件中写入信息 printf("第%d个商品:\n",i+1); printf("货号:"); fflush(stdin);//清空输入流 gets(goods[i].ID);//输入货号 printf("品名:"); fflush(stdin);//清空输入流 gets(goods[i].brand);//输入品名 printf("进价: "); fflush(stdin);//清空输入流 scanf("%lf",&goods[i].inprice);//输入进价 printf("售价:"); fflush(stdin);//清空输入流 scanf("%lf",&goods[i].outprice);//输入售价 printf("数量:"); fflush(stdin);//清空输入流 scanf("%d",&goods[i].storage);//输入数量 printf("保质期:"); fflush(stdin);//清空输入流 gets(goods[i].date);//输入货号 printf("\n"); } if((fp=fopen("kucun.txt","w"))==NULL) {//判断文件是否创建失败 printf("创建文件失败。\n"); return ; } //fprintf(fp,"货号 品名 单价 库存量 保质期\n"); for(i=0;i<n;i++) {//把货物信息写进文件 fprintf(fp,"%-11s%-15s%-8.3f%-8.3f%-11d%-11s\n",goods[i].ID,goods[i].brand,goods[i].inprice,goods[i].outprice,goods[i].storage,goods[i].date); } //fwrite(goods,sizeof(struct mar),N,cun);二进制文件输出 fclose(fp);//关闭文件 printf("信息导入成功\n"); return ; }
在购物车里添加商品
void add() {//在购物车里添加商品 FILE *fp,*fp1;//fp表示kucun文件,fp1表示cart文件 struct node *p1,*p,*p2;//定义节点指针 int i,n;//n表示商品数量 char s[20];//表示货号或者品名 char choice1[20],choice2[20];//选择项(y继续,n继续) do{ printf("输入所需物品的名称或货号:\n"); fflush(stdin);//清空输入流 gets(s);//输入货号或者品名 if((fp=fopen("kucun.txt","r"))==NULL) {//打开文件 printf("打开文件失败\n"); continue; } for(i=0;i<N;i++) {//循环N次 fscanf(fp,"%s%s%*lf%lf%d",goods[i].ID,goods[i].brand,&goods[i].outprice,&goods[i].storage);//从文件中读取货物信息 if((strcmp(goods[i].ID,s)==0||strcmp(goods[i].brand,s)==0)&&goods[i].storage>0)//找输入对应的商品 { printf("已找到所需商品:\n"); printf("--------------------------------------------\n"); printf("货号 品名 单价 数量\n"); printf("%-11s%-15s%-8.3f%-7d\n",goods[i].ID,goods[i].brand,goods[i].outprice,goods[i].storage,goods[i].date);//输出所需物品信息 printf("请输入所需商品数量: "); scanf("%d",&n);//商品数量 if(n>goods[i].storage) {//判断是否还可以购买不 printf("该商品库存不足\n"); break; } printf("\n是否购买此商品?(Y/N)\n"); fflush(stdin);//清空输入流 scanf("%s",choice1);//输入一个选项 if(strcmp(choice1,"Y")==0||strcmp(choice1,"y")==0) {//输入y/Y表示购买此商品 p=new node;//生成新节点 if(p==NULL) {//分配内存失败 printf("内存申请失败!\n"); exit(1);//退出 } p->number=n;//商品数量 p->buy=goods[i];//货物信息 p->next=NULL; p1=cart;//把头结点赋给p1 if(cart==NULL)//头结点为空 cart=p;//把节点赋值给头结点 else { while(p1->next!=NULL) p1=p1->next;//把链表循环到尾部 p->next=p1->next; p1->next=p;//把新节点p挂在链表尾部 } } else printf("输入错误\n"); break;//找到商品结束循环 } } if(i==N)//循环完毕还没找到对应商品 printf("未找到所需物品\n"); fclose(fp);//关闭文件 UpdateKu();//更新库存信息函数 printf("是否继续购物?(Y/N)\n"); fflush(stdin);//清空输入流 scanf("%s",choice2);//输入选项 if(strcmp(choice2,"y")!=0&&strcmp(choice2,"Y")!=0) printf("放弃购买,返回菜单!\n"); }while(strcmp(choice2,"y")==0||strcmp(choice2,"Y")==0);//y/Y继续循环 return ; }
计算所购商品价格并修改保存
void calculate() {//计算所购商品价格并修改保存 struct node *p; p=cart;//把购物车(cart)链表赋给p double sum=0;//购买商品应付钱数 double pay;//购买商品实付钱数 FILE *fp;//定义文件指针 int i; printf("以下是购物清单:\n"); ShowCart();//调用函数显示购物列表信息 if((fp=fopen("kucun.txt","r"))==NULL) {//打开文件 printf("打开文件失败\n"); return ; } for(i=0;i<N;i++) {//从文件中读取信息 fscanf(fp,"%s%s%*lf%lf%d",goods[i].ID,goods[i].brand,&goods[i].outprice,&goods[i].storage); } fclose(fp);//关闭文件 while(p!=NULL) {//当链表不为空时 sum=sum+p->buy.outprice*p->number;//计算应付钱数 for(i=0;i<N;i++) {//找出对应商品库存量 if(strcmp(goods[i].ID,p->buy.ID)==0) {//找到对应商品 goods[i].storage=goods[i].storage-p->number;//库存量变化 break; } } p=p->next;//指向下一个节点 } printf("总计:%-8.3f\n",sum);//输出购买物品共需多少钱 printf("输入实付金额:"); scanf("%lf",&pay); printf("实付: %-8.3f 找零: %8.3f\n",pay,pay-sum); if((fp=fopen("kucun.txt","w"))==NULL) {//打开文件 printf("写入文件失败\n"); return ; } for(i=0;i<N;i++) {//向文件中写入信息 fprintf(fp,"%-11s%-15s%-8.3f%-8.3f%-7d\n",goods[i].ID,goods[i].brand,goods[i].inprice,goods[i].outprice,goods[i].storage); } fclose(fp);//关闭文件 return ; }
全部代码下载链接:点击前往下载链接
-
【C语言】C语言实现通讯录
2020-03-20 12:16:41通过C语言实现有一个通讯录 通讯录具有以下的功能1.手机用户添加 、2.手机用户删除、3.手机用户查找 、4.手机用户修改、 5.手机用户查看 、6.手机用户清空、7.手机用户排序 、8.手机用户保存、0.退出程序 代码如下:...通过C语言实现有一个通讯录
通讯录具有以下的功能1.手机用户添加 、2.手机用户删除、3.手机用户查找 、4.手机用户修改、
5.手机用户查看 、6.手机用户清空、7.手机用户排序 、8.手机用户保存、0.退出程序代码如下:
text.c#define _CRT_SECURE_NO_WARNINGS 1 #include "contact.h" void menu() { printf("***************************************\n"); printf("**********1.手机用户添加 2.手机用户删除***********\n"); printf("**********3.手机用户查找 4.手机用户修改********\n"); printf("**********5.手机用户查看 6.手机用户清空*********\n"); printf("**********7.手机用户排序 8.手机用户保存**********\n"); printf("**********0.退出程序 **********\n"); printf("***************************************\n"); } void text() { int input=0; contact con; InitContact(&con); do { menu(); printf("请输入选择:>"); scanf("%d", &input); switch (input) { case ADD: AddContact(&con); break; case DEL: DelContact(&con); break; case SEARCH: SearchContact(&con); break; case MODIFY: ModifyContact(&con); break; case SHOW: ShowContact(&con); break; case EMPTY: EmptyContact(&con); break; case SORT: SortContact(&con); break; case EXIT: Destroy(&con); printf("退出通讯录"); break; case 8: Save(&con); printf("手机用户保存"); break; default: printf("选择错误\n"); break; } } while (input); } int main() { text(); system("pause"); return 0; }
contact.c
#define _CRT_SECURE_NO_WARNINGS 1 #include"contact.h" void InitContact(contact*pcon) { pcon->data = (peolnfo*)malloc(sizeof(peolnfo)* 1); pcon->size = 0; pcon->capticty = 1; printf("初始化成功!\n"); } void AddContact(contact*pcon) { assert(pcon != NULL); if (pcon->size == pcon->capticty) { Capticty(pcon); } printf("请输入姓名:>"); scanf("%s", pcon->data[pcon->size].name); printf("请输入电话号码:>"); scanf("%s", pcon->data[pcon->size].tele); printf("请输入分类:>"); scanf("%d", &pcon->data[pcon->size].type); printf("请输入电子邮件地址:>"); scanf("%s", pcon->data[pcon->size].email); printf("请输入条目编号:>"); scanf("%d", &pcon->data[pcon->size].num); pcon->size++; printf("添加成功\n"); } void ShowContact( contact*pcon) { int i = 0; printf("%-10s\t%-5s\t%-5s\t%-12s\t%-20s\n", "姓名", "电话号码", "分类", "电子邮件地址", "条目编号"); for (i = 0; i < pcon->size; i++) { printf("%-10s\t%-12s\t%-5d\t%-12s\t%-5d\n", pcon->data[i].name, pcon->data[i].tele, pcon->data[i].type, pcon->data[i].email, pcon->data[i].num); } } int Search(contact*pcon, char name[]) { int i = 0; for (i = 0; i < pcon->size; i++) { if (strcmp(pcon->data[i].name,name)==0) { return i; } } return -1; } void DelContact(contact*pcon) { if (pcon->size == 0) { printf("通讯录已空无法删除\n"); } else { char name[MAX] = { 0 }; printf("请输入姓名:>"); scanf("%s", name); int t = Search(pcon, name); if (t == -1) { printf("输入姓名有误无法删除\n"); } else { int i = 0; for (i = t; i < pcon->size - 1; i++) { pcon->data[i] = pcon->data[i + 1]; } pcon->size--; printf("删除成功\n"); } } } void SearchContact( contact*pcon) { char name[MAX] = { 0 }; printf("请输入姓名:>"); scanf("%s", name); int t=Search(pcon, name); if (t == -1) { printf("输入有误查无此人\n"); } else { printf("查找成功\n"); printf("%-10s\t%-5s\t%-5s\t%-12s\t%-20s\n", "姓名", "电话号码", "分类", "电子邮件地址", "条目编号"); printf("%-10s\t%-12s\t%-5d\t%-12s\t%-5d\n", pcon->data[t].name, pcon->data[t].tele, pcon->data[t].type, pcon->data[t].email, pcon->data[t].num); } } void ModifyContact(contact*pcon) { char name[MAX] = { 0 }; printf("请输入姓名:>"); scanf("%s", name); int t = Search(pcon, name); if (t == -1) { printf("输入有误查无法修改\n"); } else { printf("请重新输入姓名:>"); scanf("%s", pcon->data[t].name); printf("请重新输入电话号码:>"); scanf("%s", pcon->data[t].tele); printf("请重新输入分类:>"); scanf("%d", &pcon->data[t].type); printf("请重新输入电子邮件地址:>"); scanf("%s", pcon->data[t].email); printf("请重新输入条目编号:>"); scanf("%d", &pcon->data[t].num); } printf("修改成功\n"); } void EmptyContact(contact*pcon) { pcon->size = 0; printf("清空成功\n"); } void SortContact(contact*pcon) { int i = 0; for (i = 0; i < pcon->size; i++) { int t = 0; for (t = 1; t < pcon->size; t++) { int ret=strcmp(pcon->data[i].name, pcon->data[t].name); if (ret<0) { char tmp[NAME_MAX]; strcpy(tmp, pcon->data[i].name); strcpy(pcon->data[i].name, pcon->data[t].name); strcpy(pcon->data[t].name, tmp); } } } printf("排序成功\n"); ShowContact(pcon); } void Capticty(contact*pcon) { int x = pcon->capticty; assert(pcon != NULL); if (pcon->size == pcon->capticty) { pcon->data = (peolnfo*)realloc(pcon->data, sizeof(peolnfo)*((x)* 2)); } pcon->capticty = x * 2; printf("增容成功!\n"); } void Destroy(contact*pcon) { assert(pcon != NULL); pcon->size = 0; pcon->capticty = 0; free(pcon->data); pcon = NULL; } void Save(contact*pcon) { contact *p; FILE*fp; p = pcon; fp = fopen("C:\\Desktop\\bookslist.txt", "w"); fprintf(fp,"%-10s\t%-5s\t%-5s\t%-8s\t%-8s\n", "姓名", "电话号码", "分类", "电子邮件地址", "条目编号"); for (int i = 0; i < pcon->size; i++) { fprintf(fp,"%-10s\t%-5s\t%-5d\t%-12s\t%-20d\t\n", pcon->data[i].name, pcon->data[i].tele, pcon->data[i].type, pcon->data[i].email, pcon->data[i].num); } fclose(fp); printf("保存成功!\n"); }
contact.h
#ifndef __CONTACT_H__ #define __CONTACT_H__ #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<assert.h> #include<string.h> #include<malloc.h> enum Option { EXIT, ADD, DEL, SEARCH, MODIFY, SHOW, EMPTY, SORT }; #define MAX 1000 #define NAME_MAX 20 #define SEX_MAX 5 #define TELE_MAX 12 #define ADDR_MAX 20 typedef struct peolnfo { char name[NAME_MAX]; char tele[TELE_MAX]; int type; char email[ADDR_MAX]; int num; }peolnfo; typedef struct contact { peolnfo*data; int size ; int capticty; }contact; void InitContact(contact*pcon); void AddContact(contact*pcon); void ShowContact(contact*pcon); void DelContact(contact*pcon); void SearchContact(contact*pcon); void ModifyContact(contact*pcon); void EmptyContact(contact*pcon); void SortContact(contact*pcon); void Capticty(contact*pcon); void Destroy(contact*pcon); void Save(contact*pcon); #endif //__CONTACT_H__
-
基于LINUX系统下c语言-----学生管理系统menu文件.docx
2020-09-02 21:59:14/* *文件名menu.c *作者* *时间2012.09 *说明界面函数实现 *版本V1.0 */ /* 文件包含 */ #include"printmenu.h" #include"stu.h" #include"admin.h" #include"common.h" #include"tooler.h #include"tea.h" /* * */ ... -
基于LINUX系统下c语言-----学生管理系统menu文件.pdf
2020-06-30 20:43:54/* * 文件名 menu.c * 作者 * * 时间 2012.09 * 说明界面函数实现 * 版本 V1.0 */ /* 文件包含 */ #include"printmenu.h" #include"stu.h" #include"admin.h" #include"common.h" #include"tooler.h" #include"tea.h... -
c语言计算器
2018-11-22 22:03:32c语言计算器两种方法 //一般做法 #include<stdio.h> #include<windows.h> //#include<assert.h> void menu() { printf("**************************\n"); ...c语言计算器两种方法
//一般做法 #include<stdio.h> #include<windows.h> //#include<assert.h> void menu() { printf("**************************\n"); printf("****欢迎来到计算器页面****\n"); printf("**** 1.add 2.mul *****\n"); printf("*****3.sub 4.div1 *****\n"); printf("*****0.exit *****\n"); printf("**************************\n"); } int add(int x, int y) { return x + y; } int mul(int x, int y) { return x * y; } int sub(int x, int y) { return x - y; } int div1(int x, int y) { return x / y; } int main() { int n = 1; menu(); while (n) { printf("请输入选项:\n"); scanf("%d", &n); int x = 0, y = 0; /*printf("请输入两个整数!\n"); scanf("%d%d", &x, &y);*/ //若将两个数字输入放在此处会出现输入错误时不能退出系统,而是显示“输入两个整数”的提示 switch (n) { case 1: printf("请输入两个整数!\n"); scanf("%d%d", &x, &y); printf("%d\n", add(x, y)); break; case 2: printf("请输入两个整数!\n"); scanf("%d%d", &x, &y); printf("%d\n", mul(x, y)); break; case 3: printf("请输入两个整数!\n"); scanf("%d%d", &x, &y); printf("%d\n", sub(x, y)); break; case 4: printf("请输入两个整数!\n"); scanf("%d%d", &x, &y); printf("%d\n", div1(x, y)); break; case 0: printf("退出计算器!\n"); break; default: printf("输入错误,请重新输入!\n"); } } }
//使用函数指针数组解决计算器问题 #include<stdio.h> #include<windows.h> //#include<assert.h> void menu() { printf("**************************\n"); printf("****欢迎来到计算器页面****\n"); printf("**** 1.add 2.mul *****\n"); printf("*****3.sub 4.div1 *****\n"); printf("*****0.exit *****\n"); printf("**************************\n"); } int add(int x, int y) { return x + y; } int mul(int x, int y) { return x * y; } int sub(int x, int y) { return x - y; } int div1(int x, int y) { return x / y; } int main() { int n = 1; menu(); while (n) { printf("请输入选项:\n"); scanf("%d", &n); int(*arr[5])() = { 0,add,mul,sub,div1 };//转移表 //定义一个函数指针数组,存放函数地址 if (n >= 0 && n < 5) { int x = 0, y = 0; printf("请输入两个整数:>\n"); scanf("%d%d", &x, &y); printf("%d\n", (*arr[n])(x,y));//输出结果 } else { printf("输入有误,请重新输入!\n"); scanf("%d", &n); } } system("pause"); return 0; }
两种方法相比,第一种相似代码较多,比较冗余;第二种代码简洁直观,程序效率高。
-
C语言 扫雷
2019-12-03 16:09:31#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> #define ROW 9 ...int Menu() { printf("1.开始游戏 "); printf("0.... -
C语言扫雷
2019-09-04 20:33:33// ConsoleApplication31.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include <iostream> #include <math.h> #include <time.h> #define ROW 9 ...void menu(... -
C语言实现扫雷
2018-05-27 19:08:00实现用C语言编写一个扫雷游戏 大家想必都玩过扫雷,无论那个版本都有难度供已选择,下面来分享一个自己用C语言编写的扫雷游戏吧! 编写语言:C语言 编写软件:visual studio 2017 ...void Menu() { ... -
kmp_算法_简洁版_c语言实现_-_c语言编程博客.pdf
2020-10-28 09:27:02kmp 算法 简洁版 c语言实现 | c语言编程博客 15-7-1 C语言编程博客 每天学一点,每天都在进步 MENU KKMMPP 算算法法 简简洁洁版版 CC语语言言实实现现 Date: 2015年4月1日 Posted by: qisikai In: 小代码 kmp算法 是... -
C语言简易计算器
2020-02-28 14:20:14重新用C语言做了一个简易的计算器 int main()//主函数 { while(1) { menu(); } } void menu()//菜单介绍界面 { int a,b,c; printf("\n\n\t\t\t\t这是一个计算器\n"); printf("\t\t\t\t先后输入两个数\n... -
C语言通讯录
2016-08-07 20:23:04#include #include #include typedef struct ATNN //定义结构体 { char name[20]; char sex[4]; char age[3]; char tel[12]; char addr[50];...void menu()//菜单 { printf("\n************************ -
c语言扫雷初阶
2021-01-28 19:42:04C语言实现扫雷小游戏 代码实现: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<time.h> #include<stdlib.h> #define ROW 7 #define COL 7 #define ROWS ROW+2 #define COLS COL... -
C语言简易版扫雷
2020-11-01 18:55:39用C语言实现简易版扫雷。 二、基本流程 1.菜单界面。 2.创建地图 (两个地图)。 3.初始化地图。 4.打印地图。 5.程序读取玩家输入的要翻开位置的坐标,并校验。 6.如果不是地雷,统计当前位置周围雷的个数, 并显示到... -
C语言实现简易五子棋
2020-12-16 22:58:28本文实例为大家分享了C语言实现简易五子棋的具体代码,供大家参考,具体内容如下 #define _CRT_SECURE_NO_WARNINGS #include #include #include #define ROW 5 #define COL 5 char g_broad[ROW][COL]; void menu();... -
c语言写贪吃蛇什么水平_C语言写个贪吃蛇游戏
2021-01-02 09:27:20贪吃蛇是个非常经典的游戏,用C语言来实现也是一个好玩的事情。这个游戏我写完后放在知乎,竟然点赞的人数超级多。我觉得大家喜欢,一个方面是因为写得简单,大家都能看得懂,一个可扩展性还是非常强的。我试了说... -
C语言简单计算器
2020-02-24 17:05:06用C语言实现简单的计算器功能。 简单计算器,实现简单的加减乘除功能,选择对应的运算符输出运算符对应的编号,然后输入我们要计算的两个数,程序会给出计算结果。 效果演示 简单计算器代码 /* 简单计算器 name:zsh... -
C语言实现万年历效果
2021-01-20 06:07:24本文实例为大家分享了C语言实现万年历的具体代码,供大家参考,具体内容如下 #include #include #include #define str SUN MON TUE WED THU FRI SAT void menu(); //操作菜单 int leap(int year); //判断某年... -
c语言实现扫雷
2019-04-09 23:24:49C语言实现扫雷 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int menu(){ printf("=========================\n"); printf("1.开始游戏\n"); printf("0.结束... -
C语言扫雷游戏
2019-09-23 15:36:36C语言扫雷游戏 1>第一次下子,不炸死。 2>坐标周围没雷,可以实现展开。 首先,需要创立一个game.h的头文件,以及game.c的源文件,还有包括主函数的test.c文件 一.创建菜单 void menu() { printf("**********... -
c语言程序后退_c语言如何返回菜单?
2020-12-23 13:58:20展开全部问题比较多,主要是两个:e68a84e8a2ad...menu函数最后又调用menu,没必要。改了一下,你看看。#include#includestructstudent{charname[30];/*名字肯定是字符串型*/intnumber[30]... -
atm c语言流程图_用C语言写个——简单的ATM系统
2020-12-22 05:24:51原标题:用C语言写个——简单的ATM系统今天我来写个小小的程序吧,大学生的作业,ATM程序系统,代码也就一点点,这个程序超级简单的哈,涉及到的也就C语言的 一点点知识点罢了,也没多少。下面我把代码发出来哈#... -
c语言课程设计
2016-05-23 21:25:001.查看该程序,体会C语言的中的核心语句是如何使用的 1)该程序采用函数组成模块化结构 2)main函数中,首先调用menu()函数产生菜单 3)然后通过不停接收用户的按键,分别判断是什么操作 4)然后设置飞机和子弹移动 5)... -
C语言超市管理系统设计
2021-01-21 18:46:44本文实例为大家分享了C语言超市管理系统设计的具体代码,供大家参考,具体内容如下 #include #include #include #define NUM 5 struct item{ char brand[20]; char id[10]; float in_price; float out_price; ... -
C语言进制转换
2020-05-27 19:26:26#include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h>...void menu(); void main() { int choice; while(1) { menu(); printf(“Please choose(0-4 -
C语言财务管理系统(源代码)_贪吃蛇c语言源代码
2020-07-26 07:44:04#include"stdio.h" #include"stdlib.h" #define MAX_NAME 11 #define MAX_DETAIL 21 #define MENU_COUNT 9 #define DATA_FILE "fa.dat" typedef wnum_fi_type { income=1, payout=-1 }fi_type; typedef struct_fi_in -
atm c语言流程图_c语言模拟atm机程序
2020-12-22 05:23:34#include"stdio.h"#include"string.h"#include"stdlib.h"#include"conio.h"void mainmenu(int);int languagemenu();void query(float,int);float deposit(float,int);float withdraw(float,int);int main(){int exit...
收藏数
753
精华内容
301