作业帮 > 体裁作文 > 教育资讯

从键盘上接受一批整数

来源:学生作业帮助网 编辑:作业帮 时间:2024/09/25 13:14:17 体裁作文
从键盘上接受一批整数体裁作文

篇一:编写程序,接收用户从键键盘上输入的三个整数x,y,z..从中选出最大和最小者,并编程实现

编写程序,接收用户从键键盘上输入的三个整数x,y,z..

从中选出最大和最小者,并编程实现

/** 查找最大最小数程序

* 2011.7.21

*/

public class Choice {

public static void main(String[] args){

java.util.Scanner scan = new

java.util.Scanner(System.in); //从键盘输入语句

System.out.println("请输入三个正整数:");

int M1,MAX;

int M2,MIN;

int A=scan.nextInt(); //输入第一个整数

int B=scan.nextInt();

int C=scan.nextInt();

/**调用Math.max/min函数

* 先比较前两个数,再与第三个数比较

*/

M1=Math.max(A, B); M2=Math.min(A, B); MAX=Math.max(M1,C);

MIN=Math.min(M2,C);

System.out.println("最大数:"+MAX);

System.out.println("最小数:"+MIN); }

}

篇二:2013年c语言期末考试题

1、给定n个数据, 求最小值出现的位置(如果最小值 出现多次,求出第一次出现的位置即可)。

最大值 第三行i<=n五行k+1

2、编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。

3、求一批数中最大值和最小值的积。

4、某一正数的值保留2位小数,对第三位进行四舍 五入。

5、从键盘上输入?a href="http://www.zw2.cn/zhuanti/guanyuwozuowen/" target="_blank" class="keylink">我馐凳齲,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10)

z=|x|+20(其他)

6、求出N×M整型数组的最大元素及其所在的行坐标 及列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。

例如:输入的数组为:

1 2 3 4 15 6 12 18 9 10 11 2

求出的最大数为18,行坐标为2,列坐标为1。

7、求一个n位自然数的各位数字的积。(n 是小于10的 自然数)

8、计算n门课程的平均值,计算结果作为函数值返回。 例如:若有5门课程的成绩是:92,76,69,58,88,

则函数的值为76.599998。

9、求一批数中小于平均值的数的个数。

10、编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。

11、请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列 中最大元素,并依次放入pp所指一维数组中。二维

数组中的数已在主函数中赋予。

12、编写函数fun用比较法对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出

排序结果。

13、编写main程序调用函数fact求解从m个元素选n个元

素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则应有容错处理。 说明:函数fact(x)的功能是求x!。

14、找出一批正整数中的最大的偶数。

15、实现两个整数的交换。

例如:给a和b分别输入:60和65,输入为:

a=65 b=60

16、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。

17、求一个四位数的各位数字的立方和。

18、求一组数中大于平均值的数的个数。

例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。

19、对任意输入的 x,用下式计算并输出 y 的值。 5 x<10 y= 0 x=10 -5

x>10

20、求给定正整数m以内的素数之和。 例如:当m=20时,函数值为77。

21、判断整数x是否是同构数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大 于100。

22、用函数求N个[10,60]上的整数中能被5整除的最大

的数,存在则返回这个最大值,如果不存在则返回0。

23、编写函数fun求sum=d+dd+ddd+……+dd...d(n个d), 其中d为1-9的数字。

例如:3+33+333+3333+33333(此时d=3,n=5),d和n在主函 数中输入。

24、编写函数fun将一个数组中的值按逆序存放,并在 main()函数中输出。

例如:原来存顺序为8,6,5,4,1。要求改为:1,4,5,6,8。

25、对长度为8个字符的字符串,将8个字符按降序排列。 例如:原来的字符串为CEAedcab,排序后输出为

edcbaECA

26、根据整型参数n,计算如图公式的值。

27、键盘上输入一个3行3列矩阵的各个元素的值(为整数)然后输出主对角线元素的积,并在fun()函数中输出。

28、编写函数fun(str,i,n),从字符串str中删除第i个 字符开始的连续n个字符(注意:str[0]代表字符串

的第一个字符)。

29、统计出若干个学生的平均成绩,最高分以及得最高 分的人数。

例如:输入10名学生的成绩分别为92,87,68,56,92, 84,67,75,92,66,则输出平均成绩为77.9, 最高分为92,得最高分的人数为3人。

30、编写程序,实现矩阵(3行3列)的转置(即行列互换)

31、用函数实现字符串的复制, 不允许用strcpy()函数。

32、从键盘为一维整型数组输入10个整数,调用fun

函数找出其中最小的数,并在main函数中输出。 请编写fun函数。

33、用do-while语句求1~100的累计和

34、编写函数求1~100中奇数的平方和。结果为

166650

35、计算并输出给定整数的所有因子之积(包括自身)。规定这个整数的值不大于50。

36、求1到100之间的偶数之积

37、编写函数求表达式的和(n的值由主函数输入)。

1-1/2+1/3-1/4+......+1/m

38、产生20个[30,120]上的随机整数放入二维数组

a[5][4]中, 求其中的最小值。

39、能计算从1开始到n的自然数的和,n由键盘输入,

并在main()函数中输出。

当N为偶第三行i=2i=i+2

第四行i*i

41、计算出k以内最大的10个能被13或17整除的自然数之

和。(k〈3000)

42、判断一个整数w的各位数字平方之和能否被5整除,

可以被5整除则返回1,否则返回0。

43、从低位开始取出长整型变量s奇数位上的数,依次 构成一个新数放在t中。

例如:当s中的数为:7654321时,t中的数为:7531。

如果为642,在第二行加,s/=10;

44、求大于lim(lim小于100的整数)并且小于100的所 有素数并放在aa数组中,该函数返回所求出素数的

个数。

45、求一批数中最大值和最小值的差

如为积将-改*

46、求出菲波那契数列的前一项与后一项之比的极限的 近似值。

例如:当误差为0.0001时,函数值为0.618056。

47、将两个两位数的正整数a、b合并形成一个整数放在c 中。合并的方式是: 将a数的十位和个位数依次放在c数 的个位和百位上, b数的十位和个位数依次放在c数的十位 和千位上。例如:当a=45,b=12,调用该函数后,c=2514。

答案;

48、编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。

49、判断m是否为素数

50、给定n个数据, 求最小值出现的位置(如果最小值

出现多次,求出第一次出现的位置即可)。

51、求出二维数组周边元素之和,作为函数值返回。二

维数组的值在主函数中赋予。

52、编写函数实现两个数据的交换,在主函数中输入任

意三个数据,调用函数对这三个数据从大到小排序。

53、编写函数判断一个整数能否同时被3和5整除,若能 则返回值为1,否则为0。调用该函数求出15~300之

间能同时被3和5整除的数的个数。

54、编写函数fun,求任一整数m的n次方

55、从键盘输入一个大于3的整数,调用函数fun判断 其是否素数,然后在main函数中输出相应的结论 信息。例如:7是素数,8不是素数。请编写fun 函数。素数是仅能被1和自身整除的数

56、用辗转相除法求两个整数的最大公约数

57、求一批数中小于平均值的数的个数

58、编写函数用选择排序法对数组中的数据进行从小到

大的排序。

59、从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。

60、将从键盘上输入的每个单词的第一个字母转换为大写

字母,输入时各单词必须用空格隔开,用’.’结束输入

61、编写函数fun求1!+2!+3!+ …… +n!的和,在main函 数中由键盘输入n值,并输出运算结果。请编写fun函数。 例如:若n值为5,则结果为

153

62、根据整型形参m,计算如下公式的值:y=sin(m)*10。 例如:若m=9,则应输出:

4.121185

63、求一个大于10的n位整数的后n-1位的数,并作为函

数值返回。

64、求给定正整数m以内的素数之和。 例如:当m=20时,函数值为77。

65、求给定正整数n以内的素数之积。(n<28)

66、求一个给定字符串中的字母的个数。

68、编写程序, 求矩阵(3行3列)与2的乘积 例如:输入下面的矩阵:

篇三:从键盘输入一个3位整数.doc

从键盘输入一个3位整数,将输出该数的逆序数,例如,输入123,输出321. #include

main()

{ int a,b,c,x,y;

printf("请输入一个3位的正整数:\n") ;

scanf("%d",&x) ;

y=c*100+b*10+a ;

printf("%d:%d\n",x,y) ;

}

篇四:汇编语言程序设计练习题

汇编语言程序设计练习题

一、字符与串处理类

1.逆序输出字符串“BASED ADDRESSING”。

2.试编写一段程序,要求对键盘输入的小写字母用大写字母显示出来。

3.编写程序,从键盘接收一个小写字母,然后找出它的前导字符和后续字符,再按顺序显示这三个字符。

4.从键盘上输入一系列以$为结束符的字符串,然后对其中的非数字字符计数,并显示计数结果。

5.从键盘上输入一串字符(用回车键结束,使用0A号功能调用。)放在STRING中,试编制一个程序测试字符串中是否存在数字。如有,则把CL的第5位置1,否则将该位置置0。

6.从键盘上输入一串字符(用回车键结束,使用0A号功能调用。),将其中的小写英文字母变换为大写英文字母,其他字符保持不变。然后将变换后的字符串显示出来。

7.试编制一个程序:从键盘输入一行字符,要求第一个键入的字符必须是空格符,如不是,则退出程序;如是,则开始接收键入的字符并顺序存放在首地址为buffer的缓冲区中(空格符不存入),直到接收到第二个空格符时退出程序。

8.试编写一段程序,要求比较两个字符串string1和string2所含字符是否相等,如相等则显示“MATCH”, 若不相同则显示“NO MATCH”。

9.试编写一段程序,要求输入两个字符串,如两个字符串相等则显示“MATCH”, 否则显示“NO MATCH”。

10.试编写一段程序,要求在长度为100H字节的数组中,找出大于61H的无符号数的个数并存入字节单元UP中,找出小于2FH的无符号数的个数并存入字节单元DOWN中。

11.在内存区域0B800:0000-0B800:0FFFF(都是16进制数)内查找首地址为SOURCE的串(SOURCE的首字节为串长度),如果找到,则把AL的第0位置0,否则将该位置置1。

12.已知数组A包含15个互不相等的整数,数组B包含20个互不相等的整数。试编制一个程序,把既在A中又在B中出现的整数存放于数组C中。

13.在附加段中,有一个首地址为LIST和未经排序的字数组。在数组的第一个字中,存放着该数组的长度,数组的首地址已存放在DI寄存器中,AX寄存器中存放着一个数。要求编制一个程序:在数组中查找该数,如果找到此数,则把它从数组中删除。

二、数字输入输出类

1. 试编制一个程序,把BX寄存器内的二进制数以十六进制数的形式在屏幕上显示出来。

2. 试编制一个程序,把BX寄存器内的二进制数以八进制数的形式在屏幕上显示出来。

3. 试编制一个程序,把BX寄存器内的二进制数以十进制数的形式在屏幕上显示出来。

4.从键盘上输入2个一位数,求出它们的和(假设和不超过1位)。

5.试编写一段程序,从键盘接收一个四位的十六进制数,并在终端上显示与它等值的二进制数。

6.试编写一段程序,从键盘接收一个0-65535间的十进制无符号数,并在终端上显示与它等值的二进制数。

7.试编写一段程序,从键盘接收一个-32768-32767间的十进制有符号数,并在终端上显示与它等值的二进制数。

8.编写一个程序,从键盘输入一个0~65535之间的10进制无符号数,然后以16进制

和四进制数形式显示出所输入的数。

9.编写一个程序,从键盘输入一个不长于8位的四进制数,并将所输入的数以10进制数形式显示出来。

10.从键盘上接收一个有符号的十进制数,然后在下一行用十进制输出此有符号数。

三、数值处理类

1.编写程序,将一个包含有20个数据的数组M分成2个数组:正数数组P和负数数组N,并分别把这两个数组中数据的个数显示出来。

2.试编写一个程序,求出首地址为DATA的100D字数组中的最小偶数,并把它存放在AX中。

3.有一个首地址为mem的100个字的数组,试编制程序删除数组中所有为零的项,并将后续项向前压缩,最后将数组的剩余部分补上零。

4.设在A、B和C单元中分别存放着3个数。若3个数都不是0,则求出三个数的和并存放在S单元中;若其中有一个数为0,则把其他两个单元也清零。请编写此程序。

5.试编写一个程序,要求比较数组ARRAY中的三个16位补码数,并根据比较结果在终端上显示如下信息:

①如果三个数都不相等则显示0;

②如果三个数有两个相等则显示1;

③如果三个数都相等则显示2。

6.从键盘输入一系列字符(以回车符结束),并按字母、数字及其他字符分类计数,最后显示这三类的计数结果。

7.已定义了两个整数变量A和B,试编写程序完成下列功能:

①若两个数种有一个是奇数,则将奇数存入A中,偶数存入B中;

②若两个数均为奇数,则将两数均加1后存回原变量;

③若两个数均为偶数,则两个变量均不改变。

8.在首地址为DATA的字数组中,存放了100H个16位无符号数,试编写一个程序,求出它们的平均值放在AX寄存器中;并求出数组中有多少个数小于此平均值,将结果放在BX寄存器中。(注意,分别考虑这些数据的累加和始终在0-65535之间和超出65535的情况)

9.已知在首地址为DATA的字数组中存放一系列有符号数(首元素为数据个数),试编写一个程序求出它们的平均值放在变量AVER中,并求出数组中有多少个数大于该平均值,将大于平均值的元素个数保存在变量COUNT中。(注意,分别考虑这些数据的累加和始终在-32768-32767之间和超出-32768-32767之外)。

10.编写一个程序,将一个包含有30个字数据的数组M分成两个数组:奇数数组ODD和偶数数组EVEN,并把这两个数组中元素的个数以二进制形式显示出来(不能使用DIV/IDIV指令)。

11.在附加段中,有一个按从小到大的顺序排列的无符号数数组,其首地址存放在DI寄存器中,数组中的第一个单元存放着数组长度。在AX中有一个无符号数,要求在数组中查找(AX),如找到,则使CF=0,并在SI中给出该元素在数组中的偏移地址;如未找到,则使CF=1。

12. 在附加段中有一个字数组,其首地址已存放在DI寄存器中,在数组的第一个字中存放着该数组的长度。要求编制一个程序使该数组中的数按照从小到大的次序排列整齐。(分别使用起泡排序算法、选择排序算法、插入排序算法)。

13.在ADDR单元中存放着数Y的地址,试编制一个程序把Y中1的个数存入COUNT单元中。

49. 编写一个程序,计算 1 + 2 + 3 + 4 + ? + N的累加和,并把累加和与10进制形式显示出来。(不能使用公式计算“累加和=N×(N+1)/2”,必须使用程序实现循环累加来计

算)。

四、I/O与文件类

1.CMOS RAM是微机主板上的一块可读写的RAM芯片,用来保存当前系统的硬件配置和用户对某些参数的设定。CMOS可由主板的电池供电,即使系统掉电,信息也不会丢失。 CMOS RAM本身只是一块存储器,只有数据保存功能,而对CMOS中各项参数的设定要通过专门的程序。开机时可以通过按某个键键入CMOS参数设置。我们可以通过端口70H/71H访问CMOS RAM。 70H为地址端口,存放要访问的CMOS RAM单元的地址;

71H为数据端口,存放从选定的单元中读取的数据,或要写入到其中的数据。 读写CMOS RAM前,要判断端口0AH的位7,该位位1时表示石时钟正在计时,需等待该位为0时才能读写。下面是CMOS RAM的部分单元存储数据的含义(BCD码)。

字节位移量 存放数据意义

00h 目前系统时间的“秒数”字段 01h 预约警铃时间的“秒数”字段 02h 目前系统时间的“分钟”字段 03h 预约警铃时间的“分钟”字段 04h 目前系统时间的“小时”字段 05h 预约警铃时间的“小时”字段 06h 星期几(星期一=01,星期二=02,依次类推) 07h 目前系统日期字段(0~31) 08h 目前系统?a href="http://www.zw2.cn/zhuanti/guanyuluzuowen/" target="_blank" class="keylink">路葑侄危?~12) 09h 系统公元纪年的后两位(00~99;00=2000,01=2001,以此类推)

试编写一个程序,实现当前日期、时间。

2.某个计算机的打印机适配器有3个8位的端口(寄存器),其数据寄存器地址是378H,状态寄存器地址是379H,控制寄存器地址是37AH。这些寄存器主要位的含义是: ①控制寄存器。CPU控制打印机工作

位0:选通信号。正常工作室该位为0,当已将数据发送到数据寄存器后,应将该位置为1,以通知打印机从数据寄存器取出数据。置1后需要马上置0。

位1:自动换行。置1后,打印机每遇到回车就自动走纸1行;置0后,需要向打印机送出换行符控制走纸。

位2:初始化。

从键盘上接受一批整数

位3:联机。置1将设置打印机的联机方式,只有在1方式下打印机才能正常工作。 其它位,暂不用。

②状态寄存器。适配器向CPU报告打印机的状态

位3:0=打印机出错;1=打印机可用。

位4:0=打印机脱机;1=打印机联机。

位5:0=打印机有纸;1=打印机无纸。

位7:0=打印机忙;1=打印机空闲。

其它位,暂不用。

试编一个程序,将内存STRING为首地址的字符串在打印机上打印出来(字符串以ASCII 0为结束标志)。

3.某计算机端口地址600H的是8位寄存器,其位0~6分别控制数码管显示中各段D0~D6的亮(1)和灭(0),七段数码管的各段编号为:

D0

D1 D2

试编写一个过程,将AL保存的一位10进制数以数码管显示出来(如AL的值为3,则D0、D1、D2、D3、D6亮,D4、D5灭)。

4.编写一个程序,新建一个文件:d:\abc.txt,从键盘输入文件的内容(不超过100个字符)。然后新建一个文件:d:\def.txt,将d:\abc.txt文件的内容复制到d:\def.txt。

5.在D盘根目录建立一个文件abc.txt,第1次向文件中写入“123456”六个字符,第2次增加“abcdefg”几个字符。

6.从键盘上输入文本文件:”d:temp1.txt”的内容,然后新建一个文件d:\temp2.txt, 把文件d:temp1.txt中的所有内容复制到文件:\temp2.ini中。

7.将内存单元0A00H:0000开始的32KB内存保存到文件A32K.BIN中。

8.从键盘上输入10个人名,然后把它们按照升序的顺序排序。

五、子程序类

1.写一段子程序SKIPLINES,完成输出空行的功能。空行的行数由用户在主程序中通过键盘输入,并将行数放在AX寄存器中。

2.设有10个学生的成绩分别是76,69,84,90,73,88,99,63,100和80分。试编制一个子程序统计60-69分,70-79分,80-89分,90-99分和100分的人数,并分别放到S6,S7,S8,S9和S10单元中。

3.编写子程序嵌套结构的程序,把整数分别用二进制和八进制形式显示出来。

4.主程序BANDO:把整数字变量VAL1存入堆栈,并调用子程序PAIRS;子程序PAIRS:从堆栈中取出VAL1,调用二进制显示程序OUTBIN显示出与其等效的二进制数,输出8个空格;调用八进制显示程序OUTOCT显示出与其等效的八进制数,调用输出回车及换行符的子程序。

5.主程序MAIN和过程PROADD在同一源文件中,要求分别使用变量名、地址表、堆栈传送参数的方法,用过程PROADD累加数组中的所有元素,并把和(不考虑溢出的可能性)送到指定的存储单元SUM中去。

6.从键盘上取得一个十进制数,然后把该数用十六进制的形式显示出来。要求子程序用寄存器参数传送的方法。

7.使用跳跃表法,根据AL寄存器中哪一位位1(从低位到高位)把程序转移到8个不同的子程序分支去。子程序0-7分别显示数字0-7。

7.在数据区中有10个不同的信息,编号为0-9,每个信息包括30个字符。现在要求编制一个程序:从键盘上接收0-9之间的一个编号,然后在屏幕上显示出相应的信息内容。

六、综合类

1.根据欧几里德辗转相除法求两个正整数M、N的最大公约数R。

2.简化的歌德巴赫猜想:任何一个大于6的偶数均可以表示为两个素数之和。现从键盘输入一个0~65535之间的无符号整数,试验证歌德巴赫猜想。

如输入数12,输出:

12=5+7

如输入数20,输出:

20=3+17

20=7+13

如输入数7,输出:

Must be even

如输入数3,输出:

Must be greater than or equal to 6

3.用减奇数次数的方法,求一个数的近似平方根,这个平方根是一个整数。如求17的平方根,可以用17相继减去奇数1、3、5、7、?,当结果为负数时停止,即:

17-1-3-5-7-9<0

可以看出,17在减去5次奇数后结果变为负数,可以近似认为17的平方根在4与5之间,计算NUM的平方根,如果NUM=17,则ANS中保存结果4。

4.以下面形式定义一个长整数,其所占用字节数由N得到,比如128位的数5746352413DE89674523BC9A78563412H定义成:

NUM DB 12H,34H,56H,78H,9AH,0BCH,23H,45H

DB 67H,89H,0DEH,13H,24H,35H,46H,57H

N DB $-NUM

试编写一个程序,实现对N字节的NUM的值求补,并把求补后的值仍保存在NUM中。

5.根据《中华人民共和国国家标准GB 11643-1999》中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。顺序码的奇数分给男性,偶数分给女性。校验码是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。

下面介绍计算校验码的算法:

先引入公式: (右边最低位为第1位,左边最高位为第18位

)

有了Wi值表后,可以简化S的计算过程,得出S后计算余数Y,Y的计算公式为:Y = mod(S,

11),再根据下表找出 Y 对应的校验码即为要求身份证号码的校验码C。

编写一个程序,完成从键盘上输入一个17位的身份证号(身份证号的前17位,即上面描述中的第18位至第2位),通过计算补充第1位后,将完整的身份证号显示出来。

篇五:由键盘输入10个整数,求其最大值和最小值

/*

由键盘输入10个整数, 求其最大值和最小值 */

# include

# define N 10

main()

{

int x[N], i, max, min;

for(i=0;i

scanf("%d",&x[i]);

max=min=x[0];

for(i=1;i

{

if(max < x[i]) max=x[i]; if(min > x[i]) min=x[i]; }

printf("最大值为%d\n",max);

printf("最小值为%d\n",min);

}

体裁作文