logo
预览版
标准版
您当前访问的是 喵宅苑 MewoGarden × 技术宅II 预览版网页,若要正常使用功能请戳我前往标准版
帖子对应的标准版页面请点击帖子下方[→标准版]按钮
橴陽花桾__

本帖最后由 橴陽花桾__ 于 2012-12-5 19:11 编辑

题目:在一个升序数组中插入一个数后,保证该数组仍然升序。程序首先判断此数是否大于最后一位数,然后再考虑插入中间的数的情况,插入后次元素之后的数依次后移一位。

#include<stdio.h>

#define N 10

【查看更多内容请登录哈】

绯色の人形

本帖最后由 绯色の人形 于 2012-12-5 13:17 编辑

橴陽花桾__ 发表于 2012-12-5 12:31 【链接登录后可见】

- - 可是习题只能改红字部分

红字部分a[i+1] = a[ i ]; 不就行了

就行了啊

为什么要两行?

橴陽花桾__

绯色の人形 发表于 2012-12-4 20:38 【链接登录后可见】

假设你要插入的位置是m好了

for (int i = N-1; i > m; i--)

a = a;

- - 可是习题只能改红字部分

小白棉花糖

橴陽花桾__ 发表于 2012-12-4 18:46 【链接登录后可见】

交换位置至少需要3行,但是可以不用临时变量,+-也可以换成异或:

a = a + b;

b = a - b;

a和b只是举例。

绯色の人形

橴陽花桾__ 发表于 2012-12-4 20:34 【链接登录后可见】

我的意思是 在a后移一位这个操作能否两个指令就可以完成

假设你要插入的位置是m好了

for (int i = N-1; i > m; i--)

a = a[i-1];

a = M;

这样就行了

橴陽花桾__

绯色の人形 发表于 2012-12-4 20:32 【链接登录后可见】

[mw_shl_code=c,true]#include

#define N 10

main()

我的意思是 在a后移一位这个操作能否两个指令就可以完成

绯色の人形

[mw_shl_code=c,true]#include<stdio.h>

#define N 10

main()

{

int a={12,34,55,76,98,123,135,152,187,198};

int M,i,t;

printf("Please iuput insert nu

【查看更多内容请登录哈】

foodszhu

少侠你的a总是看不见捏。。。

不需要换位,只需要移位,最后一次会把多出的那位覆盖掉

a[i+1]=a就够了。。。

比如1,24,8,16,如果插入7,第一次变成1,2,4,8,16,16,第二次,1,2,4,8,8,16,第三次1,2,4,7,8,16

橴陽花桾__

小白棉花糖 发表于 2012-12-4 18:38 【链接登录后可见】

[mw_shl_code=c,true]#include

#define N 10

main()

交换位置至少需要3行,但是可以不用临时变量,+-也可以换成异或:

a = a + b;

b = a - b;

【查看更多内容请登录哈】

橴陽花桾__

小白棉花糖 发表于 2012-12-4 18:38 【链接登录后可见】

[mw_shl_code=c,true]#include

#define N 10

main()

下面临时变量打漏了

小白棉花糖

[mw_shl_code=c,true]#include<stdio.h>

#define N 10

main()

{

int a={12,34,55,76,98,123,135,152,187,198};

int M,i,t;

printf("Please iuput insert nu

【查看更多内容请登录哈】

橴陽花桾__

小白棉花糖 发表于 2012-12-4 18:20 【链接登录后可见】

你的代码问题很多。a是一个数组,数组名是指向数组首地址的指针,你怎么能够用M和a比较?而且还用for循环打 ...

- - !大哥你把else后面的看漏了

橴陽花桾__

小白棉花糖 发表于 2012-12-4 18:20 【链接登录后可见】

你的代码问题很多。a是一个数组,数组名是指向数组首地址的指针,你怎么能够用M和a比较?而且还用for循环打 ...

- - !大哥你把else后面的看漏了

小白棉花糖

你的代码问题很多。a是一个数组,数组名是指向数组首地址的指针,你怎么能够用M和a比较?而且还用for循环打印a。你好歹加个下标。。

而且你红字里面就没M呀。。

橴陽花桾__

没糖给你了 发表于 2012-12-4 16:42 【链接登录后可见】

两数值互换,需要中间变量······

T T 练习那里只有两个空格 我狠是无语

没糖给你了

两数值互换,需要中间变量······