c语言 将一个字符串数组分成几个数组
请问如何将一个字符串分成两个或更多的数组例如:charstr[]={"2000/01/02,3.5,5.5","2001/01/02,2.5,6.6"}分成charstr...
请问如何将一个字符串分成两个或更多的数组
例如:
char str[]={"2000/01/02,3.5,5.5",
"2001/01/02,2.5,6.6"}
分成
char str1[]={"2000/01/02",
"2001/01/02"}
double str2[][1]={{3.5,5.5},{2.5,6.5}}
谢谢
谢谢两位的指导,但还是得不出结果来,我的str是个字符串数组,它是我从文件中读取出来的,日期以后的我可以用指针读取到别一数组,主要是前边的字符串不行,如方便可否写得更详细一些 展开
例如:
char str[]={"2000/01/02,3.5,5.5",
"2001/01/02,2.5,6.6"}
分成
char str1[]={"2000/01/02",
"2001/01/02"}
double str2[][1]={{3.5,5.5},{2.5,6.5}}
谢谢
谢谢两位的指导,但还是得不出结果来,我的str是个字符串数组,它是我从文件中读取出来的,日期以后的我可以用指针读取到别一数组,主要是前边的字符串不行,如方便可否写得更详细一些 展开
展开全部
str是个字符串数组的吧,不能按照lz的那种定义方法。
可以:char *str[]={"2000/01/02,3.5,5.5",
"2001/01/02,2.5,6.6"}
您貌似是要将日期和后面的分开,这样的话','(逗号)就是标志,可以作为你的循环的条件。
int counter=0;
int i=0;
while(i<MAX)
{
counter=0;
while(counter!=',')
{//复制}
while(str[i][counter]!='\0')
{//复制}
i++;
}
可以:char *str[]={"2000/01/02,3.5,5.5",
"2001/01/02,2.5,6.6"}
您貌似是要将日期和后面的分开,这样的话','(逗号)就是标志,可以作为你的循环的条件。
int counter=0;
int i=0;
while(i<MAX)
{
counter=0;
while(counter!=',')
{//复制}
while(str[i][counter]!='\0')
{//复制}
i++;
}
展开全部
c 语言编写
#include<stdio.h>
void main()
{char *str[]={"2000/01/02,3.5,5.5","2001/01/02,2.5,6.6"};//当要保存几个字符串是要定义指针数组*str[]来存放每个字符串的首地址 像char str[]={"I love china"}
char *str1[] ;double str2[][2];//是两行两列的
char *p1,*p2 ,*p3; int i,j=0;
p1=str[0]; p2=str[1];
while(*p1!=",")
p1++
*p1="\0";
while(*p2!=",")
p1++
*p2="\0";
for(i=0;i<=1;i++)
str1[j++]=str[i];
p3=str2;
p3=p1;
p3++=p2;
for(i=0;i<1;i++)
printf("%s\n",*(str1+i));
for(i=0;i<1;i++)
for(j=0;j<1;j++)
printf("%d",str2[i][j]);
}
}
#include<stdio.h>
void main()
{char *str[]={"2000/01/02,3.5,5.5","2001/01/02,2.5,6.6"};//当要保存几个字符串是要定义指针数组*str[]来存放每个字符串的首地址 像char str[]={"I love china"}
char *str1[] ;double str2[][2];//是两行两列的
char *p1,*p2 ,*p3; int i,j=0;
p1=str[0]; p2=str[1];
while(*p1!=",")
p1++
*p1="\0";
while(*p2!=",")
p1++
*p2="\0";
for(i=0;i<=1;i++)
str1[j++]=str[i];
p3=str2;
p3=p1;
p3++=p2;
for(i=0;i<1;i++)
printf("%s\n",*(str1+i));
for(i=0;i<1;i++)
for(j=0;j<1;j++)
printf("%d",str2[i][j]);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
string str[2]={"2000/01/02,3.5,5.5","2001/01/02,2.5,6.6"};
string str1[2];
str1[0]=str[0].substr(0,10);
str1[1]=str[1].substr(0,10);
string str2[2];
str2[0]=str[0].substr(11,18);
str2[1]=str[1].substr(11,18);
cout<<str1[0]<<" "<<str2[0]<<endl;
cout<<str1[1]<<" "<<str2[1]<<endl;
}
#include<cstring>
using namespace std;
int main()
{
string str[2]={"2000/01/02,3.5,5.5","2001/01/02,2.5,6.6"};
string str1[2];
str1[0]=str[0].substr(0,10);
str1[1]=str[1].substr(0,10);
string str2[2];
str2[0]=str[0].substr(11,18);
str2[1]=str[1].substr(11,18);
cout<<str1[0]<<" "<<str2[0]<<endl;
cout<<str1[1]<<" "<<str2[1]<<endl;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询