sy7_3.c
字符串提取处理,编写main函数,输入字符串,调用函数extract把字符串中一串连续数字字符合并一个八进制整数,作为十进制整数存入int类型数组中,并输入。要求:extract(char*,int d[])。
测试数据:1)输入100bc89202*1,将输出64 130 1。
2)输入q2t0,将输出2 0。
代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void extract(char *a,int d[]);
int main()
{
int d[100];
char a[100];
printf("请输入字符串:\n");
gets(a);
extract(a,d);
return 0;
}
void extract(char *a,int d[])
{
int i,j=0,flag=0,t=0;
for(i=0;a[i]!=‘\0‘;i++)
{
if(a[i]>=‘0‘&&a[i]<=‘7‘&&flag==0)
{
flag=1;
t=(int)a[i]-‘0‘;
}
else if(a[i]>=‘0‘&&a[i]<=‘7‘&&flag!=0)
t=t*8+(int)a[i]-‘0‘;
else if(flag!=0)
{
d[j]=t;
j++;
flag=0;
}
}
if(a[i-1]>=‘0‘&&a[i-1]<=‘7‘)
{
d[j]=t;
j++;
}
int k=0;
for(k;k<j;k++)
{
printf("%d ",d[k]);
}
}
原文:https://www.cnblogs.com/DingCR7/p/14162218.html