b[0][0]=a+'0';
这样就可以了,不过这样只使用于1位数的情况,因为ASCII码表里只有0-9的ASCII码,它们比正常的多‘0’的值,也就是48。
字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。
char str[10]={ 'I',' ','a','m','
',‘h','a','p','p','y'};
即把10个字符分别赋给str[0]到str[9]10个元素
如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即
'\0' )。
b[0][0]=a+'0';
这样就可以了,不过这样只使用于1位数的情况,因为ASCII码表里只有0-9的ASCII码,它们比正常的多‘0’的值,也就是48。
你想要b[0][0]中有什么样的值?
将整型数a=48,存放到b[0][0]=a
显示printf("%c", b[0][0]);得到的是字符‘0’ (‘0’的ASCII值是48)
还有b[0][0] = 'a';
printf("%c", b[0][0]);得到的将是字符'a'。
是这样吧?
int a,b[10][10];
scanf("%d",&a);
b[0][0] = a;
printf("%d\n", b[0][0]);
这样呢?你是要这个结果么?如果有问题欢迎追问哈