程序设计1
- 格式:doc
- 大小:403.50 KB
- 文档页数:48
《Java语言程序设计(一)》复习资料Java语言是目前使用最为广泛的网络编程语言之一;具有面向对象;与平台无关性;多线程性;动态性等特点。
Java运算符按功能分6种,具体如下:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、条件运算符。
结构化程序设计有顺序、分支、循环三种基本流程;java中的分支语句包括if语句、switch 语句;循环语句包括while语句、do-while语句、for语句;其他如对象、变量定义语句、赋值语句、方法调用语句等都是顺序语句。
Java中逻辑型用boolean表示;字符型用char表示;整型共有4种分别是byte(字节型)、short(短整型)、long(长整型)、int(普通整型);浮点型共两种float和double。
创建线程可以通过继承线程类Thread创建线程类;建立一个实现Runnable接口的类来运行线程。
用abstract修饰的类不能创建对象,必须产生子类,有子类创建对象;用abstract修饰的方法只允许声明,而不允许实现;如果一个类是一个abstract类的子类,它必须实现父类的abstract方法。
在类的方法的定义之前,加上修饰字public和加上修饰字private是不同的。
Public修饰的方法为公用方法,任何类的方法都可以访问他;Private修饰的方法,本类内部可以访问。
在面向对象系统中,类是对一组相同对象的描述,类概括了同类对象的共有性质:数据和方法。
对象是类的一个实例。
一个java应用程序必须且只有一个类含有main方法,这个类称为应用程序的主类,其main方法必须被说明为public static void;一个Java Applet小应用程序不再需要main方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。
"编程语言的四个发展阶段(1)面向机器语言(2)面向过程语言(3)结构化程序设计阶段(4)面向对象编程。
c语言程序设计第一章试题及答案一、选择题(每题2分,共10分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中合法的变量名?A. _123abcB. intC. forD. myVar答案:C3. 在C语言中,用于声明一个整型变量的关键字是:A. intB. floatC. charD. double答案:A4. 下列哪个选项是C语言中的控制语句?A. printfB. scanfC. ifD. return答案:C5. C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:D二、填空题(每题2分,共10分)1. C语言中,用于输入一个整数的函数是________。
答案:scanf2. 在C语言中,定义一个数组时,数组的下标从________开始。
答案:03. C语言中,用于输出一个浮点数的函数是________。
答案:printf4. C语言中,用于定义一个字符型变量的关键字是________。
答案:char5. C语言中,用于定义一个布尔型变量的关键字是________。
答案:_Bool 或 bool(根据标准不同)三、简答题(每题5分,共20分)1. 请简述C语言中变量的作用域有哪些?答案:变量的作用域主要有局部作用域和全局作用域。
局部作用域通常用于函数内部,变量只在该函数中有效;全局作用域用于函数外部,变量在整个程序中都有效。
2. 解释C语言中的指针是什么?答案:指针是一种特殊的变量,它存储了另一个变量的内存地址。
通过指针,程序可以间接访问和操作内存中的数据。
3. 什么是C语言中的函数原型?答案:函数原型是指函数的声明,它提供了函数的返回类型、函数名、参数类型和数量等信息,但不包含函数的具体实现。
4. 在C语言中,如何定义一个结构体?答案:定义一个结构体需要使用关键字`struct`,后跟结构体的名称,然后是一对花括号,其中包含了结构体成员的声明。
程序设计(1)实验习题实验一(1)运行以下程序,并解释运行结果。
# include <stdio.h>int main(void){ int x = –1;unsigned u = ;printf ( “x = %u = %d\n”, x, x);printf ( “u = %u = %d\n”, u, u);return 0;}(2)运行以下程序,解释运行结果,并修改程序以使结果正确。
# include <stdio.h>int main(void){ int x = ;printf ( “x + 1 = %d\n”, x + 1);return 0;}(3)运行以下程序,解释运行结果。
程序1:#include <stdio.h>int main(void){ float a;double b;a = 123456.789e4;b = 123456.789e4;printf(“%f\n%f\n”,a,b);return 0;}程序2:# include <stdio.h>int main(){ float a,b;a=123456.789e5;b=a+20;printf("%f\n",a);printf("%f\n",b);return 0;}(4)求平方根:输入1 个实数x,计算并输出其平方根(保留1 位小数)。
(5)华氏温度转换为摄氏温度:输入华氏温度f,计算并输出相应的摄氏温度c(保留2 位小数)。
c = 5/9(f-32).(6)三天打鱼两天晒网:中国有句俗语叫“三天打鱼两天晒网”。
假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第n天中是“打鱼”还是“晒网”?编写相应程序(第一天就是当天)。
例如:输入:103输出:Fishing in day 103输入:35输出:Drying in day 35(7)按照规定,在高速公路上行使的机动车,达到或超出本车道限速的10%则处200元罚款;若达到或超出50%,就要吊销驾驶证。
1.什么是程序?什么是程序设计?程序,就是一组计算机能识别和执行的指令.根据计算机软件设计人员的需要,使计算机执行特定的操作,来满足人们的需要。
2.为什么需要计算机语言?高级语言的特点?人和计算机交流需要一种计算机和人都能识别的语言.高级语言很接近于人们习惯使用的自然语言和数学语言;程序中用到的语句和指令是英文单词表示的,程序中所用的运算符和运算表达式和人恩日常所用的数学式子差不多,很容易理解;程序运行的结果用英文和数字输出,十分方便.高级语言功能性很强,且不依赖于具体及其,用它写出的程序对任何型号的计算机都适用(或只须作很少的修改)。
3.正确理解以下名词及其含义:(1)源程序目标程序可执行程序源程序:是指未经编译的,按照一定的程序设计语言规范书写的,人类可读的文本文件.通常由高级语言编写。
目标程序:又称为“目的程序”,为源程序经编译可直接被计算机运行的机器码集合,在计算机文件上以。
obj 作扩展名—--—由语言处理程序(汇编程序,编译程序,解释程序)将源程序处理(汇编,编译,解释)成与之等价的由机器码构成的,计算机能够直接运行的程序,该程序叫目标程序。
目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。
可执行程序:在计算机科学上,指一种内容可被电脑解释为程序的电脑文件。
通常可执行文件内,含有以二进制编码的微处理器指令,也因此可执行文件有时称为二进制档.这些二进制微处理器指令的编码,于各种微处理器有所不同,故此可执行文件多数要分开不同的微处理版本。
一个电脑文件是否为可执行文件,主要由操作系统的传统决定。
例如根据特定的命名方法(如扩展名为exe)或文件的元数据信息(例如UNIX系统设置“可运行”权限)。
(2)程序编辑程序编译程序连接程序编辑:指将完成一件工作所需要的步骤,也就是算法,用计算机所能识别的语言,按照一定的程序结构翻译出来,并可被计算机执行的编写代码的全过程。
自考Java语言程序设计(一)课后习题及答案自考Java语言程序设计(一)第一章Java语言概述课后习题一、Java语言概述1.Java语言有哪些特点?2.什么叫做类?什么叫做对象?3.简述Java的运行机制。
4.简述Java应用程序的开发流程。
5.当初Sun公司发展Java的原因是:来源:(a)要发展航空仿真软件(b)要发展人工智能软件(c)要发展消费性电子产品6.Java是从哪种语言改进并重新设计?(a)Ade来源:(b)C++(c)Pascal7.Java因为什么快速发展而走红?(a)个人计算机与网络(b)游戏软件(c)系统软件8.Java程序的种类有:(a)内嵌于Web文件中,由浏览器来观看的__________(b)可独立运行的__________考试大论坛(c)服务器端的_________9.Java是面向对象语言,对象是客观事物的,对象与之是一一对应的,它是很具体的概念。
10. 判断:用Javac编译Java源文件后得到代码叫字节码。
()参考答案1.答:面向对象、简单、平台无关性、安全性、内存管理、分布式应用、多线程、动态、解释运行,高效能2.答:在面向对象编程中,具体的客观实体称为对象,对象就是数据加方法。
对象在程序中是通过一种抽象数据类型来描述的,这种抽象数据类型称为类。
类是对具有相同属性和方法的一组相似对象的抽象,或者说类是对象的模板。
来源:考试大3.答:Java程序的运行必须经过编写、编译、运行三个步骤。
编写是指在Java开发环境中进行程序代码的输入过程,最终形成后缀名为.java源文件。
编译是指使用Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件。
运行是指使用Java解释器将字节码文件翻译成机器代码,在cpu上运行并显示结果的过程。
这一过程如图所示。
考试大-全国最大教育类网站(www.Examda。
com)4.Java应用程序的运行经过编写、编译、运行三个步骤。
【---------------题目:从读入的整数数据中,统计大于零的整数个数和小于零的整数个数。
用输入零来结束输入,程序中用变量i统计大于零的整数个数,用变量j统计小于零的整数个数。
-------------------------------------------------------*/#include <stdio.h>main(){int k,n,i,j;printf("Enter INT number,with 0 to end\n");i=j=0;scanf("%d",&n);while(n!=0)/***********SPACE***********/{if(n>0)i=【?】;/***********SPACE***********/if(n<0)j=【?】;/***********SPACE***********/scanf("%d",【?】);}printf("i=%4d\n",i,j);}答案:1). i + 12). j + 13). &n第2题(6.0分)/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目:以下程序是用选择法对10个整数按升序排序,程序中有4个空,填空使程序完整。
-------------------------------------------------------*/ /***********SPACE***********/【?】main(){int i,j,k,t,a[N];for(i=0;i<=N-1;i++)scanf("%d",&a[i]);for(i=0;i<N-1;i++){/***********SPACE***********/【?】/***********SPACE***********/for(j=i+1; 【?】;j++)if(a[j]<a[k]) k=j;/***********SPACE***********/if(【?】){t=a[i];a[i]=a[k];a[k]=t;}}printf("output the sorted array:\n"); for(i=0;i<=N-1;i++)printf("%5d",a[i]);printf("\n");}答案:1). #define N 102). k=i;3). j<N 或 N>j 或 j<=N-1 或 N-1>=j4). k != i程序设计】--------------------------------------------------题目:编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果。
请编写fun函数。
例如:若n值为20,则结果为268040729。
--------------------------*/#include<stdio.h>float fun(int n){/**********Program**********//********** End **********/}main(){int i,n;long int result;scanf("%d",&n);result=fun(n);printf("%ld\n",result);yzj();}yzj(){FILE *IN,*OUT;int i;int iIN;long int iOUT;IN=fopen("1.in","r");if(IN==NULL){printf("Please Verify The Currernt Dir..It May Be Changed");}OUT=fopen("1.out","w");if(OUT==NULL){printf("Please Verify The Current Dir.. It May Be Changed");}for(i=0;i<10;i++){ fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,"%ld\n",iOUT); }fclose(IN);fclose(OUT);}答案:----------------------int i;float f=1,s=0;for(i=1;i<=n;i++){f=f*i;s=s+f;}return s;----------------------题目:编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5)例如:若m=9,则应输出:1.168229 #include "stdio.h"double fun(int m){/**********Program**********//********** End **********/}main(){int n;clrscr();printf("Enter n: ");scanf("%d", &n);printf("\nThe result is %1f\n", fun(n));getch();yzj();}yzj(){FILE *IN,*OUT;int s,i ;int t;float o;IN=fopen("in.dat","r");if(IN==NULL){printf("Read File Error");}OUT=fopen("out.dat","w");if(OUT==NULL){printf("Write File Error");}for(i=0;i<5;i++){ fscanf(IN,"%d",&t);o=fun(t);fprintf(OUT,"%f\n",o);}fclose(IN);fclose(OUT);}答案:----------------------double y=0;int i;for(i=0; i<=m; i++){y+=1.0/(i+5); }return(y);----------------------第3题(6.0分)/*------------------------------------------------【程序设计】--------------------------------------------------题目:编写函数fun,函数的功能是:求给定正整数m以内的素数之和。
例如:当m=20时,函数值为77。
--------------------------------------------------#include "stdio.h"int fun(int m){/**********Program**********/ /********** End **********/}main(){int y;y=fun(20);printf("y=%d\n",y);yzj();}yzj(){FILE *IN,*OUT;int iIN,iOUT,i;IN=fopen("20.in","r");if(IN==NULL){printf("Please Verify The Currernt Dir..It May Be Changed");}OUT=fopen("20.out","w");if(OUT==NULL){printf("Please Verify The Current Dir.. It May Be Changed");}for(i=0;i<10;i++){ fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,"%d\n",iOUT);}fclose(IN);fclose(OUT);}答案:----------------------int i,k,s=0;for(i=2;i<=m;i++){for(k=2;k<i;k++)if(i%k==0)break;if(k==i)s=s+i;}return s;----------------------:以下程序的功能是统计一个字符串中的字母、数字、空格、和其它字符的个数。
----------------*/#include "stdio.h"main (){char s1[80];int a[4]={0};int k;/***********SPACE***********/【?】;gets(s1);/***********SPACE***********/【?】;puts(s1);for(k=0;k<4;k++)printf("%4d",a[k]);}void fun(char s[],int b[]){int i;for (i=0;s[i]!='\0';i++)if('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]< ='Z') b[0]++;/***********SPACE***********/else if (【?】) b[1]++;/***********SPACE***********/else if (【?】 ) b[2]++;else b[3]++;}答案:1). void fun(char s[],int b[]) 或 void fun()2). fun(s1,a)3). '0'<=s[i] && s[i]<='9' 或s[i]>='0' && s[i]<='9' 或 '0'<=s[i] && '9'>=s[i] 或 s[i]>='0' && '9'>=s[i] 或48<=s[i] && s[i]<=57 或 s[i]>=48 &&s[i]<=57 或 48<=s[i] && 57>=s[i] 或s[i]>=48 && 57>=s[i] 或 !( x < 48 || x > 57 ) 或 !( x < '0' || x > '9' )4). s[i] == ' ' 或 s[i] == 32 或 s[i] == 040 或 s[i] == 0x20 第2题(6.0分)【程序填空】题目:以下程序的功能是用冒泡法对数组a 进行由小到大的排序。