2016 - 2024

感恩一路有你

c语言基础 C语言,可变长数组?

浏览量:1363 时间:2021-03-11 13:26:55 作者:admin

C语言,可变长数组?

我不会看冒泡排序的算法部分。我直接告诉你,你不知道错误的原因。你的第一种写作方式:int n=1,a[n],I=0,j=0,k=0。这里定义了n=1,在这一行中还定义了[n]。然后编译器将在这里直接为序列a分配内存。也就是说,确定阵列A的大小,即1。我不知道你是否学会了内存分配。我给你一个简短的解释。您可以在线搜索详细信息。例如,一个具有五种整数类型的数组可以定义为[5],但也可以按如下方式获得:int*a=(int*)malloc(sizeof(int)*5)也就是说,我们将内存分配给一个指针以获得一个数组。[5]的定义还要求编译器在编译程序时分配内存。编译器将根据您的代码优化您的程序,并将代码转换为汇编代码。另外,机器代码说得太多了。我将继续分析修改后的代码int n=1,I=0,j=0,K=0printf(“please input the length of the array:”)scanf(%d“,&n)int a[n];//此时,由于您在声明数组之前读入了n,因此a是根据您输入的数字确定的数组大小。你知道我的意思吗?

C语言编写一个函数排序调用?

Bubble method

void Bubble(int a[,int len)

{

int i,J,temp

for(i=0I< len-1I)

{

for(J=len-1J> ij--

if(a[J]< a[J-1])

{

temp=a[J-1

]a[J

]a[J]=temp

}}

c语言基础 c语言教程 c语言i++和++i

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。