文档库 最新最全的文档下载
当前位置:文档库 › 第4章 java课后作业_数组

第4章 java课后作业_数组

第4章 java课后作业_数组
第4章 java课后作业_数组

第4张课后作业_数组

知识点:一维数组、二维数组

一、填空及选择:

1.数组元素的小标总是从___0___开始。

2.对于数组int[][]={{1,2,3},{4,5,6}}来说,t.length等于__2____,t[0].length等于___3__。

3.已知数组a的定义为“int a[]={1,2,3,4,5};”,则a[2]=__3__,数组b的定义为“int b[]=new

int[5];”,则b[2]=__ 0___,数组c的定义为“Object [] c=new Object[5];”,则c[2]=_____。

4.调用数组元素时,用__数组名__和__元素下标___来唯一确定数组中的元素。

5.下列___C__语句有错误

A.int [] a;

B.int [] b=new int[10];

C. int []c=new int[];

D.int d[]=null;

6.下列___D__语句有错误

A.int a[][]=new int[5][5];

B.int [][] b=new int[5][5];

C.int []c[]=new int[5][5];

D.int [][]d=new int[5,5];

7.关于下面的程序,正确的结论是___A__

public class Demo1{

public static void main(String [] args){

int a[]=new int[5];

boolean b[]=new boolean[5]; //布尔值自动初始化为false

System.out.println(a[1]);

System.out.println(b[2]);

}

}

A.运行结果为0 false

B.运行结果为1 true

C.程序无法编译

D.可以通过编译但结果不确定

二、编程题:

1.定义一个整数定义的数组,求奇数个数和偶数个数。

2.用20个整数初始化数组,只是输出前10个数。用break控制

3.计算10~20的整数的平方值,将结果保存在一个数组中。

4.编写一个程序使之从键盘读入10个整数存入整型数组a中,然后逆序输出这10个数。

5.某人有5张3分和4张5分的邮票,请编写一个程序,计算由这些邮票中的1张或若

干张可以得到多少不同的邮资。

6.用冒泡法对10个不同的数进行排序(有小到大)

7.设计一程序:

a)使其建立一个二维字符串数组名为javadays,其中每一维分别代表2008年

[月][日],其值为星期几,例如:2008年7月22日星期几可以下列方式取得

javadays[6][21]→星期二,程序最后以随机数方式随机抽今年的10个日子,并显

示星期几。P.S.注意每月的天数不同。

b)请使用replaceAll方法将上一题的「星期二」取代为「Tuesday」,其它以此类推。

8.定义一个长度为10的整型数组,循环输入10个整数。然后再使用循环查找出此数组中的最大及最小值.

参考答案:

import java.util.*;

public class WeekTest {

private String[][] javadays=new String[12][31];

public WeekTest(){

String[] weeks=new String[]{"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};

for(int i=0;i<12;i++){

for(int j=0;j<31;j++){

GregorianCalendar gc=new GregorianCalendar();

gc.setLenient(false);

try{

gc.set(2008,i,j+1);

int week=gc.get(Calendar.DAY_OF_WEEK);

javadays[i][j]=new String(weeks[week-1]);

}catch(Exception e){}

}

}

}

public void randomPrint(){

HashSet hs=new HashSet();

while(true){

if(hs.size()==10)

break;

int day=((int)(Math.random()*1000))%366;

if(hs.contains(new Integer(day)))

continue;

hs.add(new Integer(day));

}

for(Integer day:hs){

GregorianCalendar gc=new GregorianCalendar(2008,0,1);

gc.add(Calendar.DATE,day.intValue());

int month=gc.get(Calendar.MONTH)+1;

int date=gc.get(Calendar.DAY_OF_MONTH);

System.out.println("2008年"+(month<10?"0"+month:month)+"月

"+(date<10?"0"+date:date)+"日\t"+javadays[month-1][date-1]);

}

}

public void replaceAll(){

String[][] weekStr=new String[2][];

weekStr[0]=new String[]{"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};

weekStr[1]=new

String[]{"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" };

for(int i=0;i<12;i++){

for(int j=0;j<31;j++){

for(int k=0;k<7;k++){

if(javadays[i][j]!=null && javadays[i][j].equals(weekStr[0][k]))

javadays[i][j]=new String(weekStr[1][k]);

}

}

}

}

public static void main(String[] args) {

WeekTest wt=new WeekTest();

wt.randomPrint();

wt.replaceAll();

wt.randomPrint();

}

}

C语言练习3(数组)=参考答案

C语言(数组) 一、选择题 1. 设有程序: main() { int i,a[11]; printf("给数组赋值:\n"); for (i=0;i<=10;i++) scanf("%d",( )); ... ... printf("输出数组:\n"); for(i=0;i<=10;i++) printf("%d,",( )); } 则在程序中的两个园括号中分别应填入:C A) &a[i]和&a[i] B) a[i]和&a[i] C) &a[i]和a[i] D) a[i]和a[i] 2. 设已定义:int a[15]; 则数组a占用的内存单元数是( C ). A) 15 B) 16 C) 30 D) 32 3. 阅读程序: main() { int a[2]={0},i,j,k=2; for(i=0;i

return r; } main() { int x,a[]={2,3,4,5,6,7,8,9}; x=f(a,3); printf("%d\n",x); } 以上程序的输出结果是( D ). A) 720 B) 6 C)24 D) 120 5. 以下定义语句中,错误的是( B ). A) int a[ ] = {6,7,8}; B) int n=5, a[n]; C) char a[ ]= "string"; D) char a[5 ]={'0','1','2','3','4'}; 6. 以下描述中正确的是( D ). A) 数组名后面的常量表达式用一对圆括弧括起来 B) 数组下标从1开始 C) 数组下标的数据类型可以是整型或实型 D) 数组名的规定与变量名相同 7. 若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'};指出以下错误语句( AB ). A) scanf("%c",a[0]); B) scanf("%s",&a); C) printf("%c",a[3]); D) printf("%s",a); 8.若定义数组int a[10] ,其最后一个数组元素为( C ). A) a[0] B) a[1] C) a[9] D) a[10] 9. 若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立( B )? A) a[8] 的值为0 B) a[1] 的值为1 C) a[3] 的值为4 D) a[9] 的值为0 10. 指出以下错误语句( A ).

JAVA学生管理系统期末大作业

JA V A学生管理系统大作业 课程名称:JA V A编程基础 题目:学生信息管理系统 专业:计算机软件 班级:计算机软件121班 学号:8000612030 学生姓名:李俊楠 完成人数:1人 起讫日期:第十六周至第十八周 任课教师:龚根华职称:副教授 部分管主任: 完成时间:2015-1-2

目录 ------------------------------2 课题设计内容------------------------------3 程序功能简介 需求分析--------------------------------------------------3 总体设计---------------------------------------------------3 模块详细设计---------------------------------------------------4 数据库设计 ------------------------------5 主体内容 ------------------------------6 心得体会 -----------------------------11 参考书籍 -----------------------------12

一:课题设计内容 学生管理系统 学生信息管理系统是学校管理的重要工具,是学校不可或缺的部分。随着在校大学生人数的不断增加,教务系统的数量也不断的上涨。学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。并且这种传统的方式存在着很多的弊端,如:保密性差、查询不便、效率低,很难维护和更新等。然而,本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。所以如何自动高效地管理信息是这些年来许多人所研究的。 二:程序功能简介 2.1 需求分析 本系统需要实现的功能: (1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。 (2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。 2.2 总体设计 学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。系统总体结构如图所示。 总体结构图 2.3 模块详细设计 1、学生信息管理模块 学生信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图所

第六章数组习题答案

第六章数组习题答案 一、单项选择题 1. C语言中,一维数组下标的最小值是(B )。 A)1 B) 0 C) 视说明语句而定D) 无固定下限 2. 若有定义语句:int a[3][6];,按在内存中的存放顺序,a数组的第10个元素是( B )。A)a[0][4] B) a[1][3] C) a[0][3] D) a[1][4] 3. 设有数组定义:char str[ ]=”China0”,则数组str所占的空间为( D )字节。 A)4个B) 5个C) 6个D) 7个 4. 若有定义语句:char str[ ]=”ab\n\012\\\n”; 则执行语句:printf(“%d”,strlen(str));后,输出结果是( A )。 A)3 B) 4 C) 6 D) 12 5. 下列描述中不正确的是( C )。 A)字符型数组中可以存放字符串 B)可以对字符型数组进行整体输入、输出 C)可以对整型数组进行整体输入、输出 D)不能在赋值语句中通过赋值运算符”=”对字符型数组进行整体赋值 6. 当用户要求输入的字符串中含有空格时,应使用的输入函数是( C )。 A)scanf( ) B)getchar( ) C) gets( ) D) getc( ) 7. 有以下程序 #include main( ) { int i,x[3][2]={0}; for(i=0;i<3;i++) scanf(“%d”,x[i]); printf(“%3d%3d%3d\n”,x[0][0], x[0][1], x[1][0]); } 程序运行后的输出结果是()。 A)2 0 0 B) 2 0 4 C) 2 4 0 D) 2 4 6 8. 有以下程序 #include #include main( ) { char p[20]={‘a’,’b’,’c’,’d’},q[ ]=”abc”,r[ ]=”abcde”; strcpy(p+strlen(q),r); strcat(p,q); printf(“%d %d\n”,sizeof(p),strlen(p)); } 程序运行后的输出结果是( C )。 A)20 9 B) 9 9 C) 20 11 D) 11 11 9. 有以下程序 #include #include main( )

北京工业大学C语言作业9-数组

1.选择法排序 1.1.题目要求: 输入一个正整数n (1表示,括号内为说明) (1)输入:4 <回车>(n=4) 5 1 7 6<回车> 输出:After sorted: 7 6 5 1 (2)输入:5 <回车>(n=5) 5 4 3 2 1 <回车> 输出:After sorted: 5 4 3 2 1 2.在数组中查找指定的元素 2.1.题目要求 输入一个正整数n (1表示,括号内为说明) (1)输入:6<回车>(n=6) 1 3 5 7 9 5<回车> 5<回车>(x=5) 输出:5: a[2] (2)输入:4<回车>(n=4) 1 3 5 7<回车> 2<回车>(x=2) 输出:2: not found 3.输出字符在字符串中所对应的最大下标 3.1.题目要求 输入一个字符,再输入一个以回车结束的字符串(少于80个字符),在字符串中查找该字符,如果找到,输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。 3.2.测试结果(输入结束回车符用<回车>表示) (1)输入:m<回车> (字符'm') programming<回车> (字符串"programming") 输出:index = 7 ('m'在"programming"中对应的最大下标是7) (2)输入:a<回车> (字符'a') 1234<回车> (字符串"1234") 输出:Not Found ("1234"中没有'a')

JavaWeb期末大作业

西安欧亚学院2015—2016学年第二学期考试成绩评定表专业:软件工程课程:Web开发技术(Java)年级:14级

《Web开发技术(Java)》 大作业 姓名: 题目:Web开发技术大作业 专业:软件工程 班级: 日期:

目录 1.JSP开发概述 (1) 1.1.JSP M ODEL1 (1) 1.2.JSP M ODEL2 (1) 1.3.MVC设计模式 (2) 2.JSP MODEL1案例 (4) 2.1功能描述 (4) 2.2C ACULATOR类分析 (4) 2.3JSP页面代码分析 (4) 2.4功能实现 (4) 2.5测试用例设计 (6) 3.JSP MODEL2案例 (7) 3.1功能描述 (7) 3.2MVC架构分析 (7) 3.3M ODEL层类分析 (8) 3.4控制类分析 (8) 3.5V IEW层界面分析 (8) 3.6功能实现 (8) 3.7测试用例设计 (10)

1.JSP开发概述 1.1.JSP Model1 JSP Model 1采用了JSP+JavaBean的技术,将页面显示和业务逻辑分开。其中,JSP实现流程控制和页面显示,JavaBean对象封装数据和业务逻辑。接下来通过一张图来描述JSP Model 1的工作原理,如图1-1所示。 图1-1 JSP Model 1模型的工作原理图 从图1-1中可以看出,JSP Model 1模型将封装数据以及处理数据的业务逻辑的任务交给了JavaBean组件,JSP只负责接受用户请求和调用JavaBean的组件来响应用户的请求,这种设计实现了数据,业务逻辑和页面显示的分离,在一定程度上实现了程序开发的模块化,降低了程序修改和维护的难度。 1.2.JSP Model2 JSP Model 2架构模型采用JSP+Servlet+JavaBean的技术,此技术将原本JSP 页面中的流程控制代码提取出来,封装到Servlet中,从而实现了整个程序页面显示、流程控制和业务逻辑的分离。实际上JSP Model 2模型就是MVC设计模式,其中控制器的角色是由Servlet实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。接下来通过一张图来描述Model 2的工作原理,如图1-2所示。 从图1-2中可以看出,Servlet充当了控制器的角色,它接受用户请求,并实例化JavaBean对象封装数据和对业务逻辑进行处理,然后将调用JSP 页面显示JavaBean中的数据信息。

第7章数组课后作业

1、依次输入五句话,然后将它逆序输出。运行结果如图所示。 提示: 创建一个字符串数组,每句话作为字符串数組的一个元素,然后从该数组的末尾开 始循环输出。 2、某百货商场当日消费积分最高的八名顾客.他们的积分是:18、25、7、36、1 3、2、89、63。编写程序找出最低的积分及它在数组中的原始位置(下标)。 提示: > 创建数组points[],存储八名顾客的积分。 > 定义变量min存储最低枳分,定义变量index存储最低积分下标。 > 假设第一个元素为最低积分,下标为0。 > 遍历数组,将数组元素和min的值进行比较。 3、从键盘输入10个整数,合法值为1、2或3,不是这三个数则为非法数字。试编程统计每个整数和非法数字的个数。运行结果如图所示。

提示: ?创建数组nums[],长度为10,存储用户输入的数字。 ?创建数组count[],长度为4、存储三个合法数字和非法数字的个数。 ?循环输入数字,利用switch判断数字的值、根据不同的值对数组count[]中的不同元素进行累加。 4、假设有一个长度为5的数组,如下所示: int [] array = new int []{1,3,-1,5,2}; 现要创建一个新数组newArray[],要求新数组中的元素与原数组中的元素逆序,并且如果 原数组中的元素值小于0,在新数组中按0存储。试编程输出新数组中的元素,程序运行结果如图: 提示: ?利用循环从原数组最后一个元素(下标为array.length-1)开始处理,如杲该元素的值小于0,利用continue退出本次循环(整型数组中元素默认值为0)。 ?如果该元素值大于0,则将该元素复制到新数组 ?合适的位置。对于原数组下标为i的元素.在新数组中的下标为arrayJength-i-1。 ?处理完成,利用循环输出新数组中的元素 5、有一数列:8, 4, 2, 1, 23, 344, 12。编写程序,让用户输入一个整数,判断该整数在不在该数列中。运行效果如下图所示:

数组课后作业

1、判断一个数组{1,2,3,1,0}中是否存在相同的元素,如果存在相同的元素则输出“重复”,否则输出“不重复”。 2、编写一个程序,求出整数数组中最小元素和最大元素的下标,如果这样的元素个数不止一个,则返回最小的数的下标和最大的数的下标。 3、现在有如下一个数组:int oldArr[]={1,2,5,4,0,0,5,5,0,6,7};要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组newArr[];并输出两个数组中的所有元素值。 4、自己定义两个整型数组a[]和b[],初始化 数组a,循环输入值到数组b,然后将a,b两个数组合并为数组c,按升序(从低到高)排列。并输出数组a,b,c的值。 5、有一个数组,请按从大到小的顺序排好序,然后输入一个数,要求按原来排序的规律将它插入数组中。如:排序后的数组为:54,48,

35,23,21,12,8,4, 插入40,则应插入到48和35之间。 6、编写程序,在5行7列的二维数组中查找第一次出现的负数。 7、编写程序,定义数组int a[4][6],b[4][6],c[4][6],并完成如下操作: (1)从键盘上输入数据给数组a,b; (2)将数组a与数组b各对应元素作比较,如果相等,则数组c的对应元素为0,若前者大于后者,则数组c的对应元素为1;若前者小于后者,则数组c的对应元素为-1; (3)输出数组c各元素的值。 8、读以下程序并注释,并分析运行结果。 (1) #include int main() { int a[10],t,av,sum=0,i,j; for(i=0;i<10;i++) scanf("%d",&a[i]);

数组作业二

1、写一个二分搜索法算法的代码,一个冒泡排序的代码,写一个杨辉三角的代码,并认真理解代码,这个很重要。 2、求二进制[用递归],用递归的方式实现二分搜索法。 3、用java编写程序输出1,2……n这n个自然数,要求用递归算法 4、求阶乘由用户输入一个数,求这个数的阶乘并输出(用两种方式实现,提示:可使用递归的方法) 5、在数组中的某个位置插入一个任意数 题目:已知有一个整型数组,原始长度为6,现在数组中已经放置了5个无素。要求能够根据用户的需求在数组的某个位置插入用户输入的数字。 如图: 6、随机生成50个数字(整数),每个数字的范围是[10,50]统计每个数字出现的次数以及出现次数最多的数字与它的个数,最后将每个数字及其出现次数打印出来,如果某个数字出现次数为0,则不要打印它,打印时按按照数字的升序排列。 7、一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 8、两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。

9、题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大? * 1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数, * 依次类推,推到第一人(10岁),再往回推。 10、求1+2!+3!+...+20!的和. 11、使用所学栈的思想,完成下面的需求: A、首先让用户输入一个字符串,然后在控制台把字符串逆输出来,比如:用户输入world,控制台输出dlrow。 B、让用户输入一个符合某种规则的字符串:此字符串中充许包括一些分隔符,但是必须要保证此字符串中的分隔符是成对出现的,如果不成对,程序显示用户所输入的字符串不符合规则。比如用户所输入的字符串是a{b[c(d)e]}此字符串是符合规则的。但是如果是a{b[c]不是符合规则的,因为前后的分隔符没有相互匹配,并提示是那个分隔符没有匹配项。 请从里面选择1/2的题目做

数组练习题及答案

第五章数组练习题及答案 一、选择题 1、判断字符串a和b是否相等,应当使用() A、if(a==b) B、if(a=b) C、if(strcpy(a,b)) D、if(strcmp(a,b)) 2、以下正确的定义语句是() A、int a[1][4]={1,2,3,4,5}; B、float x[3][]={{1},{2},{3}}; C、long b[2][3]={{1},{1,2},{1,2,3}}; D、double y[][3]={0}; 3、以下各组选项中,均能正确定义二维实型数组a的选项是() A、float a[3][4]; float a[ ][4]; float a[3][ ]={{1},{0}}; B、float a(3,4); float a[3][4]; float a[ ][ ]={{0},{0}}; C、float a[3][4]; static float a[ ][4]={{0},{0}}; auto float a[ ][4]={{0},{0},{0}}; D、float a[3][4]; float a[3][ ]; float a[ ][4]; 4、下面程序的运行结果是() 1—5 DDCBA 6—10 BDABB 11—15 CCCBC 16—20 DDCBB 21—25 BBAAA 26—30 DBDDB #include "stdio.h" main() { char str[]="SSSWLIA",c; int k; for(k=2;((c=str[k])!='\0');k++) { switch(c) {case 'I':++k;break; case 'L':continue; default:putchar(c);continue; } putchar('*'); } } A、SSW* B、SW* C、SW*A D、SW 5、下面程序段是输出两个字符串中对应相等的字符。横线处应填入() char x[]="programming"; char y[]="Fortran"; int i=0; while(x[i]!='\0'&&y[i]!='\0')

南开17春学期《Java语言程序设计》在线作业 免费答案

17秋18春学期《Java语言程序设计》在线作业 一、单选题(共 30 道试题,共 60 分。) 1. 编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为 A. .java B. .class C. .obj D. .exe 正确答案:A 2. 下列代码中,将引起一个编译错误的行是()。 1)public class Test{ 2) int m,n; 3) public Test(){} 4) public Test(int a){m=a;} 5) public static void main(String args[]){ 6) Test t1,t2; 7) int j,k; 8) j=0;k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) } 12) } A. 第3行 B. 第5行 C. 第6行 D. 第10行 正确答案:D 3. 关于以下程序的描述正确的是()。 public class UseArray{ static int arr[] = new int[5]; public static void main(String a[]) { System.out.println(arr[0]); } } A. 编译将产生错误 B. 编译时正确,但运行时将产生错误 C. 正确,输出0 D. 正确,输出?null 正确答案:C 4. 下列叙述中,正确的是()。 A. Java语言的标识符是区分大小写的 B. 源文件名与public类名可以不相同 C. 源文件名其扩展名为.jar D. 源文件中public类的数目不限 正确答案:A 5. int 型 public 成员变量 MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是()。 A. public int MAX_LENGTH=100 B. final int MAX_LENGTH=100 C. public const int MAX_LENGTH=100

vb课后练习答案习题解答 (5)

第5章数组与记录 5.1 填空题 1.若要定义一个包含10个字符串元素,且下界为1的一维数组s,则数组说明语句为()。 答案:Dim s(1 To 10) As String 2.若要定义一个元素为整型数据的二维数组a,且第一维的下标从0到5,第二维下标从-3到6,则数组说明语句为()。 答案:Dim a(0 To 5,-3 To 6) As Integer 3.如果数组元素的下标值为实数,则VB系统会按()进行处理。 答案:四舍五入原则 4.数组元素个数可以改变的数组称为();数组元素可以存放不同类型数据的数组称为()。 答案:可调数组、可变类型数组 5.数组刷新语句用于()。若被刷新的数组是数值数组,则把所有元素置();若被刷新的数组为字符串数组,则把所有元素置()。 答案:清除指定数组内容、0、空字符串 10.控件数组是由一组类型和()相同的控件组成,共享()。 答案:名字、同一个事件过程 11.控件数组中的每一个控件都有唯一的下标,下标值由()属性指定。 答案:Index 12.建立控件数组有两种方法:()和()。 答案:在设计阶段通过相同Name属性值来建立、在程序代码中使用Load方法 5.2 选择题 1.下列一维数组说明语句错误的是()。 a) Dim b(100) AS Double b) Dim b(-5 To 0) AS Byte c) Dim b(-10 To –20) AS Integer d) Dim b(5 To 5) AS String 答案:c 2.若有数组说明语句为:Dim a(-3 To 8),则数组a包含元素的个数是()。 a) 5 b) 8 c) 11 d) 12 答案:d 3.设有数组说明语句:Dim c(1 To 10),则下面表示数组c的元素选项中()是错误的。 a) c(i-1) b) c(5+0.5) c) c(0) d) c(10) 答案:c 4.下列数组说明语句中正确的是()。 a) Dim a(-1 To 5,8)AS String b) Dim a(n,n)AS Integer c) Dim a(0 To 8,5 To –1)AS Single d) Dim a(10,-10)AS Double

C语言数组作业编程题答案

1、请先用记事本创建文件original.txt,往其中写入一组已排好序的整型数,今输入一个整数,要求按原来排序的规律将它插入数中,仍写入文件。例如:原来整数依次为4、6、8、41、56、77、102(数据间的分隔符为空格)。若将42插入数中,则插入后整数依次为4、6、8、41、4 2、56、77、102。 答案: #include #include void main() { int a[100]; int ijnumber; int n; FILE *fp; fp=fopen("e:\\C语言\\original.txt""r"); if(fp==NULL) { printf("open error"); exit(0); }

i=0; while(!feof(fp)) { fscanf(fp"%d"&a[i++]); fgetc(fp); } number=i-1; //number中存最后一个数据的下标 fclose(fp); scanf("%d"&n); //以下的while循环用来找n要放的位置循环结束时正好是a[i]的位置i=0; while(n>a[i]) { i++; } //for循环的功能是将a[i]到最后一个元素全后移一个位置 for(j=number;j>=i;j--) a[j+1]=a[j]; //将n放入找到的位置

a[i]=n; number=number+1; //加入n后,元素个数增1,用来控制向文件中的写入次数 fp=fopen("e:\\C语言\\original.txt""w"); if(fp==NULL) { printf("open error"); exit(0); } //写入数据 for(i=0;i<=number-1;i++) fprintf(fp"%d "a[i]); fprintf(fp"%d"a[i]); //最后一个数据后没有空格 fclose(fp); } 2、假定整型数组中的元素值不重复。今输入一个整数,先查找,如数组中存在此元素,则删除,否则不做操作。例如:原来数组的元素依次为14、6、28、41、96、77、89、102。若将96删除,则删除后数组元素依次为14、6、28、41、77、89、102。 答案:

Java数组练习题(带答案)

一填空题 1)数组的元素通过下标来访问,数组Array的长度为Array.length 。 2)数组复制时,"="将一个数组的引用传递给另一个数组。 3)JVM将数组存储在栈(堆或栈)中。 4)数组的二分查找法运用的前提条件是数组已经排序。 5)Java中数组的下标的数据类型是整型。 6)数组最小的下标是0 。 7)arraycopy()的最后一个参数指明复制元素的个数。 8)向方法传递数组参数时,传递的是数组的引用。 9)数组初始化包括数组的申明,创建和初始化。 10)数组下标访问超出索引范围时抛出数组越界异常 11)浮点型数组的默认值是0.0f 。 12)数组创建后其大小不能改变。 二选择题 1.下面错误的初始化语句是_ABD__ A. char str[]="hello"; B. char str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是_B__ A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0]; 3.下面的二维数组初始化语句中,正确的是____ A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 4.引用数组元素时,数组下标可以是_D___ A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可 5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____ A. 24 B. 25 C. 18 D. 17 6.下列初始化字符数组的语句中,正确的是__B__ A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; C. char str[5]={"hi"}; D. char str[100]=""; 7.数组在Java中储存在 C 中 A. 栈 B. 队列 C. 堆 D. 链表 8.下面程序的运行结果是____ main() { int a[][]={{1,2,3},{4,5,6}}; System.out.printf("%d", a[1][1]); } A. 3 B. 4 C. 5 D. 6 9.下面程序的运行结果是_C___ main() {

[南开大学]20秋学期[1709-2009]《Java语言程序设计》在线作业答案

[南开大学]20秋学期《Java语言程序设计》在线作业特别提醒:本试卷为南开课程辅导资料,请确认是否是您需要的资料在下载!! 一、单选题 (共 25 道试题,共 50 分) 1.测试文件是否存在可以采用如下哪个方法( )。isFile()##isFiles()##exist()##exists() [A.]isFile() [B.]isFiles() [C.]exist() [D.]exists() 提示:本试题难度中等,请复习南开课程相关知识,完成相应作答 【参考答案】:A 2.Java程序的执行过程中用到一套JDK工具,其中jav[A.]exe是指( )。 [A.]Java文档生成器 [B.]Java解释器 [C.]Java编译器 [D.]Java类分解器 提示:本试题难度中等,请复习南开课程相关知识,完成相应作答 【参考答案】:B 3.下列是Java语言中可用的注释符,其中错误的是( )。 [A.]// [B.]/**…*/ [C.]/**…**//*…*/ 提示:本试题难度中等,请复习南开课程相关知识,完成相应作答 【参考答案】:B 4.一个循环一般应包括哪几部分内容() [A.]初始化部分 [B.]循环体部分 [C.]迭代部分和终止部分 [D.]以上都是 提示:本试题难度中等,请复习南开课程相关知识,完成相应作答 【参考答案】:D 5.指出下列哪个方法与方法public void add(int a){ }为错误的重载方法( )。 [A.]public int add(int a) [B.]public void add(long a) [C.]public int add(long a) [D.]public void add(float a) 提示:本试题难度中等,请复习南开课程相关知识,完成相应作答 【参考答案】:A

C++作业(字符数组及函数)

字符数组 1、编写程序,从键盘输入一任意字符串(不包含空格),然后输入所要查找字符。如果存在则输出它在字符串中第一次出现的位置,否则输出NO。 样例输入:Hello a 样例输出:NO 样例输入:Hello l 样例输出:2 #include int main( ) { char str[100],ch; int i,flag=0; cin>>str>>ch; for(i=0;str[i]!=0;i++) if(str[i]==ch){flag=1;break;} if(flag) cout< #include int main( ) { char a[100],b[100]; int i,len=0; cin>>a; len=strlen(a); for(i=0;i #include

一维数组练习题

一维数组练习题 1、以下对一维数组a进行正确初始化的是__________。 A) int a[10]=(0,0,0,0,0); B) int a[10]={ }; C) int a[ ]={0}; D) int a[10]={ 10*2}; 2、以下一维数组a的正确定义是________ 。 A) int a(10); B) int n=10,a[n]; C) int n; D) #define SIZE 10 scanf("%d",&n); int a[SIZE]; int a[n]; 3、执行下面的程序段后,变量k中的值为__________。 int k=3,s[2]; s[0]=k; k=s[1]*10; A) 不定值B) 33 C) 30 D) 10 4、下列程序执行后的输出结果是__________。 main() {int a,b[5]; a=0; b[0]=3; printf("%d,%d\n",b[0],b[1]); } A) 3,0 B) 3 0 C) 0,3 D) 3,不定值 5、已知数组a的赋值情况如下所示,则执行语句a[2]++;后a[1]和a[2]的值 分别是________。 a[0] a[1] a[2] a[3] a[4] ┌──┬──┬──┬──┬──┐ │ 10 │ 20 │ 30 │ 40 │ 50 │ └──┴──┴──┴──┴──┘ A) 20和30 B) 20和31 C) 21和30 D) 21和31 6、以下程序输出a数组中的最小值及其下标,在划线处应填入的是________。main( ) { int i,p=0,a[10]; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=1;i<10;i++) if(a[i]

第七章数组上机作业

第七章数组 通过本章实验作业应达目标 1.学习并掌握一维数组与二维数组的定义、使用及初始化方法。 2.熟练掌握字符数组和字符串的使用方法。 3.掌握数组的一种排序算法。 4.学会用数组保存多个相关的同类数据,并对这一组数据进行各类操作。 本章上交作业 程序7_1.c、7_3.c、7_5.c、7_7.c上传至211.64.135.121/casp。 实验一一维数组的定义和简单应用 【实验目的】 学会定义一维数组,掌握一维数组的遍历操作,掌握在一组数组中求最大值、最小值的方法。 【实验内容】 从键盘读入5个成绩到一个数组中,求其中的最大值,最小值和平均成绩。在屏幕上显示输入成绩的提示信息,用键盘输入一个成绩,接着提示输入下一个,直到结束。以7_1.c命名本程序并上交。 程序运行界面 【实验提示】 求最大(小)值通常用“打擂台”的方法。首先设计两个变量,如max和min分别用来存放最大值和最小值,并将数组的首元素赋给这两个变量,这就是到目前为止的最大(小)值,然后利用循环依次比较其他的元素,总是将当前最大(小)值赋给max和min,直至比较到最后,max和min中的数据就是最大值和最小值。 求平均值还要设置一个变量sum,用来累加各元素的值。 实验二一维数组的排序 【实验目的】 熟练掌握一维数组三种基本排序方法:选择法,冒泡法,比较法。 【实验内容】

从键盘上接收10个成绩,存放到一个一维数组score中,分别利用三种排序方法,将数组从小到大排序并在屏幕上显示排序结果。分别以7_2_1.c、7_2_2.c和7_2_3.c命名三个程序。 【实验提示】 所谓排序是指把一组杂乱无章的数据按照大小顺序排列。 将被排序的n个数据存放在一个数组中, 假如按升序排列。我们将数组定义为a[n],数据存放在a[0] 到 a[n-1] 中。 1.比较排序法 将a[0]与a[1]比较,若a[1]a[1],则二者交换,否则不变,a[1]再与a[2]比较,前者大就交换,…,依次两两比较至到a[n-2]与a[n-1]比较,经过一轮以后,最大者“沉”到了最后,小数往上“冒”,所以得名“冒泡法”。第二轮比较数组的前n-1个,即a[0]~a[n-2] 。重复此过程,直到所有的元素比较完毕。 实验三一维数组元素的调换 【实验目的】 进一步加强对数组的应用。 【实验内容】 找出数组中的最小数和次小数,并把最小数和a[0]中的数对调、次小数和a[1]中的数对调,其余数据位置不变。 例如,程序运行时若输入:2 4 6 11 3 9 7 0 5 8,则输出:0 2 6 11 3 9 7 4 5 8。以7_3.c 命名本程序并上交,部分程序如下。 #define N 10 main()

C语言数组练习及答案

第四部分数组 4. 1 选择题 1.以下关于数组的描述正确的是(c ) 。 A.数组的大小是固定的,但可以有不同的类型的数组元素 B.数组的大小是可变的,但所有数组元素的类型必须相同 C.数组的大小是固定的,所有数组元素的类型必须相同 D.数组的大小是可变的,可以有不同的类型的数组元素 2.以下对一维整型数组a的正确说明是(d )。 a(10); B. int n=10,a[n]; n; D. #define SIZE 10 scanf("%d",&n); int a[SIZE]; int a[n]; 3.在C语言中,引用数组元素时,其数组下标的数据类型允许是(c)。 A.整型常量 B.整型表达式 C.整型常量或整型表达式 D.任何类型的表达式 4.以下对一维数组m进行正确初始化的是(c )。 A.int m[10]=(0,0,0,0) ; B. int m[10]={ }; C. int m[ ]={0}; D. int m[10]={10*2}; 5.若有定义:int bb[ 8] ;。则以下表达式中不能代表数组元bb[1] 的地址的是(c ) 。 A.&bb[0]+1 B. &bb[1] C. &bb[0]++ D. bb+1 6.假定int 类型变量占用两个字节,其有定义:int x[10]={0,2,4}; ,则数组x 在内存中所占字节数是(d ) 。 A. 3 B. 6 C. 10 D. 20 7.若有以下说明: int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g; 则数值为4的表达式是(d ) A.a[g-c] B. a[4] C. a['d'-'c'] D. a['d'-c] 8.以下程序段给数组所有的元素输入数据,请选择正确答案填入(a ) #include<> main() { int a[10],i=0; while(i<10) scanf("%d", _______ );

数组程序设计作业-1

上机作业6 1.输入10个学生的一门课成绩,用一维数组存放其成绩,请输出最高分。 #include void main() { int x[10],i,max; for(i=0;i<10;i++) scanf("%d",&x[i]); for(i=1;i<10;i++) { if(x[i]>max) { max=x[i]; } } printf("the max is:%d\n",max); } 2.定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,统计平均成绩。 #include void main() { int x[10],i; double j,s=0; for(i=0;i<10;i++) scanf("%d",&x[i]);

for(i=0;i<10;i++) { s=s+x[i]; } j=s/10; printf("平均值是%lf\n",j); } 3.输入10个学生的一门课成绩,用一维数组存放其成绩,统计并输出不及格人数及其百分比。 #include void main() { int x[10],i; double j=0,p; for(i=0;i<10;i++) scanf("%d",&x[i]); for(i=0;i<10;i++) { if(x[i]<60) j++; } printf("不及格人数有%.0lf\n",j); p=j/10*100; printf("不及格人数是总数的:%.0lf%%\n",p); }

4.定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,分别统计优、良、中、及格、不及格的人数。 #include void main() { int x[10],i,y=0,l=0,z=0,j=0,b=0; for(i=0;i<10;i++) scanf("%d",&x[i]); for(i=0;i<10;i++) { if(x[i]>=90) { y++; } else if(x[i]<90&&x[i]>=80) { l++; } else if(x[i]<80&&x[i]>=70) { z++; } else if(x[i]<70&&x[i]>=60) { j++; } else { b++; }

相关文档