C语言字符串转成INT型数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言字符串转成INT型数组相关的知识,希望对你有一定的参考价值。

我有一个字符串 ch="1 3 4 6",怎么把它弄成int型的数组sz[]sz[1]是1,sz[2]是空格,sz[3]是3,sz[4]是空格,sz[5]是4……求C语言代码,别给C++的。

#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("\\n");

getch();

return 0;


如果是数字串,则有以下的转换:

#include<stdio.h>

int main()

int i,a[200];

char s[200];

scanf("%s",&s);

for(i=0;s[i];i++)

a[i]=s[i]-'0';

a[i]=0;

for(i=0;a[i];i++)

printf("%d ",a[i]);

printf("\\n");

getch();

return 0;

参考技术A #include <stdio.h>
#include <string.h>
void main()

char a[10];
int i=0,sz[10];
gets(a);
for(;a[i]!='\0';i++)
if(a[i]>='0'&&a[i]<='9')

sz[i]=a[i]-48;
printf("%d",sz[i]);

else

sz[i]=a[i];
printf("%c",sz[1]);

printf("\n");
本回答被提问者采纳
参考技术B #include "stdio.h"
main()

char ch[7]="1 3 4 6";
int sz[7];
int i;
for(i=0;i<7;i++)

if(ch[i]==' ')
sz[i]=ch[i];
else
sz[i]=ch[i]-48;
printf("%d ",sz[i]);

getch();
参考技术C atoi

以上是关于C语言字符串转成INT型数组的主要内容,如果未能解决你的问题,请参考以下文章

C语言中关于字符串转整型?

C语言中怎么把Int型转成字符型?

如何将table转换为double型数组?

请问C语言中如何将int转换为float

c语言如何将数组转成字符串

C语言中如何把int型数组转化为字符串?