![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言程序设计
文章平均质量分 51
只会搬运的程序猿
这个作者很懒,什么都没留下…
展开
-
将数组由大到小依次排列
用空白符结尾时,scanf会跳过空白符去读下一个字符,scanf在之前只读了10个数给数组初始化,后面必须多读一个数来作为结束信号,所以你必须再输入一个数。//因为a[j+1]>a[j]所以将其换到前面,使a数组前面的值最大。//交换的是数组的值,而不是数组下标。//大到小排列(大的放前面,小的放后面)scanf("%d\n",&a[i]);也会出现同样的问题。printf("请输入:\n");删掉空白符或\n即可。原创 2023-06-09 18:55:28 · 105 阅读 · 1 评论 -
改变数组中元素的值,实参和形参的对应关系有以下4中情况
设p为指针变量,令p=&arr[0](与p=arr等价)p指针变量为实参,x为数组名为形参,则函数调用时将p的值传给形参数组名x,也就是使其取得arr数组的首元素的地址,使x数组和arr数组共用一段内存单元。与p=arr同个意思,也可以这样子写int *p=arr[0];先使实参指针变量指向arr数组的首地址,然后将实参的值传给形参,通过指针变量值得改变可以使其指向数组的每个元素。//a[ ]与arr[ ]具有相同的内存单元,即a[0]→arr[0]的值相等。//p变量对应a[0]的值。原创 2023-04-13 23:09:50 · 484 阅读 · 2 评论