社区
C语言
帖子详情
请教一个简单c++的问题,如何动态产生一个2或3维数组?
jucee
2001-07-28 08:04:03
请教一个简单c++的问题,如何动态产生一个2或3维数组?
...全文
59
4
打赏
收藏
请教一个简单c++的问题,如何动态产生一个2或3维数组?
请教一个简单c++的问题,如何动态产生一个2或3维数组?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
salesman
2001-07-30
打赏
举报
回复
用vector实现数组,
coolxiao
2001-07-29
打赏
举报
回复
这样行吗?
int **p;
*p=(int *)malloc(size_y);
for (int x=0;x<y;x++)
{
p[x]=(int *)malloc(size_x);
}
jucee
2001-07-28
打赏
举报
回复
上面说的不对吧,你这样产生怎么知道p是几维的呢?a是静态的,更不对了
Suddy
2001-07-28
打赏
举报
回复
其实就是内存分配和指针问题了。
int a[2][2][2]={'0'};
int **p;
**p=NULL;
*p=malloc(size);
.............
C++
课程设计-单链表——学生信息管理系统.docx
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第1页。
C++
课程设计 单链表——学生信息管理系统
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第1页。 学生信息管理系统设计文档 设计任务描述 为了实现学籍管理的
简单
化,我们基于Visual
C++
集成开发环境编写了"学生信息管理系统"软件,该软件适用于所有windows操作系统,面向广大用户,界面简洁,操作
简单
。此软件主要是实现对学生学籍信息进行系统化的管理,可以对学生基本信息进行添加、删除、查找、修改以及对学生成绩的管理,主要是根据学生的学号及其姓名进行操作的。该软件可以更加方便管理者管理学生学籍信息。 功能需求说明 该系统所需要的功能有:1、链表的建立; 2、学生信息的插入; 3、学生信息的查询; 4、学生信息的输出; 5、学生信息的修改; 6、学生信息的删除; 7、良好的欢迎选择界面。 三、总体方案设计 一、实现任务的方法 1、在欢迎选择界面中,使用Switch 这一选择结构来连接程序的执行和用户的命令; 2、在从学生信息的建立直到删除,都是使用链表的相关知识; 3、在定义学生信息时,建立
一个
Inform 类;在定义学生课程成绩时,自定义了
一个
achieve 结构体; 总体结构
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第2页。
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第2页。 三、模块划分 (1)链表的建立。 (2)对链表信息的插入。 (3)对链表信息的查找。 (4)对链表信息的输出。 (5)对链表信息的删除。 (6)对链表信息的修改。 课程成绩信息作为附加信息,穿插于各个模块中。 数据结构说明 一、自定义的数据结构: 1、achieve(课程成绩)用于存放课程成绩信息包括课程数、课程名、成绩、学分、总分和平均分。 2、inform(学生基本信息)用于存放学生基本信息,包括姓名、学号、性别等。
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第3页。3、结点结构-Nodetype,定义了数据域inform和指针域next;
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第3页。 二、类 Student 用于存放处理学生信息的各个功能函数,private 成员是链表的头指针。 各模块设计说明 一、建立: 首先:建立
一个
空链表: Student::Student() {head=new Nodetype; head->next=NULL; 表明这是
一个
空链表 cout<<"请建立链表\n"; }
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第4页。然后建立链表:
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第4页。 二、添加:按照学号从小到大的顺序插入: 三、输出:将链表的数据输出,由于上述操作,输出时会按照学号从小到大的顺序输出。 四、查找:利用学号和姓名两种方式进行查找,查找时主要是遍历链表进行判断 while(p!=NULL&&(d==1&&strcmp(input,p->data.num)!=0)""(d==2&&strcmp(input,p->data.name)!=0)) {p=p->next; } //遍历链表查找符合要求的节点 五、删除:利用节点的删除操作,找到链表中第i-1个结点,修改其指向后继的指针: q = p->next; p->next = q->next; delete(q); 六、更改:利用查找的操作,查到后在进行重新输入的操作; 测试情况说明
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第5页。测试一:学生信息的输入和输出都正常,但是查找、删除和修改时都只能对第
一个
数据进行操作,如下图所示:
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第5页。 但是当要进行查找、删除、修改操作时,系统只能对第
一个
对象进行操作 查看程序时,发现查找函数、删除和修改函数都有个逻辑错误
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第6页。全部修改后,程序的上述错误就没再出现了。
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第6页。 错误二:当提示是否输入课程成绩信息时,输入第一门课程名时,会出现无穷循环 但当输入第一门课程后就会出现下图所示状况: 对于这种状况,我百思不得其解,后来
请教
其他同学,他告诉我错误在于声明课程成绩信息时出错了
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第7页。应该为二
维
数组
,修改之后,课程成绩输入输出便正常了
C++
课程设计-单链表——学生信息管理系统全文共9页,当前为第7页。 错误三:输入学生信息时不按照学号大小顺序,输出结果时也不
C/
C++
中的二
维
数组
,以及多
维
数组
及其指针
数组
是编程语言中常见的数据类型,有必要二
维
以及多
维
数组
,以及对应的指针,做
一个
梳理,便于以后查询。 首先你要区分不同的指针,尤其是二级指针与二
维
数组
的行指针,二级指针与指针
数组
。。 学习编程,最好结合计算机内存一起理解。还是先从最基本的开始。 之前写过一篇二
维
数组
的博客,参考: https://blog.csdn.net/edward_zcl/article/details/89100600 ...
青少年
C++
编程NOIP/CSP竞赛通关语法-一
维
数组
本课程为零基础
C++
语法专题课,是青少儿参加信息学奥赛NOIP/CSP需要学习的语法专题课;2、本课程每节课均配有练习题以及真题,以锻炼孩子的解题能力;3、本课程是基于小学生的认知发展水平开发的,运用孩子生活中常见的例子来阐述编程知识,让孩子听得懂学得会;4、学完本课程后,孩子可以自主编程,解决竞赛中,生活实际
问题
,5、拓展孩子计算思
维
,应对人工智能时代的挑战。6、本课程介绍的是一
维
数组
。也是历来竞赛重要考点。
C++
,二
维
数组
与指针,二
维
数组
名是不是首地址?
答: 是首地址,是
数组
的首地址,虽然值等于第
一个
元素的地址,但是不代表元素的地址. 1.
数组
名都是地址常量,都是首地址,可以直接付给指针,但是一
维
数组
和二
维
数组
名 赋予指针时有点不一样. 2.
数组
名不是指针,它仅仅是个 地址常量 3. 一
维
数组
的
数组
名 直接付给指针, 如 int a[3]; int *p=a; 4. 二
维
数组
名 直接赋给指针 就错了... 如 int a[3][4];
C++
---- 二分查找一
维
数组
,二
维
数组
。
1,二分查找 条件: 1)数据是按从小到大或者是从大到小排序的 2)给定一组数据,在所给的排序数据中找出与数据相等的值,并返回它的下标 例子代码: #include using namespace std; int binary_search(int *a, int num, int value); /二分查找函数/ int binary_search(int *a, int num, int value) { int start = 0; int end = num - 1; while(start &
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章