求解 :C语言中 怎么把数组元素赋值为空字符?谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求解 :C语言中 怎么把数组元素赋值为空字符?谢谢相关的知识,希望对你有一定的参考价值。

如a[6][7] a[0][0]至a[5][4]都已经定义为整数后 怎么将a[5][5]赋值为空字符 ?
#include<stdio.h>
#include<stdlib.h>

main()

char a1[6][7];
int i,j,k=1;
printf(" \t \t \t mon\n");
printf(" 7\t 1\t 2\t 3\t 4\t 5\t 5\t\n");
if(k<=31)

for(i=0;i<=5;i++)
for(j=0;j<=6;j++)
a1[i][j]=k;
k++;



for(i=0;i<=5;i++)
for(j=0;j<=6;j++)
printf(" %d\t",a1[i][j]);

printf("\n");

system("pause");


就这个源代码来说 输出的是
mon
7 1 2 3 4 5 6
1 2 3 4 5 6 7
8 9 10 11 12 13
14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 32 33
34 34 .......................
..............................42
想让31后面的都为空 怎么办 谢谢啊

初始化数组时候,编译器会自动按照二维数组大小来进行赋值,其余数字直接就为0

比如如下例子

追问

谢谢啊 你帮我看看我问题的补充呗

追答

for(i=0;i<=5;i++)
for(j=0;j<=6;j++)

if(a[i][j]<=31)
printf(" %d\t",a1[i][j]);

printf("\n");

system("pause");

参考技术A 数组在程序运行的时候,会申请内存空间,要是不定义赋值的话,会是随机数

一般来说要是用,可以不用管,在利用的时候,避开就可以,如循环中,把条件设置在用不到这个地方就可以
要是在条件设置无法避开的话,可以初始化为一个你用不到的数据,如赋值为零,判断要是零的话跳过追问

谢谢啊 能帮我看看问题的补充吗

追答

初始化的时候,在35-41之间赋值为零,打印的时候判断一下,如果是零,就打印空格好了

参考技术B 空格的ASCII是32,因此直接赋值32给这个数组元素,就可。 参考技术C C语言中可以在数组初始化时赋值,操作方法如下:
int a[10] = 0 ;

js定义数组赋值时有超长字符串

参考技术A 存在报错

javascript是有一定的长度限制的,当数组赋值的字符串过长的时候,就有可能会报错。
解决的办法有:

1. 把数组的赋值分成多个引用,使用拼接来完成;

2. 把超长的字符串分割,分成多个字符串后单独作为数组元素;

3. 将超长字符串写入文件,从文件中读取赋值给数组。
参考技术B 使用ES6的新特性,在js定义数组赋值时可以使用字符串拼接的方式,将超长字符串分割成多个小字符串,再拼接到数组中。
例如:
let str = 'ABCDEFG';
let arr = [str.substr(0, 3), str.substr(3, 3), str.substr(6, 3)];
console.log(arr); // ["ABC", "DEF", "G"]

以上是关于求解 :C语言中 怎么把数组元素赋值为空字符?谢谢的主要内容,如果未能解决你的问题,请参考以下文章

在c语言中怎么把字符数组转换为字符串

c语言怎么把二维数组的字符串给到一维数组?

C语言 怎么把字符数组中的字符赋值给字符变量

C语言中怎么把一维数组赋给另外一个一维数组

C语言中怎么把一维数组初始化都为0,

C语言程序问题,数组元素无法赋值?请大家帮忙看看