爱国者黑曼巴安装教程:字符串给数组赋值
来源:百度文库 编辑:查人人中国名人网 时间:2024/05/14 07:23:55
#include <iostream.h>
#include <string.h>
int main()
{
char s[101] = {'2', '3', '0', '9', '5', '4', '8', '1', '6'};
int a[100] = {0};
for (int i = 0; i < strlen(s); ++i)
{
if (s[i] >= '0' && s[i] <= '9')
{
a[i] = s[i] - '0';
}
cout << a[i];
}
return 0;
}
/*通过gcc编译*/
/*将字符串line内连续出现的数字作为整数存储在result数组中*/
#include <stdio.h>
#include <string.h>
int isdigit(char t)
{
return( t>='0'&&t<='9');
}
int main()
{
char line[256];
int i,length,totalNumber,result[256];
int prvIsDigit;
while(1)
{
gets(line);
if(line[0]=='\0') break;
/*如果输入空行的话就退出程序*/
totalNumber=0;
length=strlen(line);
/*通过如果当前字符是数字那么通过判断前一个字符是不是数字来判断当前数字的输入是否断开*/
prvIsDigit=0;
for(i=0;i<length;++i)
if(isdigit(line[i]))
{
if(prvIsDigit) result[totalNumber-1]=result[totalNumber-1]*10+line[i]-'0';
else result[totalNumber++]=line[i]-'0';
prvIsDigit=1;
}
else prvIsDigit=0;
/*输出结果*/
if(totalNumber>1)
{
printf("There are %d numbers.\nThey are %d",totalNumber,result[0]);
for(i=1;i<totalNumber;++i)printf(",%d",result[i]);
printf(".\n");
}
if(totalNumber==1)
printf("There is 1 number.\nIt is %d.\n",result[0]);
if(totalNumber==0)
printf("There is no number.\n");
/*结果输出完毕*/
}
return 0;
}
for(i=0;i<100;i++)
{
a[i]=s[i];
}