C++基础应用,在字符串中提取数字

字符串string1中储存了一个时间,是由小数点隔开的小时和分钟两个数据,现在提取这两个数据,分别储存在h,min两个变量中,怎么弄... 字符串string1中储存了一个时间,是由小数点隔开的小时和分钟两个数据,现在提取这两个数据,分别储存在h,min两个变量中,怎么弄 展开
 我来答
百度网友aebc321
2011-08-04 · TA获得超过523个赞
知道小有建树答主
回答量:469
采纳率:95%
帮助的人:186万
展开全部
#include <iostream>
using namespace std;

int main()
{
char string1[20];
int i = 0,h = 0,min = 0;

cout<<"输入时间表达式:";
cin >>string1;

while(string1[i] != '.')//小数点前面的数逐位加到表示小时的变量中
{
h=h*10+(string1[i]-'0');
i++;
}
i++;//走过小数点
while(string1[i] != '\0')
{
min = min*10+(string1[i]-'0');
i++;
}
cout <<h<<"小时"<<min<<"分钟"<<endl;
getchar();
return 0;
}
百度网友f160a72
2011-08-04 · TA获得超过363个赞
知道小有建树答主
回答量:461
采纳率:0%
帮助的人:402万
展开全部
int i = 0;
h = 0;m = 0;
for(; ; i++)
{
if(string1[i]!='.')
h=h*10+(string1[i]-'0');
else break;
}
i++;
for(; string1[i]!='\0'; i++)
m=m*10+(string1[i]-'0');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangbin45623
2011-08-04 · TA获得超过710个赞
知道小有建树答主
回答量:1216
采纳率:0%
帮助的人:483万
展开全部
#include <iostream>
#include <string.h>
#include <iostream>
using namespace std;

int main()
{
char gettime[20];
int i = 0,h = 0,min = 0;
char first[20],second[20];
memset(first,0,20*sizeof(char));
memset(second,0,20*sizeof(char));
cout<<"输入时间表达式:";
cin >>gettime;

sscanf(gettime,"%[^.]",first);
sscanf(gettime,"%*[1-9]%\.%s",second);
cout<<first<<"hours "<<second<<"seconds"<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hong25100
2011-08-04
知道答主
回答量:21
采纳率:0%
帮助的人:8.9万
展开全部
....好长
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式