实验4:栈和队列的基本操作实现及其应用——进制转换以及实验总结
来源:互联网 发布:火灾数据 编辑:程序博客网 时间:2024/05/18 00:42
一、实验目的
1、 熟练掌栈和队列的结构特点,掌握栈和队列的顺序存储和链式存储结构和实现。
2、 学会使用栈和队列解决实际问题。
二、实验内容
1、自己确定结点的具体数据类型和问题规模:
分别建立一个顺序栈和链栈,实现栈的压栈和出栈操作。
分别建立一个顺序队列和链队列,实现队列的入队和出队操作。
2、设计算法并写出代码,实现一个十将二进制转换成2进制数。
3、选做题(*)
设计一个模拟饭堂排队打饭管理软件,实现“先来先打饭”的排号叫号管理。
三、实验步骤
1、依据实验内容分别说明实验程序中用到的数据类型的定义;
2、相关操作的算法表达;
3、完整程序;
4、总结、运行结果和分析。
5、总体收获和不足,疑问等。
四、实验要求
1、 按照数据结构实验任务书,提前做好实验预习与准备工作。
2、 加“*”为选做题。做好可加分。
3、 严格按照数据结构实验报告模板和规范,及时完成实验报告。
4、 在个人主页上发文章提交作业。
5、 实验课会抽查3-5人,希望你可以被查到!
源代码如下:
#include<stdio.h>int main(){int a;char s[20]; int i=0,rem;printf("请输入整数:\n");scanf("%d",&a); do{rem=a%2; a=a/2;s[i]=rem;i++;}while(a!=0);printf("输出的二进制:");while(i>0)printf("%d",s[--i]); printf("\n");return 0;}
实验结果如下:
实验总结:
这次实验总的来说完成的还算可以吧,不过在这次实验中也发现了一些问题,就是虽然书上有很多都已经给出了算法跟代码,但是书上的代码也不一定是正确的,所以下一次实验的时候会仔细考虑的。而且书上有一些算法是不可以直接用的,需要转换一下方式。在主函数中,定义的时候,最好用一个,定义一下,不要一次性就定义了,这很有可能会忘记自己之前定义过什么,从而造成思绪混乱。
阅读全文
0 0
- 实验4:栈和队列的基本操作实现及其应用——进制转换以及实验总结
- 实验4:栈和队列的基本操作实现及其应用之《进制转换》
- 实验4:栈和队列的基本操作实现及其应用之《进制转换》
- 实验4:栈和队列的基本操作实现及其应用——循环队列
- 实验4:栈和队列的基本操作实现及其应用——链队列
- 实验4:栈和队列的基本操作实现及其应用——链栈
- 实验3:栈和队列的基本操作实现及其应用——十进制转换为二进制
- 实验三:栈和队列的基本操作实现及其应用——顺序栈
- 实验3:栈和队列的基本操作实现及其应用——顺序队列和链队列
- 实验4:栈和队列的基本操作实现及其应用之《循环队列》
- 实验4:栈和队列的基本操作实现及其应用之《链队列》
- 实验4:栈和队列的基本操作实现及其应用之《顺序队列》
- 实验4:栈和队列的基本操作实现及其应用之《链队列》
- 实验4:栈和队列的基本操作实现及其应用之《顺序队列》
- 实验4:栈和队列的基本操作实现及其应用之《链队列》
- 实验4:栈和队列的基本操作实现及其应用之《顺序栈》
- 实验4:栈和队列的基本操作实现及其应用之《顺序栈》
- 实验4:栈和队列的基本操作实现及其应用之《顺序栈》
- 数字河
- 01分数规划 东师oj3582: 小澳的葫芦
- 【Leetcode-easy-572】Subtree of Another Tree
- java中数字签名MD5withRSA和SHA1withRSA
- Android中Notification通知的用法
- 实验4:栈和队列的基本操作实现及其应用——进制转换以及实验总结
- influxdb安装及使用
- Arduino学习之二——舵机控制
- hdu 6212-区间DP
- Python Faster R-CNN深度学习训练数据处理二
- MINA框架例子
- bzoj 5043 密码破译 dp
- Centos安装tmux步骤
- JQuery Ajax