将字符型变量里存放的数字转换为整型数字

#include<stdio.h>
#include<string.h>
int main ()
{
char c[30];
int i,n[30];
scanf("%s",&c);//输入一串数字
for(i=0;i<strlen(c );i++)
{
n[i]=c[i]-48;
//或者n[i]=c[i] - ‘0’;
//如果c[i]中此时存放字符字符0,那么n[i]的值就会为0,以此类推其余数字也一样
//由于字符存储形式是按ASCLL码存储的,所以要减48(代表字符"0",数字0的ASCLL码为48)
}
for(i=0;i<strlen©;i++)
{
printf("%d ",n[i]);
}
return 0;
}
比如上面的代码中输入23445,那么最后输出的结果就为2 3 4 4 5,因为char型里存放的数字不能参与运算,所以有时候就需要经过这样的转化.


版权声明:本文为m0_52601335原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。