㈠ c语言 字符数组转换整型数组的算法
参考代码:
#include <stdio.h>
#include <string.h>
int main()
{
char str[]="123 12 1";
char *p;
p=strtok(str, " ");
printf("%s
", p);
while (p=strtok(NULL, " "))
{
printf("%s
", p);
}
return 0;
}
输出效果:
㈡ C语言字符串转成INT型数组
#include<stdio.h>
int main()
{
int i,a[200];
char s[200];
gets(s);
for(i=0;s[i];i++)
a[i]=s[i];
a[i]=0;
for(i=0;a[i];i++)
printf("%d ",a[i]);
printf(" ");
getch();
return 0;
}
㈢ c语言中,如何将字符串数组中的52提取出来,并转换为int类型
你的题目和文本好像不一样,两个都说一下吧
先说简单的,数组转成字符串只要用sprintf函数就可以了,在string.h中,用法和printf很类似,只要在前面加上你要生成的字符串指针就可以了
int sprintf ( char * str, const char * format, ... );
字符串转换成int,首先你要判断是不是数字,将数字提取到一个字符串中,别忘了\0
之后在stdlib.h中有一个库函数atoi()
int atoi ( const char * str );
把建立的字符数组传给这个函数就可以了.
此外新版C库中还有一个strtod函数可以做到这一点
long int strtol ( const char * str, char ** endptr, int base );
只要传开始指针就好,第二个指针是用来指示转换到什么地方停止的。
比如你的情况就可以这么传
char* close;
strtol(string[1],&close,10);
之后close应该指向C
㈣ 用c语言把字符型数组 转换成整形数组
感觉你的表述有问题
charstr[]={11,12,13,14,15,16,17,18,19,20};
是个什么意思你明白吗?他的输出是这样的
㈤ 用C语言进行字符串到数组的转化
#include <stdio.h>
#include <string.h>//为strlen()函数提抄供原型
int main()
{ char ch[100];
int i,length;
int n_number=0,m_number=0;
printf("请输入字符串: ");
gets(ch);//获取输入,并存入数组中
length=strlen(ch);//计算输入字符串的长度
for(i=0;i<length;i++)
{
if(ch[i]>='0'&&ch[i]<='9')//判断是否为数字
{
n_number++;
}
if(ch[i]>='a'&&ch[i]<='z'||ch[i]>='A'&&ch[i]<='Z')//判断是否为字母
{
m_number++;
}
}
printf("输入的字符串为: ");
puts(ch);//输出存入数组的字符串
printf("字符串中数字的个数=%d,字母的个数=%d\n",n_number,m_number);
return 0;
}
㈥ C语言中怎样最好地从标准输入流中获取字符串,并转换为int数组
#include<stdio.h>
#include<stdlib.h>
intmain(){
inti;
charbuffer[256];
printf("Enteranumber:");
fgets(buffer,256,stdin);
i=atoi(buffer);
printf("Thevalueenteredis%d.",i);
system("pause");
return0;
}
其实你的需求很简单只要是用atoi函数就可以轻松的转换string到数组了,我用以上的一小段代码就可以解释明白你的疑惑。没看明白在问我吧!
执行结果:
Enter a number: 233cyuyan
The value entered is 233.
函数说明如下:
头文件:#include<stdlib.h>
atoi()函数用来将字符串转换成整数(int),其原型为:
intatoi(constchar*str);
【函数说明】atoi()函数会扫描参数str字符串,跳过前面的空白字符(例如空格,tab缩进等,可以通过函数来检测),直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('