
C++ 数据结构 类定义问题【菜鸟级】
头文件seqlist.h:#ifndefSEQLIST_H#defineSEQLIST_H#include<iostream>#include<stdlib.h>usin...
头文件seqlist.h:
#ifndef SEQLIST_H
#define SEQLIST_H
#include <iostream>
#include <stdlib.h>
using namespace std;
typedef int datatype;
const int maxlen=100;
class seqlist{
private:
datatype data[maxlen];
int len;
public:
seqlist(int size);
};
int x=0;
int size=0;
seqlist::seqlist(int size){
for(int i=1;i<size,i++;){
cout<<"请输入第"<<i<<"个元素:";
cin>>x;
data[i]=x;}
}
源文件
#include<iostream>
#include"seqlist.h"
using namespace std;
void main()
{
int n=0,i=0,j=0,c=0,size=0;
do{
cout<<"1、新建顺序表"<<endl;
cin>>c;
switch(c)
{
case 1:
cout<<"将输入的元素个数:";
cin>>size;
seqlist seqlist(size);
break;
}
}while(c!=0);
}
目的:在主函数中输入元素个数,然后将值返回给seqlist函数中的size
比如输入5,然后就输入5个元素 现在是无限输入...菜鸟求答案 展开
#ifndef SEQLIST_H
#define SEQLIST_H
#include <iostream>
#include <stdlib.h>
using namespace std;
typedef int datatype;
const int maxlen=100;
class seqlist{
private:
datatype data[maxlen];
int len;
public:
seqlist(int size);
};
int x=0;
int size=0;
seqlist::seqlist(int size){
for(int i=1;i<size,i++;){
cout<<"请输入第"<<i<<"个元素:";
cin>>x;
data[i]=x;}
}
源文件
#include<iostream>
#include"seqlist.h"
using namespace std;
void main()
{
int n=0,i=0,j=0,c=0,size=0;
do{
cout<<"1、新建顺序表"<<endl;
cin>>c;
switch(c)
{
case 1:
cout<<"将输入的元素个数:";
cin>>size;
seqlist seqlist(size);
break;
}
}while(c!=0);
}
目的:在主函数中输入元素个数,然后将值返回给seqlist函数中的size
比如输入5,然后就输入5个元素 现在是无限输入...菜鸟求答案 展开
3个回答
展开全部
for(int i=1;i<size,i++;)有误
实际上i++只执行了一次,而且i应该从0开始哦
正解:
for (int i = 0; i < size; i++)
实际上i++只执行了一次,而且i应该从0开始哦
正解:
for (int i = 0; i < size; i++)
更多追问追答
追问
谢谢啦,然后问一下哦
我在头文件里添加了这个函数
void seqlist::print(i) {{cout<<data[i]<<" ";}}
想在源文件里输出之前输入的5个元素 也就是case2
cout<<"顺序表:"<<endl;
for (i=1;i<=size;i++){void seqlist::print(i);}
请问哪里出错了吖? 源文件里该怎么调用吖?
public里已添加void print(int i);
追答
这里的i同样应该从0开始吧?
for (int i = 0; i < S.len; i++)
data数组的索引应该是从0 到 S.len - 1
难道说你的data数组的大小是S.len + 1?
源文件里直接调用这个函数,把你之前输入的5个元素的seqlist变量做参数传递进函数就好了
展开全部
for(int i=1;i<size,i++;)
就这了,i++作为条件是恒成立的;所以一直输入
改成这样
for(int i=1;i<size;i++)
就这了,i++作为条件是恒成立的;所以一直输入
改成这样
for(int i=1;i<size;i++)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for(int i=1;i<size,i++;)语句错了,少了;号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询