20175314薛勐 程序设计中临时变量的使用(课下测试,选做)

程序设计中临时变量的使用(课下测试,选做)

要求

  • 定义一个数组:int arr[] = {1,2,3,4,5,6,7,8};
  • 打印原始数组的值:for(int i:arr){System.out.print(i + " "); }
    System.out.println();// 添加代码删除上面数组中的5
    ...
  • 打印出 1 2 3 4 6 7 8 0:for(int i:arr){System.out.print(i + " ");}
    System.out.println();// 添加代码再在4后面5
    ...
  • 打印出 1 2 3 4 5 6 7 8:for(int i:arr){System.out.print(i + " ");}
    System.out.println();

思路

创建两个类用于添加和删除,不改变数组长度的情况下:

  • 从数组中删除元素“5”,后面元素前移:找到该元素的位置,将该位置之后的所有元素前移,将末尾元素赋值为0。
  • 从数组中元素“4”后添加元素“5”,后面元素后移:找到该元素之后元素的位置,将该位置之后的所有元素后移,将找到元素赋值为设定值。

代码

InsectAndDelete

public class InsectAndDelete {
    public static void main(String[] args) {
        int arr[] = {1,2,3,4,5,6,7,8};
        for(int i:arr){
            System.out.printf("%d ",i);
        }
        System.out.println();
        ArrayDelete.Delete(arr,4);
        for(int i:arr){
            System.out.printf("%d ",i);
        }
        System.out.println();
        ArrayInsect.Insect(arr,4,5);
        for(int i:arr){
            System.out.printf("%d ",i);
        }
        System.out.println();
    }
}

ArrayInsect

public class ArrayInsect {
    public static void Insect(int arrs[],int index,int elem) {
        for (int i = arrs.length-2; i >= index; i--) {
            arrs[i+1]=arrs[i];
        }
        arrs[index]=elem;
    }
}

ArrayDelete

public class ArrayDelete {
    public static void  Delete(int arrs[],int index) {
        for (int i = index; i < arrs.length-1; i++) {
            arrs[i]=arrs[i+1];
        }
        arrs[arrs.length-1]=0;
    }
}

测试结果

码云链接

参考资料

原文地址:https://www.cnblogs.com/SANFENs/p/10746258.html

时间: 2024-08-14 14:38:05

20175314薛勐 程序设计中临时变量的使用(课下测试,选做)的相关文章

学号20175313 《程序设计中临时变量的使用》第八周

目录 程序设计中临时变量的使用 一.题目要求 二.运行结果截图 三.遇到的问题及其解决方法 四.代码链接 五.心得体会 程序设计中临时变量的使用 一.题目要求 //定义一个数组,比如 int arr[] = {1,2,3,4,5,6,7,8}; //打印原始数组的值 for(int i:arr){ System.out.print(i + " "); } System.out.println(); // 添加代码删除上面数组中的5 ... //打印出 1 2 3 4 6 7 8 0 f

20175314薛勐 数据结构-排序(选做)

数据结构-排序(选做) 要求 在数据结构和算法中,排序是很重要的操作,要让一个类可以进行排序,有两种方法: 有类的源代码,针对某一成员变量排序,让类实现Comparable接口,调用Collection.sort(List) 没有类的源代码,或者多种排序,新建一个类,实现Comparator接口 调用Collection.sort(List, Compatator) 针对下面的Student类,使用Comparator编程完成以下功能: 在测试类StudentTest中新建学生列表,包括自己和学

c++中临时变量不能作为非const的引用参数

试看下面的代码: #include <iostream> using namespace std; void f(int &a) { cout << "f(" << a  << ") is being called" << endl; } void g(const int &a) { cout << "g(" << a << "

20165305 苏振龙《Java程序设计》第四周课上测试补做

第一次测试 第二次测试 第三次测试 上传代码 第四次测试 总结 之前我一直在git bash进行程序设计,但是对于我来说操作起来有点困难,所以我改用了虚拟机,之后之前一直困扰我的问题在虚拟机下就没有了,而且一些·不要能进行的操作例如"tree","jdb调试"等都可以顺利进行.在上一周的课上试验中因为在用git bash运行代码时总是出现不识别的地方,并且也一直没有很好的解决,在以后的学习中我会多留意一些,看是否能找到解决方法. 原文地址:https://www.c

20165305 苏振龙《Java程序设计》第七&#183;周课上测试补做

第十一章 ?如果想在main()以外独立设计流程,可以撰写类操作java.lang.Runnable接口,流程的进入点是操作在run()方法中. ?如果想要加装主线程,就要创建 Thread 实例,要启动额外的主线程就是调用 Thread 实例的 start() 方法. ?主线程会从main()方法开始执行,直到main()方法结束后停滞JVM.如果主线程中启动了额外线程,默认会等待被启动的所有线程都执行完run()方法才终止JVM.如果一个Thead被表示为Daemon线程,在所有的非Daem

20165305 苏振龙《Java程序设计》第八周课上测试补做

1. 下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECDB,导入world.sql,提交导入成功截图 2. 编写程序,查询世界上超过"你学号前边七位并把最后一位家到最高位,最高位为0时置1"(比如学号20165201,超过3016520:学号20165208,超过1016520)的所有城市列表,提交运行结果截图 3. 编写程序,查询世界上的所有中东国家的总人口 4. 编写程序,查询世界上的平均

不用临时变量,交换两个变量的值

在学习C语言的时候,涉及到两个变量值的交换,其中用到临时变量.类似于:temp=a;a=b;b=temp;这样的语句,如果在没有临时变量的情况下,该如何做呢?网络上的人们给出了两种方法:一.异或法a=a^b;b=b^a;a=a^b;二.加减法a = a + b; b = a - b; a = a - b;其实我们看加减法更容易理解,也有许多人用这种方法,虽然这些方法可能用不到,但是了解下还是有必要的,至少要读懂别人的代码是吧. 其实两个方法都类似,我们没有临时变量,就自己用一个来做临时变量(相当

引用与析构,通过引用减少临时变量

通过引用可以大大减少创建临时变量的次数,从而提高程序运行的效率. 本文探讨创建通过引用减少创建临时变量的次数,与临时变量的生命周期. 测试一:不使用引用并且返回的临时变量不用引用保存. #include <cstdio> #include <iostream> using namespace std; class Point{ private: static int count; int x; public: Point() { printf("constructor c

C语言中不允许创建临时变量,交换两个数的内容

在C语言中可以通过建立临时变量来实现两个变量的交换,当不允许建立临时变量时,应该怎样实现两变量的交换呢? 假设有两个变量num1和num2:下面通过两种方法进行分析. 方法一:利用加减法.具体算法分析如下: 由于num1+num2-num1=num2; num1+num2-num2=num1; 则将num1+num2赋给num1:num1-num2赋给num2:num1-num2赋给num1,这样就可以实现num1和num2两个数内容的交换.通过相同的思想,我们也可以将加减运算改为乘除运算,但此