C++语言程序设计-复习资料

C++语言程序设计-复习资料
C++语言程序设计-复习资料

本科《C++语言程序设计》期末复习模拟训练题

一、单选题

1.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为(A)。

A. main

B. MAIN

C. name

D. function 2.设x和y均为bool量,则x && y为真的条件是(D)。

A. 其中一个为假

B. 其中一个为真

C. 它们均为假

D. 它们均为真

3. 逻辑表达式x>0 || y==5的相反表达式为(B)。

A. x<=0 || y!=5

B. x<=0 && y!=5

C. x>0 || y!=5

D. x>0 && y==5

4. 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大(C)个字节。

A. 1

B. 2

C. 4

D. 8

5. 枚举类型中的每个枚举常量的值都是一个(A)。

A. 整数

B. 浮点数

C. 字符

D. 逻辑值

6. 循环体至少被执行一次的语句为(C)语句。

A. for循环

B. while循环

C. do循环

D. 任一种循环

7. 在下面的字符数组定义中,(D)语句有语法错误。

A. char a[20]=”abcdefg”;

B. char a[]=”x+y=55.”;

C. char a[15]={’1’,’2’};

D. char a[10]=’5’;

8. 若用数组名作为函数调用的实参,传递给形参的是(A)。

A. 数组的首地址

B. 数组中第一个元素的值

C. 数组全部元素的值

D. 数组元素的个数

9.假定AB为一个类,则执行“AB a(4), b[5], *p[2];”语句时,自动调用该类构造函数的次数为(A)。

A. 6

B. 7

C. 9

D. 11

10.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为(D)。

A. ios::in

B. ios::out

C. ios::in | ios::out

D. 没有

11. 枚举类型中的每个枚举常量的值都是一个(A)值。

A. 整数

B. 浮点数

C. 字符

D. 逻辑

12.设x和y均为bool量,则逻辑表达式x || y为假的条件是(C)。

A. 它们均为真

B. 其中一个为真

C. 它们均为假

D. 其中一个为假

13. 声明或定义一个内联函数时,必须在函数开始使用保留字(D)。

A. static

B. const

C. extern

D. inline

14. 在下面的函数声明中,存在着语法错误的是(D)。

A. BC(int a, int);

B. BC(int, int);

C. BC(int, int=5);

D. BC(int x; int y);

15. 假定a为一个整型数组名,则元素a[4]与(C)的表示等价。

A. a+4

B. *a+4

C. *(a+4)

D. *(a+16)

16. 下面循环语句执行结束后输出的i值为(B)的值。

for(int i=0; in/2) {cout<

A. n/2

B. n/2+1

C. n-1

D. n

17. 将两个字符串连接起来组成一个字符串时,选用(C)函数。

A. strlen()

B. strcpy()

C. strcat()

D. strcmp()

18. 预处理命令在程序中都是以(B)字符开头的。

A. *

B. #

C. &

D. @

19. 假定有定义“struct BOOK{char title[40]; float price;};”,则不正确的变量定义语句为(D)。

A. BOOK x;

B. BOOK x={"C++ Programming",27.0};

C. BOOK *x=new BOOK;

D. BOOK x=new BOOK;

20. 假定AB为一个类,px为指向该类动态对象数组的指针,该数组长度为n,则执行“delete []px;”语句时,自动调用该类析构函数的次数为(B)。

A. 1

B. n

C. n-1

D. n+1

21. 由C++源程序文件编译而成的目标文件的缺省扩展名为(A)。

A. obj

B. lik

C. exe

D. cpp

22. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用(D)符号作为分隔符。

A. 空格或逗号

B. 逗号或回车

C. 逗号或分号

D. 空格或回车

23. 设x是一个bool型的逻辑量,y的值为10,则表达式 x && y 的值为(C)。

A. 1

B. 0

C. 与x值相同

D. 与x值相反

24. for语句能够被改写为(D)语句。

A. 复合

B. if

C. switch

D. while

25. 在下面的do循环语句中,其循环体被执行的次数为(A)。

int i=0; do i++; while(i*i<10);

A. 4

B. 3

C. 5

D. 2

26. 在下面的一维数组定义中,(C)语句有语法错误。

A. int a[]={1,2,3};

B. int a[10]={0};

C. int a[];

D. int a[5];

27. 下面的(C)保留字不能作为函数的返回类型。

A. void

B. int

C. new

D. long

28. 下面的函数声明中,(B)是“void BC(int a, int b);”的重载函数。

A. int BC(int x, int y);

B. void BC(int a, char b);

C. float BC(int a, int b, int c=0);

D. int BC(int a, int b=0);

29. 当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为(C)。

A. n

B. n+1

C. n-1

D. n-2

30. 假定AB为一个类,则该类的拷贝构造函数的声明语句为(D)。

A. AB&(AB x);

B. AB(AB x);

C. AB(AB* x);

D. AB(AB&);

31. C++程序的基本功能模块为(D)。

A. 表达式

B. 标识符

C. 语句

D. 函数

32. 存储以下数据,占用存储字节最多的是(A)。

A. 0

B. ’0’

C. ”0”

D. ’\n’

33. 在下面的一维数组定义中,有语法错误的是(C)。

A. int a[]={1,2,3};

B. int a[10]={0};

C. int a[];

D. int a[5];

34. 在下面的语句或语句组中,(B)不正确。

A. int a[5];

B. int M=10; int a[M];

C. int a[]={1,5,10,45};

D. const int N=12; int a[N]; 35.C++语言中的每条简单语句以(B)作为结束符。

A. 逗号

B. 分号

C. 空格

D. 换行符

36. 含随机函数的表达式rand()%20的值在(C)区间内。

A. 1~19

B. 1~20

C. 0~19

D. 0~20

37. 当处理一个特定的问题时,若循环次数已知,则通常采用(A)来解决。

A. for循环

B. while循环

C. do循环

D. switch语句

38. 在下面循环语句中内层循环体S语句的执行总次数为(D)。

for(int i=0; i

for(int j=i; j

A. n2

B.(n+1)/2

C. n(n-1)/2

D. n(n+1)/2

39. 若函数声明为double* function(), 则该函数的返回值为(B)。

A. 实数型

B. 实数指针型

C. 函数指针型

D. 数组型

40. 假定变量m定义为“int m=7;”,则定义变量p的正确语句为(B)。

A. int p=&m;

B. int *p=&m;

C. int &p=*m;

D. int *p=m;

二、填空题

1.C++语言中的每条基本语句以 ; 作为结束符,每条复合语句以 } 作为结束符。

2.用于输出表达式值的标准输出流对象是cout ,用于从键盘上为变量输入值的标准入流对象是 cin 。

3.当不需要函数返回任何值时,则应把该函数类型定义为 void 。4.执行“cout<<143<<’+’<<18<<’=’<<143+18<

5.执行“cout<<“ning”<<“chen”<<38<

6.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为 main 。

7.C++源程序文件的缺省扩展名为 .cpp ,由C++源程序文件编译而成的目标文件的缺省扩展名为 .obj ,由C++目标文件连接而成的可执行文件的缺省扩展名为 .exe 。

8.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用空格或 , 符号作为分隔符。

9.十进制数25表示成符号C++语言规则的八进制和十六进制数分别为031和0x19符号。

10.在C++语言中,用转义字符序列’\n’ 或’\12’ 或’\x0a’ 或操纵符endl 表示输出一个换行符。

11.执行“cout<

12.执行“cout<

13.已知’A’~’Z’的ASCII码为65~90,当执行“int x=’H’+5;”语句后x的值为 77 。

14.已知’A’~’Z’的ASCII码为65~90,当执行“char ch=16*5+2;cout<

15.假定一个枚举类型的定义为“enum RA{xa,xb,xc,xd};”,则执行“cout<<”xc=”<

17.Char、short和int类型的大小分别为 1B 、2B 和 4B 。18.float和double类型的大小分别为 4B 和 8B 。

19.十进制数128和-3.26的类型分别为 int 和 double 。20.若需要定义一个标识符常量,并且使C++能够进行类型检查,则应在定义语句的开始用保留字 const 。

21.使用const语句定义一个标识符常量时,则必须对它同时进行初始化。

22.执行“int x=45,y=16;cout<

23.假定x=10,y=6,则表达式2+x+ +和+ +y*3的值分别为 12 和21 。

24.算术表达式(x2+y2)/(2-xy)对应C++表达式为(x*x+y*y)/(2-x*y)。

25.算术表达式xy2/(3a+4b-1)对应的C++表达式为x*y*y/(3*a+4*b-1)。

26.表达式float(25)/4和int(14.6)%5的值分别为6.25和4。27表达式a=a+b表示成复合赋值表达式为a+=b; 。

28.表达式a=a+1表示成增量表达式为++a; 。

29.增量表达式+ +y表示成赋值表达式为y=y+1; 。

30.关系表达式(x= =0)的等价表达式为!(x! =0)。

31.关系表达式(x! =0)的等价表达式为 !(x= =0)。32.关系表达式x+y>z的相反表达式为 x+y<=z 。

33.逻辑表达式x>5&& x<10的相反表达式x<=5 || x>=10 。34.逻辑表达式a>b | | b= =5的相反表达式为a<=b && b!=5。35.若x=15,y=40,则x>y 和x<=y的逻辑值分别为false或0 和true或1。

36.假定x=5,则执行“a=(x? 10:4*2);”语句后a的值为10 。37.假定a=5,则条件表达式“a= =0? 10:20”的值为20。38.执行“typedef int Data Type;”语句后,在使用int定义整型变量的地方都可以使用

Data Type 定义整型变量。

39.设x和y均为bool量,x & & y为真的条件是x和y均为true。40.设x和y均为bool量,则x | | y为假的条件是x和y均为false。

41.假定一个一维数组的定义为“char a[5];”,则该数组所含元素的个数为 5 ,所占存储空间的字节数为 5 。( 存储的字符串最大长度:4 )

42.假定一个二维数组的定义为“int a[4][6];”,则该数组所含元素的个数为 24 ,所占存储空间的字节数为 96 。

43.假定一个二维数组的定义为“char a[8][8];”,则该数组所含元素的个数为 64 ,所占存储空间的字节数为 64 。

44.执行“typedef float ABC[10];”语句把ABC定义为具有10个单精度元素的一维数组。

45.在函数外定义的变量称为全局变量,若没有被初始化则系统隐含对它赋初值 0 。

46.函数中的形参变量的初值由调用该函数时获得。

47.函数调用时,实参向形参的传送分为按值传递和按地址传递两种传送方式。

48.变量分为全局和局部两种,局部变量没有赋初值时,其值是不确定的。

49.假定p所指对象的值为28,p+1所指对象的值为62,则* p + +的值为 28 。p所指对象的值为:62

50.假定p所指对象的值为28,p+1所指对象的值为62,则* + + p的值为 62 。p所指对象的值为:62

51.假定p所指对象的值为25,p+1所指对象的值为50,则执行“(*p)+ +;”语句后,p所指对象的值为 26 。表达式值为:25 52.假定p所指对象的值为25,p+1所指对象的值为50,则执行“*(p+ +);”语句后,p所指对象的值为 50 。表达式值为:50 53.假定a是一个指针数组,则a+i所指对象的地址比a地址大 i *sizeof(unsigned) 字节。

54.假定a是一个一维数组,则a[i]的指针访问方式为*( a+ i ) 。55.假定a是一个二维数组,则a[i] [j]的指针访问方式为*(( a+i ) + j )。

56.假定a是一个一维数组,则a[i]对应的存储地址(以字节为单位)为 a + sizeof(a[0])*i 。

57.假定一个二维数组为a[M] [N],则a[i] [j]对应的存储地址(以字节为单位)为 a+sizeof(a[0][0])*(i*N + j ) 。

58.假定一个二维数组a[M] [N],则a[i]的地址值(以字节为单位)为 a + sizeof(a[0][0])*(i*N) 。

59.假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大 4 字节。

60.假定a为一个字符数组名,则元素a[8]的字节地址为 a + 8 。61.假定a为一个整型数组名,则元素a[4]的字节地址为 a + 4*sizeof( int ) 或 a + 16 。

62.假定一个结构类型的定义为“struct A{int a,b;short c;A*d;};”,则该类型的大小为 14 字节。

63.假定一个结构类型的定义为“struct B{int a[8];char* b;};”,则该类型的大小为 36 字节。

64.假定一个结构类型的定义为“struct D{int a;union{int b;double c;}; D*d[3];};”,则该类型的大小为24字节。65.假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句为

Worker *r = new Worker [ n ] ; 。

66.假定要访问一个结构x中的由a指针成员所指向的对象,则表示方法为*( x . a ) 。

67.假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为*( p->b )。

68.在定义类对象的语句执行时,系统在建立每个对象的过程中将自动调用该类的构造函数使其初始化。

69.当一个类对象被撤消时将自动调用该类的析构函数。

70.对基类数据成员的初始化是通过执行派生类构造函数中的初始化表来实现的。

71.对一个类中的数据成员的初始化可以通过构造函数中的赋值语句实现,也可以通过构造函数中的初始化表实现。

72.在一个派生类中,对基类成员、类对象成员和非类对象成员的初始化次序的先基类成员,后类对象成员,最后非类对象成员。

73.当撤消一个含有基类和类对象成员的派生类对象时,将首先完成类对象成员的析构函数定义体的执行,接着完成派生类的析构函数定义体的执行,最后完成基类的析构函数定义体的执行。

74.设PX是指向一个类动态对象的指针变量,则执行“delete px;”语句时,将自动调用该类的析构函数。

75.当一个类对象离开它的作用域时,系统将自动调用该类的析构函数。

76.假定一个类对象数组为A[N],当离开它的作用域时,系统自动调用该类析构函数的次数为N 。

77.假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类构造函数的次数为 10 。

78.假定拥护没有给一个名为AB的类定义构造函数,则系统为其隐含定义的构造函数为AB ( ) { } 。

79.假定用户没有给一个名为AB的类定义析构函数,则系统为其隐含定义的析构函数为~ AB ( ) { } 。

80.若需要把一个函数“void f(); ”定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:friend void f( );。81.若需要把一个类AB定义为一个类CD的友元类,则应在类CD的定义中加入一条语句:friend class AB;。

82.假定一个类AB中有一个静态整型成员bb,在类外的它进行定义并初始化为0时,所使用写法为:int AB::bb = 0 ;。

83.假定类AB中有一个公用属性的静态数据成员bb,在类外不通过对象名访问该成员 bb的访问为AB::bb。

84.当类中一个字符指针成员指向具有n个字节的储存空间时,它所能储存字符串的最大长度为 n-1 。

85.假定AB为一个类,则该类的拷贝构造函数的声明语句为 AB (AB & ); 。

86.对类对象成员初始化是通过执行构造函数中的赋值语句或初始化表完成的。

87.对于类中定义的成员,其隐含访问权限为private ,对于结构中定义的成员,其隐含访问权限为public 。

88.一个类的友元函数或友元类能够通过成员操作符直接访问该类的私有成员。

89.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为:AB& operator+(AB &); 。

90.在C++流类库中,根基类为ios 。

91.在C++流类库中,输入流类和输出流类的名称分别为istream 和 ostream 。

92.若要在程序文件中进行标准输入输出操作,则必须在开始的#in c lude命令中使用iostream.h头文件。

93.若要在程序文件中进行文件输入输出操作,则必须在开始的#in c lude命令中使用fstream.h头文件。

94.当从字符文件中读取回车和换行两个字符时,被系统看作为一个字符串流。

95.当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为ios ::in,当使用ofstream 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为ios::out 。当需要使用istream流类定义一个流对象并联系一个字符串时,应在文件开始使用#include命令,使之包含strstrea.h 文件。

三、写出下列程序运行后的输出结果

1.#include void SB (char ch) {

switch (ch) {

case ’A’ :case ’a’:

cout <<”well”!” ; break

case ‘B’: case ‘b’:

cout <<”good!” ;break;

case ‘C’: case ‘c’:

cout <<”pass!” ;break;

default :

cout << “bad!” ; break;}}

void main ( ){

char al=’b’,a2=’c’,a3=’f’;

SB(al);SB(a2);SB(a3);SB(‘A’);

Cout <

运行结果:good!pass!bad!well!

2、#include

#include

double SD(int a,int b,char op) {

double x; //局部变量x的改变不影响main函数中的x

switch (op) {

case ‘x’:x=double(a) + b; break;

case ‘-‘: x=double (a)– b; break;

case ‘*’: x=double (a) * b;break;

case ‘/’:if (b) x=double (a)/b;

else exit(1);

break;

default:exit(1);}

return x;}

void main ( ){

int x=20 ,y=12;

cout <

cout <

cout <

运行结果:8 240 3.2

3、#include

void main ( ){

int s=0;

for (int I=1;I<6;I++)

s+=I*I; // s=1*1+2*2+3*3+4*4+5*5

cout <<”s=”<

运行结果:s=55

4、# include

void main ( ){

int s=0;

for (int I=1;;I++){

if (s>50) break;

if (I%3= =0) s+=I; // s=3+6+9+12+15+18 }

cout <<”I,s=”<

运行结果:I,s=19,63

5、# include

void main ( ){

int s1=0,s2=0;

for (int I=0;I<10;I++)

if (I%2) s1+=I; // s1= 1+3+5+7+9

else s2 +=I; // s2= 0+2+4+6+8

cout <

运行结果:25 20

6、# include

void main (){

int n=10,y=1;

while (n--){y++;++y;} // 循环10次 y增加20

cout <<”y*y=”<

运行结果:y * y = 441

7.#include

void main(){

int a[10]={12,39,26,41,55,63,72,40,83,95};

int b;

int i0=0,i1=0,i2=0;

for(int i=0;i<10;i++)

switch(b=a[i]%3)

{ case 0:

i0++;break; //a[ i ] = 12 , 39 , 63 , 72 case 1:

i1++;break; // a[ i ] = 55 , 40 case 2:

i2++; // a[ i ] = 26 , 41 , 83 , 95 }

cout<

运行结果:4 2 4

8.#include

#include

void main( ){

char

*a[5]={"student","worker","cadre","apple","peasant"};

char *p1,*p2;

p1=p2=a[0];

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

if(strcmp(a[i],p1)>0) p1=a[i];//p1:最大;p2:最小 if(strcmp(a[i],p2)<0) p2=a[i];}

cout<

运行结果:worker apple

9.#include

void main( )

{ int a[8]={36,73,48,14,55,40,32,66};

int b1,b2;

b1=b2=a[0];

for(int i=1;i<8;i++)

if(a[i]>b1){

if(b1>b2)b2=b1;

b1=a[i]; }

cout<

运行结果:73 36

10.#include

void main(){

char a[]= "aabcdaabacabfgacd";

int i1=0, i2=0, i=0;

while(a[i]){

if(a[i] = = 'a') i1++;

if(a[i] = = 'b') i2++;

i ++; }

cout<

运行结果:7 3

11.#include

void main(){

char a[ ]= "abcdabcdbdaeaf";

int b[5]= { 0 },i=0;

while(a[i]){

switch(a[i]){

case 'a' : b[0]++;break;

case 'b' : b[1]++;break;

case 'c' : b[2]++;break;

case 'd' : b[3]++;break;

default : b[4]++; }

i++; }

for(i=0;i<5;i++)cout<

cout<

运行结果:4 3 2 3 2

12.#include

void main(){

int a[10] = {73,83,54,62,40,75,80,92,77,84};

int b[4] = {60,70,90,101};

int c[4] = {0};

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

int j = 0;

while(a[i]>=b[j]) j++;

c[j]++;}

for(i=0;i<4;i++) cout<

cout<

运行结果:2 1 6 1

13.#include

void main(){

int a[3][4] = {{1,2,7,8},{5,6,11,12},{24,10,3,4}};

int m = a[0][0];

int ii =0,jj =0;

for(int i =0;i<3;i++)

for(int j =0;j<4;j++)

if(a[i][j]>m) {m=a[i][j];ii=i;jj=j;}

// m:最大值;最大值行号ii、列号jj cout<< ii << ' ' << jj << ' '<< a[ii][jj]<

14.#include

void main(){

int a =10,b =20;

cout<< a << ' ' << b << endl;

{ a *= 4;

int b = a +35;

cout<< a << ' ' << b << endl; }

cout<< a << ' ' << b << endl;}

运行结果:10 20

40 75

40 20

15.#include

void main(){

int a[8]={7,9,11,13,3,8,15,17};

int *p = a;

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

cout<

if((i +1)%4 ==0)cout<

运行结果:

79 11 13

38 15 17

16.#include

void main(){

int a[5]={3,6,15,7,20};

int *p = a;

for(int i = 0;i<5;i++)

cout<

cout<

for(i =0;i<5;i++)

cout<

cout<

运行结果:

3 6 15 7 20

20 7 15 6 3

17.#include

void main(){

int a[8] ={4,8,12,16,20,24,28,32};

int *p = a;

do{

cout<< *p << ' ';

p+=3;

}while(p

cout<

运行结果:4 16 28

18.#include

void main(){

int x=20,y=40, *p;

p =&x;cout<< *p<< ' ';

* p= x +10; // x = x + 10 = 30

p =&y;cout<< *p<

* p = y +20;cout<< x << ' ' << y <

运行结果:20 40

30 60

19.#include

int LA(int * a,int n){

int s = 0;

for(int i =0;i

s += a[i];

return s;}

void main(){

int a[ ]={5,10,15,20,25,30};

int b =LA(a,5);

int c =LA(a+3,2);

cout<< b << ' ' << c << ' ' << b +2 * c<

运行结果:75 45 165

20.#include

void LC(int a,int b){ // 参数按值传递int x = a;

a = b;

b = x;

cout<< a << ’’ << b <

void main(){

int x =15,y =36;

LC(x,y);cout<< x << ’’ << y <

运行结果:

3615

15 36

21.#include

void LF(int & x, int y){ // 引用形参 x 按地址传递,形参 y 按值传递

x = x + y; // x= 5 + 8 = 13

y = x + y; // y = 13 + 8 = 21

cout<<”x =”<< x <<”,y =”<< y <

int x =5,y =8;

cout<<”x =”<< x <<”,y =”<< y <

LF(x,y);

cout<<”x =”<< x <<”,y =”<< y <

运行结果:x = 5 , y = 8

x = 13 , y = 21

x = 13 , y = 8

22.#include

void LG(int * & a, int & m){ // 按地址传递

a = new int[m];

int * p = a;

for(int i = 0;i

*p++ =2 * i +1; // a[0]=1 a[1]=3 a[2]=5 a[3]=7 a[4]=9}

void main(){

int * p, n =5;

LG(p,n);

for(int i = 0;i

cout<< p[i]<< ’’;

cout<

delete[ ]p;}

运行结果:1 3 5 7 9

23.#include

void LH(int * a, int n){

int * p = a + n-1;

while(a

int x = * a;

* a = * p;

* p = x;

a++;p--;}}

void main(){

int * d = new int[5];

int i;

for(i = 0;i<5; i++){

d[i]=2 * i +3;

cout<

cout<

LH(d,5);

for(i = 0;i<5;i++){

cout<

cout<

delete[]d;}

运行结果:3 5 7 9 11

11 9 7 5 3

24.#include

struct Worker{

char name[15]; //姓名

int age; //年龄

float pay; //工资

};

void main(){

Worker x ={”weirong”,55,640};

Worker y, * p;

y = x;p =&x;

cout<< y. name<< ’’<

cout<< p->name<< '' << p->age+5<< '' << p->pay-10<

运行结果:weirong 55 640

weirong 60 630

25.#include

#include

struct Worker{

char name[15]; //姓名

int age; //年龄

float pay; //工资};

void main(){

Worker x;

char * t =”liouting”;

int d =46;float f =725;

strcpy(x. name, t);

x. age = d;x. pay = f;

cout<< x. name<< ’’<

运行结果:liouting 46 725

26.#include

class A{

int a,b;

public:

A( ) {a=b=0;}

A( int aa, int bb){

a=aa; b=bb;

c out<

void main( ){

A x,y(6,3), z(8,10);}

运行结果:6 3

8 10

27.#include

class A{

int a, b;

public:

A(int aa= 0, int bb= 0): a(aa),b(bb){

cout<<”Constructor!”<< a + b<

void main(){

A x, y(2,5), z(y);}

运行结果: Constructor! 0

Constructor! 7

28.#include

class A{

int * a;

public:

A(int aa= 0){

a = new int(aa);

cout<<”Constructor!”<< * a<

A x[2];

A * p = new A(5);

delete p; }

运行结果: Constructor! 0

Constructor! 0

Constructor! 5

29.#include

class A{

int a;

public:

A(int aa= 0): a(aa){}

~A(){cout<<”Destructor!”<< a <

void main(){

A x(5);

A * p = new A(10);

delete p;}

运行结果: Destructor! 10

Destructor! 5

30.#include

class A {

int * a;

public:

A(int x){

a = new int(x);

cout<<”Constructor!”<< * a<

void main(){

A x(9),* p;

p = new A(12);

delete p;}

运行结果: Constructor! 9

Constructor! 12

Destructor!

Destructor!31.#include

class A{

int a;

public:

A(int aa= 0): a(aa){

cout<<”Constructor A!”<< a<

class B:public A{

int b;

public:

B(int aa, int bb): A(aa), b(bb){

cout<<”Constructor B!”<< b<

void main(){

B x(2,3),y(4,5);}

运行结果: ConstructorA! 2

ConstructorB! 3

ConstructorA! 4

ConstructorB! 5

32.#include

class A{

int a;

public:

A(int aa= 0){a = aa;}

~A(){cout<<”Destructor A!”<< a<

class B:public A{

int b;

public:

B(int aa= 0, int bb= 0): A(aa){b = bb;}

~B(){cout<<”Destructor B!”<

void main(){

B x(5),y(6,7);}

运行结果: DestructorB! 7

Destructor A! 6

Destructor B! 0

Destructor A! 5

8.#include

#include

class A{

int a,b;char op;

public:

A(int aa, int bb, char ch){a = aa;b = bb;op = ch;}

int Comp(){

switch(op){

case '+' :return a + b;

case '-' :return a -b;

case '*' :return a * b;

case '/' :if(b!=0)return a/b;else exit(1);

case '%' :if(b!=0)return a%b;else exit(1);

default:exit(1);}}

void SetA(int aa, int bb, char ch){

a = aa;

b = bb;op = ch;}};

void main(void){

A x(3,5,'*');

int a = https://www.360docs.net/doc/3817909094.html,p();

x.SetA(4,9, '+');

a += x. Comp();

x.SetA(13,8, '%');

a += x. Comp();

cout<<" a = "<< a <

运行结果: a=33

9.#include

class B{

int a,b;

public:

B(){a = b = 0;}

B(int aa, int bb){a = aa;b = bb;}

B operator +(B& x){

B r;

r.a = a + x.a;

r.b = b + x.b;

return r;}

B operator -(B& x){

B r;

r.a = a - x.a;

r.b = b - x.b;

return r;}

void OutB(){

cout<< a << ’’ << b <

void m ai n(){

B x(6,5),y(13,3), z1, z2;

z1 = x + y;z2 = x - y;

z1.OutB();z2.OutB();}

运行结果: 19 8

-7 2

10.#include

template

class FF{

TT a1,a2,a3;

public:

FF(TT b1, TT b2, TT b3){

a1 =b1;a2 =b2;a3 =b3;}

TT Sum(){return a1 + a2 + a3;}};

void main(){

FF< int > x(8,3,4),y(5,9,11);

cout<< x. Sum()<< ’’ << y. Sum()<

运行结果: 15 25

四、写出下列每个函数的功能

1.#include

int SA(int a,int b) {

if(a>b) return 1;

else if(a= =b) return 0;

else return –1;}

函数功能:判断a、b两整型参数,若a>b返回1,若a=b返回0,若a<b返回-1

2.int SC(int a,int b,int c) {

if(a>=b && a>=c) return a;

if(b>=a && b>=c) return b;

if(c>=a && c>=b) return c;}

函数功能:判断并返回a、b、c三个整型参数中的最大值。

3.int SE(int n) {

/ /n为大于等于1的整数

int x;cin>>x;if(n= =1) return x;

int m=x;

while(――n){

cin>>x;

m+=x;}

return m;}

函数功能:计算并返回键盘输入的n个整数的和。

4.double SF (double x,int n) {

/ /n为大于等于0的整数

double p=1,s=1;

for(int i=1;i<=n;i+ +) {

p* =x;// p = x ^ n

s+ =p/(i+1);}

return s; }

函数功能:计算并返回s的值其中s = 1 + x/2 + x^2/3 + x^3/4 + … + x^(n-1)/n + x^n/(n+1)

5.#include

bool SG(int x) {

/ /x为大于等于2的整数

int a=int(sqrt(x));/ /取x的平方根

int i=2;

while(i<=a) {

if(x%i= =0) break;

i+ +; }

if(i<=a)return 0;else return 1;}

函数功能:判断整型参数x是否为素数(质数),若是素数刚返回1否则返回0 。

6.float FH( ) {

float x,y=0,n=0;

cin>>x;

while(x!= -100) {

n+ +;y+=x;

cin>>x; }

if(n= =0) return y;else return y/n; }

函数功能:计算并返回键盘输入的一批float型数据的平均值,数据个数用n变量统计,当输入-100时结束数据的输入。

7.#include

void LI(int n){

int * a = new int[n], * p = a + n;

for(int i =0;i> a[i];

for(i = n - 1;i> =0;i--)cout<< *(--p)<< ’’;

cout<< ’\ n’;

delete [ ]a;}

函数功能:申请具有 n 个元素的动态整型数组空间( n 由参数给定),键盘输入 n 个整数放入此数组中,并按与输入相反的顺序输出这批整数。

8.#include

void LK(int a[ ], int n, int * & b, int& m){

float s =0;int i;

for(i =0;i

s + = a[i];

s/= n;

m = 0;

for(i =0;i

if(a[i]> = s)m + +;

b = new int[m];

int * p = b;

for(i =0;i

if(a[i]> = s)* p + + = a[i];}

函数功能:求形参 a 数组n 个整型元素的平均值,统计数组中大于或等于平均值的数据个数并通过引用参数 m 返回;申请具有 m 个元素的动态整型数组空间,将数组中大于或等于平均值的数据存入此动态空间并通过引用指针形参 b 返回。

9./ /struct Worker{

/ /char name[15];/ /姓名

/ /int age;/ /年龄

/ /float pay;/ /工资};

istream & operator>>(istream& istr,Worker& x){

cout<<”请输入一个职工记录:姓名、年龄、工资”<

istr>> x. name>> x.. age>> x.. pay;

return istr;}

这是一个>>操作符重载函数。其功能为:输入一具有Worker类型的结构变量的name、age、pag各成员的值,并通过引用形参 x 返回。

10./ / struct StrNode{

/ / char name[15];/ /字符串域

/ / StrNode * next;/ /指针域};

void QB(StrNode * & f, int n){

if(n = = 0){f =NULL;return;}

f =new StrNode;

cin>>f->name;

StrNode * p = f;

whlie(--n){

p = p->next= new StrNode;

cin>>p->name;}

p->next=NULL;}

函数功能:建立一有 n 个结点的、头指针为 f 的、数据类型为StrNode结构类型的链表。

11./ / struct StrNode{char name[15];StrNode * next;};

void QC(StrNode * f){

whlie(f){

cout<< f->name<< ’’;

f = f->next;}}

函数功能:遍历一头指针为 f 的、数据类型为StrNode结构类型的链表。

1.#include

#include

#include

void JA(char * fname)

/ /可以把fname所指字符串作为文件标识符的文件称为fname文件

{ ofstream fout(fname);

char a[20];

cin>> a;

whlie(strcmp(a,”end”)!=0){

fout<< a << endl;

cin>> a;}}

函数功能: 建立磁盘文件(文件名由参数fname给定),键盘输入一批字符串(每个字符串长度小于20),存入此文件中,当输入”end”时结束输入。

2.#include

#include

void JB(char * fname)

/ /可把以fname所指字符串作为文件标识符的文件称为fname文件

/ /假定该文件中保存着一批字符串,每个字符串的长度均小于20。

{ ifstream fin(fname);

char a[20];

int i = 0;

whlie(fin>> a){

cout<< a <

i + +;}

fin.close();

cout<< ”i = ”<< i <

函数功能: 从fname所指的磁盘文件中读取一批字符串并通过屏幕输出。统计并输出所读取的字符串数目。

3.#include

#include

void JC(chat * fname, int n)

/ /可把以fname所指字符串作为文件标识符的文件称为fname文件

{ ofstream fout(fname, ios : : out | ios : : binary);

int x;

for(int i = 0;i

cin>> x;

fout.write((char * )&x, sizeof(x));}

fout.close();}

函数功能:建立磁盘二进制文件(文件名由参数fname给定),输入n个整数存入此文件中。

4.#include

#include

void JD(char * fname)

/ /可把以fname所指字符串作为文件标识符的文件称为fname文件,

/ /假定该文件保存着一批整数。

{ ifstream fin(fname, ios : : in | ios : : nocreate | ios : : binary);

int x, s = 0, n = 0;

whlie(fin.read((char * )&x, sizeof(x))){

s + = x;n + +;}

cout<< n << ’’ << s << ’’ <

fin.close();}

函数功能:从fname所指的二进制文件中读取一批整数,统计并输出所读取的数据个数n、总和s、及平均值。

五、按题目要求编写程序

1. 已知6≤a≤30、15≤b≤36,求出满足不定方程2a+5b=126的全部整数组解。如(13,20)就是其中的一组解,并按此格式输出每组解。

#include

void main()

{ int a,b;

for(a=6;a<=30; a++)

for(b=15;b<=36;b++)

if(2*a+5*b==126)

cout<<'('<

2. 假定函数声明为“void Print(int a[], int n);”,在函数体中按下标从大到小的次序输出数组a中的n个元素的值,并要求每行输出6个元素,当然最后一行可以不足6个。

void Print(int a[], int n)

{ int i,j=0;

for(i=n-1; i>=0; i--) {

cout<

if(++j%6==0) cout<

}

cout<

3. 假定一个函数声明为“void AD(int a[], int n);”,要求把数组a中的n个元素值按相反的次序仍保存在数组a中。

void AD(int a[], int n)

{

for(i=0; i

int x=a[i]; a[i]=a[n-1-i]; a[n-1-i]=x; }}

4. 假定一个函数声明为“int FF(int a[], int n);”,要求递归求出数组a中所有n个元素之积并返回。

int FF(int a[], int n)

{ if(n==1) return a[n-1];

else return a[n-1]*FF(a,n-1);

//或者if(n==0) return 1;

// else return a[n-1]*FF(a,n-1);}

C语言程序设计第三版习题库答案

C 语言程序设计(第三版)习题库 1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include<> main(){ floatr,h,C1,Sa,Sb,Va,Vb; scanf(__”%f ”__,&r); scanf(”%d ”,__&h _);; C1=2**r; Sa=*r*r; Sb=4*Sa; Va=4**r*r*r/3; Vb=Sa*h; printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb ); } 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include<> main(){ floatF,c; scanf("%f",&F); ____c=5*(F-32)/9______; printf("c=%.2f",c); } 3、有一函数:?? ???≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。 #include<> main(){ intx,y; printf("输入x :"); scanf("%d",&x); if(x<1){/*x<1*/ y=x; printf("x=%3d,y=x=%d\n",x,y);

}elseif(____x<10_______){/*1≤x-10*/ _____y=2*x-1_______; printf("x=%3d,y=2*x-1=%d\n",x,y); }else{/*x≥10*/ y=3*x-11; printf("x=%3d,y=3*x-11=%d\n",x#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d\n",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }scanf("%d",&x);

C语言程序设计试题集与答案解析

一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10. 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。

13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。 18. 由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19. 用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以 说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。 20.

C语言程序设计50例(经典收藏)

水仙花 #include void main() { int a,b,c,i; for( i=100;i<1000;i++) { a=i/100; b=i%100/10; c=i%10; if(a*a*a+b*b*b+c*c*c==i) { printf("\n"); } } } 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有

的排列后再去掉不满足条件的排列。 2.程序源代码: #include "stdio.h" #include "conio.h" main() { int i,j,k; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } getch(); } 【程序2】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按1 0%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数? 1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 2.程序源代码:

Java语言程序设计基础篇前三章课后习题要点

第1章计算机、程序和Java概述 1.1(显示三条消息)编写程序,显示Welcome to Java、Welcome to Computer Science和Programming is fun。 程序: 显示: 1.2(显示五条消息)编写程序,显示Welcome to Java五次 程序: 显示: 1.3(显示图案)编写一个程序,显示下面的图案:

程序: 显示: 1.4(打印表格)编写程序,显示以下表格: 程序: 显示:

1.5(计算表达式)编写程序,显示(9.5x4.5- 2.5x3)/(45.5- 3.5)的结果 程序: 显示: 1.6(数列求和)编写程序,显示1+2+3+4+5+6+7+8+9的结果 程序: 显示: 1.7(近似求π)可以使用以下公式计算π: Π=4x(1-1/3+1/5-1/7+1/9-1/11+1/13+...) 编写程序,显示4x(1-1/3+1/5-1/7+1/9-1/11+1/13...)的结果。在程序中用1.0代替1 程序: 显示:

第2章基本程序设计 2.1(将摄氏温度转换为华氏温度)编写程序,从控制台读入double型的摄氏温度,然后将其转换华氏温度,并显示结果。转换公式如下所示: Fahrenheit-=(9/5)*celsius+32 (华氏度=(9/5)*摄氏度+32) 程序: 显示: 2.2(计算圆柱体的体积)编写程序,读入圆柱体的半径和高,并使用下列公式计算圆柱体的体积 面积=半径x半径xπ 体积=面积x高 程序: 显示:

2.3(将英尺转换为米)编写程序,读入英尺数,将其转换为米数并显示结果。一英尺等于0.305米。 程序: 显示: 2.4(将磅转换为千克)编写程序,将磅数转换为千克数。程序提示用户输入磅数,然后转换成千克并显示结果。1磅等于0.454千克。 程序: 显示: 2.5(财务应用程序:计算小费)编写一个程序,读入一笔费用与酬金率,就算酬金和总钱数。例如,如果用户读入10作为费用,15%作为酬金率,计算结果显示酬金为$1.5,总费用为$11.5. 程序:

C语言程序设计基础试题及答案

第一部分C语言基础 一、选择题 1、以下正确得C语言标识符就是() A。%X B。a+b?C.a123 D.test! 2、已定义int a,b;则以下不正确得C语句就是() A.a*=5;??B。b/=2;? C.a+=1、75;?D.b&&=a; 3、若x、i、j与k都就是整型变量,则执行下面表达式后x得值为( ) x=(i=4,j=16,k=32) A.4?B.16 ?C.32 D.52 4、C语言中得标识符只能由字母、数字与下划线三种字符组成,且第一个字符( ) A.必须就是字母???B.必须为下划线? C.必须为字母或下划线D.可以就是字母、数字、下划线中得任一字符 5、下面正确得字符常量就是( ) A.“c”? B。’\\”? C.‘w’??D.” 6、设int a=2,b=0,c;则执行语句c+=b&&a--后, c得结果为( )。 A.0,1B.1,0 ?C.2,0 D.不确定 7、以下不正确得C语言标识符就是()?A) int B)a_1_2?C)ab1exe D)_x 8、以下就是正确得C语言标识符就是( )。?A)#define?B)_123 C) %d D) \n 9、下列四组字符串中都可以用作C语言程序标识符得一组就是() 。?A) prin tB)i\am C)Pxq D)str_l ???oodbs tart$it line# _3d one_half My-〉bookCpp ? pow 10、下面各选项组中,均就是C语言关键字得组就是()。?A)auto,enu

m,include B)switch,typedef,continue?C)signed,union,scanf?D)if,s truct,type 11、下列不属于C语言关键字得就是( ) 。 A)default?B)register C)enum ?D)external 12、C语言程序从main()函数开始执行,所以这个函数要写在( )。?A) 程序文件得开始?B)程序文件得最后?C)它所调用得函数得前面 D) 程序文件得任何位置 13、下列关于C语言得叙述错误得就是( ) A)大写字母与小写字母得意义相同?B) 不同类型得变量可以在一个表达式中 C)在赋值表达式中等号(=)左边得变量与右边得值可以就是不同类型?D) 同一个运算符号在不同得场合可以有不同得含义 14、在C语言中,错误得int类型得常数就是( ) 。?A)32768?B)0 C)037?D) 0xAF 15、将字符g赋给字符变量c,正确得表达式就是( )。 A) c=\147 ?B)c="\147" ?C)c='\147' 16、下列转义字符中错误得一个就是( )。 A) ’\000’ B)'\0014' ?C) ’\x111’ D) ’\2’ 17、将空格符赋给字符变量c,正确得赋值语句就是( )。 A) c=’\0’ B) c=NULL C)c=0 D)c=32 18、已知:char a=’\70’;则变量a中()。 A)包含1个字符?B)包含2个字符?C) 包含3个字符?D) 说明非法 19、字符串"\”EOF\n=-\61\””得长度就是( )。 A)8 ?B) 9?C)14?D)非法字符串

c语言程序设计第五版习题答案

习题解析与答案 第1章C语言概述 一.简答题 1.概述C语言的主要特点。 【解答】 (1)语言简洁、紧凑,使用方便、灵活。 (2)数据类型丰富,表达能力强。 (3)运算符多样。C语言中的运算符包含的范围非常广泛。 (4)具有结构化的控制语句。如if…else语句、while语句、do while语句、switch 语句、for语句。 (5)允许直接访问物理地址。C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。 (6)所生成的目标代码质量高,可移植性好。 2.构成C语言程序的基本单位是什么?它由哪几部分组成? 【解答】函数是构成C语言程序的基本单位。一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。 3.C语言程序的运行一般要经过哪几个步骤? 【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。 二.运行程序写结果 1.输入下面程序并运行。 main() { int a1,a2,x; a1=100; a2=50; x=a1-a2; printf(″x=%d\n″,x); } 【解答】运行结果为:x=50 2.输入下面程序并运行。 main() { int a1,a2,x; a1=10; a2=20; x=a1*a2; printf(″a1=%d,a2=%d\n″,a1,a2); printf(″x=%d\n″,x); } 【解答】运行结果为:a1=10,a2=20 x=200 3.输入下面程序并运行。

#include main() { printf("******\n"); printf(" *****\n"); printf(" ****\n"); printf(" ***\n"); printf(" **\n"); printf(" *\n"); } 【解答】运行结果为:****** ***** **** *** ** * 思考:可以修改程序,使之输出平行四边形,等腰三角形等图形。 三.编程题 1.参照本章例题,编写一个C程序,用于显示如下信息: ************************* I love C programs! ************************* 【分析与提示】 ①要有文件包含语句#include 。C语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf等来实现的。这些函数的说明都包括在stdio.h文件中。 ②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。 ③注意显示的信息有三行,所以要用到换行符“\n”。 参考代码: #include main() { printf("************************\n"); printf(" I love C programs! \n"); printf("************************\n"); }

实验6 VBScript脚本语言编程练习

实验六VBScript脚本语言编程练习 【实验目的】 通过本实验,学会使用VBScript脚本语言中的自定义函数、过程、分支语句和循环语句,编写嵌入VBScript代码的ASP程序和HTML程序。 【实验题目】 1、设PI=3.14,分别用两种方式实现,第一种,定义一个求圆面积的函数,调用它求任意 半径的圆面积;第二种,定义求圆面积的过程,调用半径为6的圆面积;(2个题目) 2、用for—next循环语句,实现1到100的平方和; 3、应用Rnd函数和Select Case语句,实现网页每刷新一次,背景色在四种颜色中随机改 变。代码提示:randomize ChangeColor=int((4*rnd())+1) ‘产生四个随机整数 4、练习使用循环语句的嵌套,编写程序在网页上显示要求的图形; 【实验内容及步骤】 提示:(1)在wwwroot文件夹下利用“记事本”应用程序新建一个空白文本文档,双击打此文档后输入相应代码。 (2)输入完毕后点击“文件”—选择“另存为”选项,在弹出的对话框中“文件名” 处输入“area.asp”,再单击“保存”按钮,在wwwroot文件夹下就出现了一个新的文件area.asp。 (3)按照上个实验介绍的方法浏览网页。 6、练习使用JavaScript脚本语言,编写网页特效程序。 1. 水中倒影.htm


2. 文字变色.htm(VBScript特效) 变色的文字 这里,是文本啦,但不支持超连接 你有多少文本他都变色 你把我这些文本换掉吧 只把那些代码按照格式照做就是 3. 地震特效.htm 地震特效

程序设计基础(知识点)

第三部分程序设计基础 3.1 程序、程序设计、程序设计语言的定义 ⑴程序:计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。 ⑵程序设计:程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。 ⑶程序设计语言:程序设计语言用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。 3.2 高级语言和低级语言的概念及区别 ⑴高级语言:高级语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。

它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。 ⑵低级语言:低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。 ⑶区别: 高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差 了解知识:CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码。越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,

年C语言程序设计基础期末考试试卷‘B’及答案

年C语言程序设计基础期 末考试试卷‘B’及答案 The following text is amended on 12 November 2020.

一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、 B. C. D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错 误的是( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语 句为( )。

变量说明:float x1,x2; 数据的输入方式:<回车> <回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%,%”,&x1,&x2); D、scanf(“%%”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围

7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次 9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、 x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式

(完整版)C语言程序设计练习及答案

《C语言程序设计》练习及答案 得分评卷人复查人 一、单选题,每小题1分,共60分(将正确答案的序号写在题目的括号中)。 1、结构化程序设计的三种基本控制结构是(D )。 A、主程序、子程序、函数 B、输入、处理、输出 C、调用,返回,转移 D、顺序、选择、循环 2、下列关于C程序变量的叙述, ( D )是错误的。 A、变量名必须由字母或下划线开头。 B、程序中的变量必须在被使用之前定义。 C、不同的基本类型的变量之间可以混合运算。 D、变量的数据类型决定变量的"作用域"。 3、能将C语言编写的源程序转换为目标程序的软件是(C )。 A、编辑程序 B、汇编程序 C、编译程序 D、解释程序 4、以下符号中,合法的用户标识符是( D )。 A、-p B、int C、3ab D、_xt_ 5、以下选项中,与m=n++完全等价的表达式是( C )。 A、m=++n B、m+=n+1 C、m=n, n=n+1 D、n=n+1,m=n 6、若有定义:int aa[8];。则以下表达式中不能代表数组元aa[1]的地址的是(C )。 A、&aa[0]+1 B、&aa[1] C、&aa[0]++ D、aa+1 7、表达式!5&(7+3)&&(4+5)的值是(A)。 A、0 B、1 C、5 D、9 8、以下选项中非法的C语言表达式是(A )。 A、x+1=x+1 B、0<=x<100 C、i=j==0 D、(char)(65+3) 9、在TURBO C中, int类型变量所占字节数是(B )。 A、1 B、2 C、4 D、8 10、C语言中基本的数据类型包括(B)。 A、整型,实型,逻辑型 B、整型,实型,字符型

(完整版)《C语言程序设计》基本知识点

《C语言程序设计》教学基本知识点 第一章C语言基本知识 1.C源程序的框架 尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 2.C语言源程序的书写规则: (1)C源程序是由一个主函数和若干个其它函数组成的。 (2)函数名后必须有小括号,函数体放在大括号内。 (3)C程序必须用小写字母书写。 (4)每句的末尾加分号。 (5)可以一行多句。 (6)可以一句多行。 (7)可以在程序的任何位置加注释。 3.语句种类 语句是程序的基本成分,程序的执行就是通过一条条语句的执行而得以实现的,根据表现形式及功能的不同,C语言的基本语句可以分为五大类。 (1)流程控制语句 流程控制语句的功能是控制程序的走向,程序的流程有三种基本结构:顺序结构、分支结构和循环结构,任何复杂的程序都可以由这三种基本结构复合而成。其中后两种结构要用特定的流程控制语句实现。 (2)表达式语句 表达式语句的形式是:表达式;,即表达式后跟一分号“;”,分号是语句结束符,是一个语句必不可少的成分。表达式和表达式语句的区别在于表达式代表的是一个数值,而表达式语句则代表一种动作。最常见的表达式语句是赋值语句。 (3)函数调用语句 函数调用语句实际上也是一种表达式语句,形式为:在一次函数调用的小括号后面加上一个分号。 (4)空语句 空语句的形式就是一个分号,它不代表任何动作,常常作为一个意义转折点使用。 (5)复合语句 复合语句从形式上看是多个语句的组合,但在语法意义上它只相当于一个语句,在任何单一语句存在的地方都可以是复合语句。注意复合语句中最后一个语句末尾的分号不能少。复合语句右大括号后面没有分号。 4.运算符 用来表示数据各种操作的符号称为运算符。运算符实际上代表了一种类型数据的运算规则。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。 根据参加操作的数据个数多少,可以将C语言的运算符分为单目运算符,双目运算符和三目运算符(三目运算符只有条件运算符一个)。 根据运算对象和运算结果的数据类型可分为算术运算符、关系运算符、逻辑运算符等。 5.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

C语言程序设计第二版习题参考答案

C语言程序设计第二版 习题参考答案 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

C语言程序设计习题参考答案 习题 1 一、判断题 1.在计算机中,小数点和正负号都有专用部件来保存和表示。 2.二进制是由0和1两个数字组成的进制方式。 3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。 4.在整数的二进制表示方法中,0的原码、反码都有两种形式。 5.有符号数有三种表示法:原码、反码和补码。 6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。 解:1.F2.T 3.T 4.T 5.T 6.T 二、单选题 1.在计算机中,最适合进行数值加减运算的数值编码是。 A. 原码 B. 反码 C. 补码 D. 移码 2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII 码为十进制数。 A. 112 B. 120 C. 121 D. 122 3.关于ASCII码,在计算机中的表示方法准确地描述是。 A. 使用8位二进制数,最右边一位为1 B. 使用8位二进制数,最左边一位为1 C. 使用8位二进制数,最右边一位为0 D. 使用8位二进制数,最左边一位为0 4.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是 ___________。 A. X∧Y=1000 B. X∨Y=1111 C. X⊕Y=0011 D. ˉY=1000 5.下列叙述中正确的是()。 A.高级语言就是机器语言 B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序 C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种 D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。 A.生成可执行文件B.生成目标文件 C.输出运行结果D.自动保存源文件 7.下列叙述中不正确的是()。 A.main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面 C. 函数可以带参数,也可以不带参数。

程序设计基础试题(附答案)

程序设计基础复习题 一、单选 1、一个完整的计算机系统应该包括() A、系统软件和应用软件 B、计算机及其外部设备 C、硬件系统和软件系统 D、系统硬件和系统软件 2、“裸机”的概念是指() A、正在进行设计还没有组装好的计算机 B、已经组装好但还没有安装任何软件的计算机 C、仅安装了操作系统的计算机系统 D、安装了文字处理软件但没有安装专用数据处理系统的计算机 3、世界上第一台电子数字计算机研制成功的时间是() A、1936年 B、1946年 C、1956年 D、1970年 4、CASE的含义是() A、计算机辅助设计 B、计算机辅助制造 C、计算机辅助教学 D、计算机辅助软件工程5、当前广泛使用的微型计算机是() A、第一代 B、第二代 C、第三代 D、第四代 6、当代计算机的体系结构称为是() A、冯·诺依曼机 B、非冯·诺依曼机 C、图灵机 D、比尔盖茨机 7、硬盘是() A、输入设备 B、输出设备 C、存储设备 D、计算设备 8、下面4句话中,最准确的表述是() A、程序=算法+数据结构 B、程序是使用编程语言实现算法 C、程序的开发方法决定算法设计 D、算法是程序设计中最关键的因素

9、计算机能直接执行的语言是() A、机器语言 B、汇编语言 C、高级语言 D、目标语言 10、解释程序的功能是() A、将高级语言程序转换为目标程序 B、将汇编语言程序转换为目标程序 C、解释执行高级语言程序 D、解释执行汇编语言程序 11、下面4种程序设计语言中,不是面向对象式语言的是() A、JAVA B、Object Pascal C、Delphi D、C 12、不是C语言的基本数据类型是() A、int B、double C、char D、bool 13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符() A、/ B、% C、* D、++ 14、数据的逻辑结构分为() A、纯属结构和非线性结构 B、顺序结构和非顺序结构 C、树型结构和图型结构 D、链式结构和顺序结构 15、用链表表示纯属表的优点是() A、便于随机存取 B、便于插入和删除操作 C、花费的存储空间较顺序存储少 D、元素的物理顺序与逻辑顺序相同 16、栈的最主要特点是() A、先进先出 B、先进后出 C、两端进出 D、一端进一端出 17、下面4句结论只有一句是错误的,它是()

C语言程序设计基础

题型及分数: 单选题:25分 判断题:10分 填空题:15分 程序分析题:20分 编程题:30分 其中:课后习题及复习大纲中相类似题所占比例在70%-80%。 带*号的内容和复习题为较难部分,为非重点考察内容。 第一章C语言程序设计基础(出题比例4-6%) 1.程序设计语言的基本概念 ?程序 ?程序设计语言 ?常用程序设计语言及其类型 ?源程序、编译、目标文件、连接、可执行程序 ?编程的步骤 2.C语言程序的基本结构 (1) C源程序的框架 C源程序的框架,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 (2) C语言源程序的书写规则: ?C源程序是由一个主函数和若干个其它函数组成的; ?函数名后必须有小括号,函数体放在大括号内; ?C程序对大、小写字母书写敏感; ?每句的末尾加分号; ?可以一行多句; ?可以一句多行; ?可以在程序的任何位置加注释,注释的方式。 3.C语言程序设计的的基本步骤和调试过程 复习题:/***** 1. 每个C语言程序中有且仅有一个函数,它是程序的入口和出口。 2. 引用C语言标准库函数,一般要用预处理命令将其头文件包含进来。 3. C语言属于() A.高级语言 B. 低级语言 C.中级语言 D. 机器语言 4. C语言规定了若干有特定意义、为C语言专用的单词,称为关键字。 5. C语言的语句以结尾。 6. C语言源程序经过编译以后生成文件,生成的文件名后缀为,经过连接后生成文件,后缀为 7.C语言中不能使用关键字作为标识符。(√)

第二章基本数据类型,运算符与表达式(出题比例20-30%) 关键知识点: 1.常量,变量: a)标识符的命名规则 b)常量,变量的概念:直接常量,符号常量,变量必须先定义后使用 c)变量名和变量值的区别。 2.C语言中的基本数据类型 a)各种数据类型的数据在内存中的存放方式 b)掌握各种数据类型数据的常量使用方法,特别注意字符常量和字符串常量的区别使 用 c)整型,字符型,浮点型变量的定义和引用方法 d)数据的数据类型,数据的取值范围,数据在内存中存放方式三者之间的联系 3.运算符和表达式的使用方法 a)自增、自减运算符 b)赋值运算符 c)算术运算符及表达式 d)逗号运算符及表达式 e)*位运算符及表达式 f)sizeof运算符及表达式 g)*强制数据类型转换符及表达式 4.运算符的优先级和结合性 本章复习题: 课后习题:一、单选题,二、填空题 1. C语言的标识符命名规则中,第一个字符可以为字符‘#’或‘&’ .(×)。 2.下列全部属于合法的用户标识符的是() A.A1 P_0 dS B. float 2la _A C. *a hy kk D. _123 temp main 3. C语言对字母的大小写不敏感。(×) 4. C语言中,符号常量由宏定义命令#define来定义。(√) 5. 在VC 6.0中,数据类型int,char,float和double所占的内存字节数分别是、、和。 6.下列四个选项中,均是合法的整型常量的选项是A A.160 –0XFFFF 011 B。-0XCDF 01A 0XE C.-01 986,012 0688 D。-0X48a 2e5 0x

计算机语言程序设计

《计算机语言程序设计》复习指导与练习 江苏广播电视大学林小宁 “计算机语言程序设计”采用C语言作为教学语言。通过本课程的学习,使学生能够熟悉C 语言,了解它们的特点,初步掌握利用C语言编程解决各种实际应用的基本方法,为今后正确运用它打下基础。为帮助同学们更好的学习与考试,这里对本课程的学习及考试要求作比较详细的说明。 1.基本要求: 1.了解C语言的用途、特点以及上机运行C语言程序的基本步骤; 2.掌握C语言各种数据类型的定义与使用方法; 3.熟练掌握利用C语言的三种基本结构编制简单程序的方法; 4.掌握C语言函数的定义、调用及说明的方法; 5.掌握C语言指针、结构体与共用体变量的使用方法,能正确运用它们; 6.掌握文件的有关操作。 2.考核说明 (1)本课程实行全省统一考试,采用闭卷笔试形式,时间为120分钟; (2)考试内容不超出本复习指导要求内容,相关题型见后续综合练习(具体题目仅供参考); (3)最终成绩评定可按考试80%、上机实验与平时作业20%计算。 3.练习 为使学生更好的复习考试,本练习给出了有关考试的题型及相应的比例,其中:填空题(每空2分,共30分)、单项选择题(每小题2分,共30分)、阅读程序题(20分)、改错题(10分)、编程题(10分)。本练习只作为考试题型的参考,希望学生在复习中着重掌握对基本概念及编程方法的理解。 1)填空题 1.C程序的基本单位是()。 2.一个C程序中至少应包括一个()。 3.结构化程序设计的三种基本结构是:()、()和()。 4.在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为()。 5.C语言中的标识符只能由三种字符组成,它们是(),(),()。 6.进行求余运算时,%两侧均应为()数据。 7.若有定义int k,j;运算表达式k=(j=3,j+2,++j,j++)后,变量k的值是();变量j的值是()。 8.表达式23>16&&12||2的值为(),表达式(23>16&&12)+2的值为()。 9.表达式246!=246/2*2的值为(),表达式246==247/2*2的值为()。 10.在C语言中,二维数组元素在内存中的存放顺序为()。 11.执行语句printf("\n%d\n",strlen("C语言程序设计"));后,输出结果为() 12.执行语句printf("%d\n",strcmp("Windows 98","Windows 95")>0?1:-1);后,输出结果为()。 13.C语言规定,可执行程序的开始执行点是()。 14.在C语言中,一个函数一般由两部分组成,它们是()和()。 15.在C程序中,调用函数时应保证实参和形参在()和()一致。 16.C程序中定义的变量,代表内存中的一个()。 17.在C程序中,指针变量能够赋()值或()值。

C语言程序设计基础测试题-答案

C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2] 下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4] 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6] C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8] 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处

《C语言程序设计基础》 试卷A及参考答案

《c语言程序设计基础》试卷 (A卷) 考试时间:90分钟闭卷任课老师: 班级:学号:姓名:成绩: (每小题2分,共30分) 、由C++源文件编译生成的目标文件的缺省扩展名为() A、cpp B、exe C、obj D、lik 2、下列中,不是C++合法的标识符() A、2mn B、m123 C、kk D、a_1 3、C++中,基本数据类型不包括() A、int B、float C、char D、class 4、x和y均为bool量,则x| |y为真的条件是() A、它们均为真 B、其中一个为真 C、它们均为假 D、其中一个为 5、C++中,一个字符型数据在内存中占()字节。 A、4 B、2 C、1 D、8 6、字符串常量”hello”的长度是() A、5 B、6 C、7 D、8 7、以下语句,int i=2,j=2,m,n;m=i++;n=++j;则m,n,i,j的值分别为() A、2,3,2,2 B、2,3,3,3 C、2,2,3,3 D、3,3,2,2 8、假定a为一个整型数组名,则元素a[4]的字节地址为()

A、a+4 B、a+8 C、a+16 D、a+32 9、 x>0 || y==5的相反表达式为()。 A、 x<=0 || y!=5 B、 x<=0 && y!=5 C、 x>0 || y!=5 D、 x>0 && y==5 10、在下面的函数声明中,存在着语法错误的是() A、void BC(int a , int) B、void BD(int , int) C、void BE(int , int=5) D、int BF(int x ; int y) 11、循环体至少被执行一次的语句为()。 A、for循环 B、while循环 C、do循环 D、任一种循环 12、已知一函数中有下列变量定义,其中属于静态变量的是() A、int a=5; B、static double b; C、register char c; D、auto short d; 13、do语句能够改写为()语句。 A、复合 B、if C、switch D、 while 14、要使语句: p=new int[10]; 能够正常执行,p应定义为() A、int p; B、int p[10]; C、int *p; D、int (*p)[10]; 15、编写C++程序一般需经过的几个步骤依次是( )。 A、编译、编辑、连接、调试 B、编辑、编译、连接、调试 C、编译、调试、编辑、连接 D、编辑、调试、编辑、连接 二、填空题(每小题1分,共10分) 1、使用const 语句定义一个标识符常量时,则必须对它同时进行。 2、用于输出表达式值的标准输出流对象是_________,用于从键盘上为变量输入

C语言程序设计习题答案

C 语言程序设计习题答案 习题一 C 语言程序设计概述 一、名词解释 (1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2 (5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4 (9)结构化的程序设计P9 二、简述题 1. 设计程序时应遵循哪些基本原则?P4 答:正确性、可靠性、简明性、有效性、可维护性、可移植性。 2. 算法的要素是什么?算法具有哪些特点? 答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。 3. 算法的表示形式有哪几种? 答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。 4. 有哪三种基本结构? 答:三种基本结构是:顺序结构、选择结构和循环结构。 5. 传统流程图与N-S 流程图最大的区别是什么? 答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。 三、用传统流程图、N-S 图分别表示求解以下问题的算法。 1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。 2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。 3. 求1+2+3+…+100的值。

5. 求下列分段函数的值。 6. 求100~200之间的所有素数。 7. 求一元二次方程ax 2+bx+c=0的根。分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。 四、注释下面C 程序的各个组成部分。 main() /*主函数 */ { /*程序开始 */ int a,k,m; /*定义三个用来存放整数的变量 */ a=10; /*将整数10赋值给变量a */ k=2; /*将整数2赋值给变量k */ m=1; /*将整数1赋值给变量1 */ a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */ printf("%d\n",a); /*在屏幕上打印出变量a 的值 */ } /*程序结束 */ 习题二 数据类型、运算符与表达式 一、选择题 1~10:BCDCB DDBCA 11~20: ADDAA DBADC 21~28: DABAD CDD Y= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1

相关文档
最新文档