c语言 怎么讲一个整形变量的值赋给一个字符型数组中的一个元素
我定义了一个字符型数组全部元素都为#现在通过inta;scanf(“%d”,&a);得到a的具体值。假设为5那么我怎么才能让定义的字符型数组中第一个元素b[0][0]显示...
我定义了一个字符型数组 全部元素都为#
现在通过
int a;
scanf(“%d”, &a);
得到a的具体值。假设为5
那么 我怎么才能让定义的字符型数组中第一个元素b[0][0]显示a的值?
若是 b[0][0] = a;
printf("%c", b[0][0]);
还有b[0][0] = 'a';
printf("%c", b[0][0]);
包括把输出类型%c换成%d也不可以
到底怎么才能实现呢 求助啊 展开
现在通过
int a;
scanf(“%d”, &a);
得到a的具体值。假设为5
那么 我怎么才能让定义的字符型数组中第一个元素b[0][0]显示a的值?
若是 b[0][0] = a;
printf("%c", b[0][0]);
还有b[0][0] = 'a';
printf("%c", b[0][0]);
包括把输出类型%c换成%d也不可以
到底怎么才能实现呢 求助啊 展开
6个回答
展开全部
b[0][0]=a+'0';<p>这样就可以了,不过这样只使用于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' )。
字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。
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。
追问
用你的方法果然可以了,那如果不是一位数是不是实现不了?
追答
也可以。例如
int a=123456789;
char s[100];
sprintf(s,"%d",a);
puts(s);
这样就把一个数字放到了一个数组里,每一位占一个字节。
关于,sprintf你可以到百度百科看一下。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你想要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'。
是这样吧?
将整型数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]);
这样呢?你是要这个结果么?如果有问题欢迎追问哈
scanf("%d",&a);
b[0][0] = a;
printf("%d\n", b[0][0]);
这样呢?你是要这个结果么?如果有问题欢迎追问哈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char s[5] = { 'a', 'b', 'c', 'd', 'e'};
int a = 3;
s[2] = a + '0';
int a = 3;
s[2] = a + '0';
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询