c语言数组问题
c语言开辟数组,如果里面存的是整数,那么没有复制之前,数组中默认的值为零,还是乱码。如果存的是字符值有事什么情况呢?比如一维数组中的数据是2234456667,789,找...
c语言开辟数组,如果里面存的是整数,那么没有复制之前,数组中默认的值为零,还是乱码。如果存的是字符值有事什么情况呢?
比如一维数组中的数据是2234456667,789,找出其中不同的数23456789,覆盖给原数组,那么原数组下标为8到之后后的值还存不存在? 展开
比如一维数组中的数据是2234456667,789,找出其中不同的数23456789,覆盖给原数组,那么原数组下标为8到之后后的值还存不存在? 展开
展开全部
问一:c语言开辟数组,如果里面存的是整数,那么没有复制之前,数组中默认的值为零,还是乱码。
答:C语言声明数组变量时,只分配相应的空间和地址,而不对里面存放的数据初始化。不管是int、float、还是char型等,即里面存的无论是整数、小数还是字符,再没有复赋值之前,数组中默认的值都是乱码,而不是0(或其他已知的数字、字母或其他字符)。
问二:如果存的是字符值有事什么情况呢?
答:也是乱码。
问三:比如一维数组中的数据是2234456667,789,找出其中不同的数23456789,覆盖给原数组,那么原数组下标为8到之后后的值还存不存在?
答:没太看明白你想说什么。这就要看看你把新数据(元素)存放在哪儿了,已经被新覆盖的元素比如前8个元素,其旧值已经不存在了,只要没有覆盖的元素比如8个以后的元素,其旧值仍然存在。
是不是这样子?如还有问题请留言。
答:C语言声明数组变量时,只分配相应的空间和地址,而不对里面存放的数据初始化。不管是int、float、还是char型等,即里面存的无论是整数、小数还是字符,再没有复赋值之前,数组中默认的值都是乱码,而不是0(或其他已知的数字、字母或其他字符)。
问二:如果存的是字符值有事什么情况呢?
答:也是乱码。
问三:比如一维数组中的数据是2234456667,789,找出其中不同的数23456789,覆盖给原数组,那么原数组下标为8到之后后的值还存不存在?
答:没太看明白你想说什么。这就要看看你把新数据(元素)存放在哪儿了,已经被新覆盖的元素比如前8个元素,其旧值已经不存在了,只要没有覆盖的元素比如8个以后的元素,其旧值仍然存在。
是不是这样子?如还有问题请留言。
追问
原题大概就是,一维数组中的数据是2234456667789,删去其中相同的数,结果是23456789,写过程的时候把得来的值覆盖给原数组,那么原数组下标为8到之后后的值还存不存在?结果是2345678967789还是234567899,需不需要给0?
追答
是这样啊!
题目要求覆盖原数组,那么即使保留,也是一个残缺不全的原数组,而且会影响新数组,新数组多了一些无用的尾巴,所以,建议后面的值不用要了,像你说的,最后给一个0,让结果是23456789就好了!
展开全部
#include
<stdio.h>
void
select(int
ai[],
int
number)
/*折半查找,在数组ai中查找是否有number这个数*/
{
int
lowe
=
0,
high
=
14,
mid
=
(high
+
lowe)
/
2;
while
(lowe
<=
high)
{
if
(ai[mid]
==
number)
{
printf("%d\n",
mid);
return;
}
else
if
(ai[mid]
<
number)
{
lowe
=
mid+1;
}
else
{
high
=
mid-1;
}
mid
=
(lowe
+
high)
/
2;
}
printf("无此数\n");
}
main()
{
int
ai[15]
=
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
/*数组中的数字可以随意设置*/
select(ai,
29);
/*在ai数组中查找是否有29这个数*/
getch();
}
<stdio.h>
void
select(int
ai[],
int
number)
/*折半查找,在数组ai中查找是否有number这个数*/
{
int
lowe
=
0,
high
=
14,
mid
=
(high
+
lowe)
/
2;
while
(lowe
<=
high)
{
if
(ai[mid]
==
number)
{
printf("%d\n",
mid);
return;
}
else
if
(ai[mid]
<
number)
{
lowe
=
mid+1;
}
else
{
high
=
mid-1;
}
mid
=
(lowe
+
high)
/
2;
}
printf("无此数\n");
}
main()
{
int
ai[15]
=
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
/*数组中的数字可以随意设置*/
select(ai,
29);
/*在ai数组中查找是否有29这个数*/
getch();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有学过编程的话,有点困难,但只要认真学就一定能学会。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言的数组概念的学习,通过for循环输出打印数组
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询