A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

把int arr[]={65,66,67,78}转换成一个字符数组

9 个回复

倒序浏览
#include<stdio.h>
int main() {
    //声明整型数组及字符数组
    int arr[] = {65,66,67,68};
    char ch[12];
    //一个数由两个数组组成,对整型数组的元素进行拆分,然后加上48的ASCII表就成了对应的字符的数子字符
    //使用for循环分别进行拆分,从字符数组低位开始赋值
    int shi_wei = 0,ge_wei = 0;
    int index = 0;
    for (int i = 0;i < 4;i++) {
        shi_wei = arr[i] / 10;
        ch[index] = shi_wei + 48;
        index++;
        ge_wei = arr[i] % 10;
        ch[index] = ge_wei + 48;
        index++;
        if(i == 3) {
            break;
        }
        ch[index] =',';
        index++;
    }
    //打印组合后的字符数组
    printf("%s\n",ch);
    return 0;
}
回复 使用道具 举报 1 0
草  太简单了啊
回复 使用道具 举报
可以考虑用sprint
回复 使用道具 举报
   可以试试sprintf
回复 使用道具 举报
直接%C打印就可以啊
回复 使用道具 举报
遍历数组,然后定义一个char类型的数组来接收就可以了
回复 使用道具 举报
对呀,%c打印不可以么?
回复 使用道具 举报
先定义一个字符数组,用异或或者中间变量temp交换对应元素的值
回复 使用道具 举报
好像可以强转吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马