当前位置:文档之家› C++基本语句练习题

C++基本语句练习题

C++基本语句练习题
C++基本语句练习题

选择题

1.下列语句中不属于控制语句的是()

A. for语句

B. if语句

C. goto语句

D. 函数调用语句

2.以下关于结构化程序设计方法的叙述中,错误的是()

A. 结构化程序设计方法禁止使用goto语句

B. 可以使用goto语句与if语句组合构成循环结构

C. 虽然使用goto语句容易导致程序流程无规律,可读性差,但是用goto语句有时也可以简化程序。

D. 使用goto语句控制程序的执行流程不符合结构化程序设计方法的基本原则

3.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{

char a,b;

a=’B’;

b=’A’;

cout<

putchar(a);

cout<

putchar(b);

system(“pause”);

return 0;

}

A. aBbA

B. aabb

C. BBAA

D. BaAb

4.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{

unsigned int a=65535;

cout<<”a=”<

return 0;

}

A. a=-1,177777,ffff

B. a=65535,65535,65535

C. a=-1,65535,ffff

D. a=65535,177777,ffff

5.下列程序运行后的输出结果是()

#include

#include

using namespace std;

int main()

{ int x=’f’;

printf(“%c \n”,’A’+(x-‘a’+1));

return 0;

}

A. G

B. H

C. i

D. J

6.以下程序运行后的输出结果是()

using namespace std;

int main()

{

double d=3.2;

int x,y;

x=1.2; y=(x+3.8)/5.0;

printf(“%d\n”,d*y);

system(“pause”);

return 0;

}

A. 3

B. 3.2

C.0

D.3.07

7.下面程序运行后的输出结果是(小数点后只保留一位)() #include

#include

using namespace std;

int main()

{ double d; float f; long l; int i;

i=f=l=d=20/3;

printf(“%d %ld %f \n”, i,l,f,d);

return 0;

}

A. 6 6 6.0 6.0

B. 6 6 6.7 6.7

C. 6 6 6.0 6.7

D. 6 6 6.7 6.0 8.以下程序的功能是输入半径r的值,然后计算其圆面积s。

#include

#include

using namespace std;

int main()

/* Beginning */

{ int r; float s;

scanf(“%d”,&r);

s=π*r*r; printf(“s=%f\n”,s);

return 0;

}

程序在编译时出错,出错的原因是()

A. 注释语句书写位置错误

B. 存放圆半径的变量r不应定义为整形

C. 输出语句中格式描述符非法

D. 在计算圆面积的赋值语句中使用了非法变量

9.有以下程序:

#include

#include

using namespace std;

int main()

{ char c1=’1’, c2=’2’;

c1=getchar(); c2=getchar(); putchar(c1); putchar(c2);

当运行时输入a<回车>后,以下叙述正确的是()

A. 变量c1被赋予字符a,c2被赋予回车符

B. 程序将等待用户输入第2个字符

C. 变量c1被赋予字符a,c2中仍是原有字符2

D. 变量c1被赋予字符a,c2中将无确定值

10.以下程序运行后的输出结果为()

#include

using namespace std;

int main()

{ int a=5;

cout<

a=(3*5,a+4);

cout<<”,a=”<

return 0;

}

A. a=14, a=18

B. 5,a=15

C. 14,a=18

D. 14,a=19

11.当a=1、b=3、c=5、d=4时,执行下面一段程序后,x的值为() if(a

if(c

else

if(a

if(b

else x=3;

else x=6;

else x=7;

A. 1

B. 2

C. 3

D. 6

12.若a、b、c1、c2、x、y均是整型变量,则正确的switch语句是()

A. switch(a+b)

B. switch(a*a+b*b)

{ case 1: y=a+b; break; { case 3: case 1: y=a+b; break;

case 0: y=a-b; break;} case 3: y=b-a; break; }

C. switch(a)

D. switch(a-b)

{ case c1: y=a-b; break; { default: y=a*b; break;

case c2: x=a*d; break; case 3: case 4: x=a+b; break;

default: x=a+b; } case 10: case 11: y=a-b; break; } 13.以下程序运行后的输出结果为()

#include

using namespace std;

int main()

{ int a=-1, b=1, k;

if((++a<0)&&!(b--<=0))

cout<

else

cout<

return 0;

}

A. -1 1

B. 0 1

C. 1 0

D. 0 0

{ int a=2,b=-1,c=2;

if(a

if(b<0) c=0;

else c++;

cout<

return 0;

}

A. 0

B. 1

C. 2

D. 3

15.设x、y、z、t均为int型变量,则执行以下语句后,t的值为() x=y=z=1;

t=++x||++y&&++z;

A. 不定值

B. 2

C. 1

D. 0

16.若输入B,以下程序运行后的输出结果为()

#include

using namespace std;

int main()

{ char grade;

cin>>grade;

switch(grade)

{ case ‘A’: cout<<”>=85.”;

case ‘B’:

case ‘C’: cout<<”>=60.”;

case ‘D’: cout<<”<60.”;

default: cout<<”error.”;

}

return 0;

}

A. >=85.

B. >=60

C. >=60.<60.error.

D. error.

17.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int a,b,c=246;

a=c/100%9;

b=(-1)%%(-1);

cout<

return 0;

}

A. 2,1

B. 3,2

C. 4,3

D. 2,-1

18.设有如下定义,则执行表达式(m=a>b)&&(n=c>d)后,n的值为() int a=1,b=2,c=3,d=4,m=2,n=2;

A. 1

B. 2

C. 3

D. 0

19.若变量c为char类型,能正确判断出c为小写字母的表达式是()

A. ‘a’<=c<=’z’

B. (c>=’a’)||(c<=’z’)

C. (‘a’<=c)and(‘z’>=c)

D. (c>=’a’)&&(c<=’z’)

{ int n;

cin>>n;

if(n++<10) cout<

else cout<

return 0;

}

A. 11

B. 10

C. 9

D. 8

21.有以下函数:

0 (x=0)

y= 1 (x>0)

-1 (x<0)

在下面的程序中,不能正确输出y值的是()

A.#include

B.#include

using namespace std; using namespace std;

int main() int main()

{ int x, y; { int x, y;

cin>>x; cin>>x;

if(x<0) y=-1; if(x>=0)

else if(x==0) y=0; if(x>0) y=1;else y=0;

else y=1; else y=-1;

cout<<”x=”<

return 0; } return 0;}

C. #include

D. #include

using namespace std; using namespace std;

int main() int main()

{ int x,y; { int x,y;

cin>>x; cin>>x;

y=1; y=0;

if(x<=0) if(x>=0)

if(x<0) y=-1; if(x>0) y=1;

else y=0; else y=-1;

cout<<”x=”<

return 0; } return 0; }

22.逻辑运算符两侧的运算对象的数据类型是()

A. 只能是0或1

B. 只能是0或非0正数

C. 只能是整型或字符型数据

D. 可以使任何类型的数据

23.对于以下程序说明正确的是()

#include

using namespace std;

int main()

{ int x, y;

cin>>x>>y;

if(x>y)

x=y;y=x;

cout<

return 0;

}

A. 语法错误,不能通过编译

B. 若输入数据3和4,则输出4和5

C. 若输入数据4和3,则输出3和4

D. 若输入数据4和3,则输出4和4 24.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ float x=2.0, y;

if(x<0.0) y=0.0;

else if(x<10.0) y=1.0/x;

else y=1.0;

cout<

return 0;

}

A. 0.000000

B. 0.250000

C. 0.500000

D. 1.000000

25.为避免在嵌套的条件语句if…else中产生二义性,C++规定else子句总是与()配对

A. 缩排位置相同的if

B. 其之前最近且尚未配对的if

C. 其之后最近的if

D. 同一行上的if

26.若运行时给变量输入12,则以下程序运行后的结果是()

#include

using namespace std;

int main()

{ int x,y;

cin>>x;

y=x>12?x+10:x-12;

cout<

return 0;}

A. 0

B. 22

C. 12

D. 10

27.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int k=4, a=3, b=2,c=1;

cout<<(k

return 0; }

A. 4

B. 3

C. 2

D.1

28.执行以下程序段后,变量a、b、c的值分别是()

int x=10, y=9;

int a, b, c;

a=(--x==y++)?—x:++y;

b=x++;

c=y;

A. a=9, b=9, c=9

B. a=8, b=8, c=10

C. a=9, b=10, c=9

D. a=1, b=11, c=10

29.以下程序运行后的输出结果是()

int main()

{ int x=1, a=0, b=0;

switch(x)

{ case 0: b++;

case 1: a++;

case 2: a++; b++;

}

cout<<”a=”<

return 0;

}

A. a=2,b=1

B. a=1,b=1

C. a=1,b=0

D. a=2,b=2

30.设x、y和z是int型变量,且x=3、y=4、z=5,则下列表达式中,其值为0的是()

A. x&&y;

B. x

C. x||y+z&&y-z

D. !((x

31.设a为int型,则与表达式a等价的C语言关系表达式是()

A. a>0

B. a!=0

C. a==0

D.a<0

32.执行以下语句后,变量x、y的值分别为()

if((x=y=2)>=x&&(x=5)) y*=x;

A. 2、4

B. 5、2

C. 5、10

D. 执行时报错

33.下面程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int m=5;

if(m++>5) cout<

else cout<

return 0;

}

A. 4

B. 5

C. 6

D. 7

34.以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是()

A. if((a>b)&&(b>c)) k=1;

B. if((a>b)||(b>c)) k=1;

else k=0;

C. if(a<=b) k=0;

D. if(a>b) k=1;

else if(b<=c) k=1; else if(b>c) k=1;

else k=0;

35.下面程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int x=1,y=2;

if(!x)

{ x++;

cout<<”x=”<

}

else if(y)

{ y++;

cout<<”y=”<

}

A. x=1

B. y=2

C. x=2

D. y=3

36.执行下列程序,当输入的字符为’n’时,下面程序的输出结果是() #include

#include”stdafx.h”

int main()

{ char ch=0;

cout<<”Enter a charcter(Y/N): “;

cin>>ch;

switch(ch)

{ case ‘y’:

case ‘Y’:{cout<<”Yes! \n”; break;}

case ‘n’:

case ‘N’:{cout<<”No! \n”; break;}

default: {cout<

}

return 0;

}

A. Yes!

B. No!

C. 无输出

D.ch

37.执行下列程序,当输入-3.5,时,下面程序的输出结果是() #include

using namespace std;

int main()

{ int result;

float x;

cin>>x;

switch(x==0)

{ case 1: {result=0; break;}

case 0:

switch(x>0)

{ case 1: {result=1; break;}

default:{result=-1; break;}

}

}

cout<

return 0;

}

A. 0

B. 1

C. -1

D. 编译出错

38.以下程序中的循环体的执行次数是()

#include

using namespace std;

int main()

{ int s=0; i=5;

while(s+=i,i-=2)

cout<

getchar();

A. 5

B. 9

C. 15

D. 死循环

39.与循环结构while(!x) {…}中的循环条件等价的是()

A. x>0

B. x==0

C. x<0

D. !x!=0

40.关于循环结构for(表达式1;表达式2;表达式3)的叙述中,正确的是()

A. for循环结构的执行过程与do…while循环结构相同

B. 如果省略表达式1,则形成死循环

C. 如果省略表达式2,则形成死循环

D. 如果省略表达式3,则形成死循环

41.以下关于循环结构的叙述中,错误的是()

A. do-while循环结构中的循环体至少被执行一次

B. while循环结构中的循环体有可能一次也不执行

C. for循环结构中的循环体有可能一次也不执行

D. 三种循环结构中的循环体都有可能一次也不执行

42.关于循环结构while(a>b>c){…}的正确叙述是()

A. 当a>b且b>c时,循环条件成立,执行循环体

B. 当a>b且c>0时,循环条件成立,执行循环体

C. 当a

D. 循环结构中的条件表达式有语法错误

43.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int s=0, i=1;

do

{ s=s+i++;

}

while(++i<10);

cout<

return 0;

}

A. 0

B. 15

C. 25

D. 55

44.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int s, i;

for(s=0,i=0;i<=100;s=s+i++);

cout<

return 0;

}

A. 4950

B. 5050

C. 5151

D. 5049

45.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int x=0, s=0;

switch(x%2)

{ case 0: s=s*x; continue; break;

case 1: s=s+x;

}

}

cout<

return 0;

}

A. 125

B. 129

C. 157

D. 程序中有语法错误,continue与break语句不能连用46.以下程序运行后的输出结果()

#include

using namespace std;

int main()

{ int x, s;

for(x=0,s=0;x<=10;x++)

{ if(x%3==0) continue;

else { if(x%4==0) continue;

else s+=x;

if(s%5==0) break;

}

}

cout<

return 0;

}

A. 5

B. 15

C. 25

D. 35

47.与下列程序等价的程序是()

#include

using namespace std;

int main()

{ int i, s;

for(i=1,s=0;i<=100;i++) s+=i;

cout<

return 0;

}

A. #include

B. #include

using namespace std; using namespace std;

int main() int main()

{ int i, s { int i,s;

for(i=0,s=0;i++<=100;) s+=i; for(i=1,s=0;i++<100;s+=i);

cout<

return 0; return 0;

} }

C. #include

D. #include

using namespace std; using namespace std;

int main() int main()

{ int I, s; { int I, s;

return 0; return 0;

} }

48.以下程序运行后的输出结果是()

#include

using namespacestd;

int main()

{ int a=1, b=2, c=3;

while(a

cout<

return 0;

}

A. 0

B. 1

C. 2

D. 3

49.以下程序运行后的输出结果是()

#include

using namespace std;

int main()

{ int a=3, b=2,c=1, t=0;

while(a>b>c) t=b;b=c;c=t;

cout<

return 0;

}

A. 3 2 1

B. 3 0 1

C. 3 1 0

D. 3 0 2

50.以下程序的运行结果是()

#include

using namespace std;

int main()

{ int I,s=0, p=1;

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

{ p*=I;

s+=p;

}

cout<

return 0;

}

A. 15

B. 120

C. 153

D. 179

51.以下程序的功能为:判断一个正整数是否为一个素数,程序中的划线处应为() #include

using namespace std;

int main()

{ int x, I;

cin>>x;

for( i=2;i<=x-1;i++)

if(x%i==0)________;

if(i==x) cout<

else cout<

return 0;

52.以下程序的运行结果是()

#include

using namespace std;

int main()

{ int x, s=0;

for(x=1;x<=5;x++)

{ switch(x%3)

{ case 0:

default: s+=3;

case 1: s+=1; break;

case 2: s+=2;

}

}

cout<

return 0;

}

A. 6

B. 7

C. 10

D. 13

53.设变量已正确定义,则以下能正确计算f=n!的程序段是()

A. f=0;

B. f=1;

for(i=1;i<=n;i++) f*=I; for(i=1;i<=n;i++) f*=I;

C. f=1;

D. f=1;

for(i=n;i>1;i++) f*=i; for(i=n; i>=2;i--) f*=I; 54.以下程序的运行结果是()

#include

using namespace std;

int main()

{ int I, j;

for(j=10; j<11; j++)

{ for(i=9;i

if(!(j%i))

break;

if(i>=j-1)

cout<

}

return 0;

}

A. 11

B. 10

C. 9

D. 10 11

55.有以下程序段:

int n=0, p;

do

{ cin>>p;

n++;

} while(p!=12345&&n<3);

此处do…while循环的结束条件是()

A. p的值不等于12345并且n的值小于3

B. p的值等于12345并且n的值大于等于3

填空题

1.以下程序运行后的输出结果是________

#include

using namespace std;

int main()

{ int a=1, b=2;

a=a+b; b=a-b; a=a-b;

cout<

return 0;

}

2.以下程序的运行结果是_________

#include

using namespace std;

int main()

{ int x, y, z;

x=24;

y=024;

z=0x24;

cout<

return 0;

}

3.以下程序的输出结果是_________

#include

using namespace std;

int main()

{ int y=3, x=3, z=1;

cout<<(++x,y++)<<”“<

return 0;

}

4.以下程序运行后的输出结果是________

#include

using namespace std;

int main()

{ char c; int n=100;

float f=10; double x;

x=f*=n/=(c=50);

cout<

return 0;

}

5.下面程序运行后的输出结果是_________

#include

using namespace std;

int main()

{ int a=-1, b=1, k;

if((++a<0)&&!(b--<=0))

cout<

return 0;

}

6.下面程序运行后的输出结果是__________

#include

using namespace std;

int main()

{ int n=’c’;

switch(n++)

{ default: cout<<”error”; break;

case ‘a’:

case ‘A’:

case ‘b’:

case ‘B’: cout<<”good”; break;

case ‘c’:

case ‘C’: cout<<”pass”;

case ‘d’:

case ‘D’: cout<<”warn”;

}

cout<

return 0;

}

7.下面程序运行后的输出结果是_______

#include

using namespace std;

int main()

{ int I, j, x=0;

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

{ x++;

for(j=0; j<3; j++)

{ if(j%2) continue;

x++;

}

x++;

}

cout<<”x=”<

return 0;

}

8.下面程序运行后的输出结果是_________

#include

using namespace std;

int main()

{ int n=9;

while(n>6)

{ n--;

cout<

}

9.以下程序运行后的输出结果是_________

#include

using namespace std;

int main()

{ int x=20;

while(x>10&&x<50)

{ x++;

if(x/3)

{ x++;

break;

}

else

continue;

}

cout<

return 0;

}

10.C++提供的3种逻辑运算符按优先级由高到低依次是_________

11.以下程序运行后的输出结果是__________

#include

using namespace std;

int main()

{ int m=5;

if(m++>5) cout<

else cout<

return 0;

}

12.以下程序运行后的输出结果是_________

#include

using namespace std;

int main()

{ int a=5,b=5, y, z;

y=b-->++a?++b:a;

z=++a>b?a:y;

cout<

return 0;

}

13.以下程序的运行结果是__________

#include

using namespace std;

int main()

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

a=10; b=2;

c=!(a%b);x=!(a/b);

y=(a=0);

z=(a=0);

}

14.以下程序的运行结果是_________

#include

using namespace std;

int main()

{ int a,b,d=241;

a=d/100%9;

b=(-1)&&(-1);

cout<

return 0;

}

15.有以下定义:

int x=10, y=20, z=30;

执行下列语句后,x, y, z的值是________

if(x>y)

z=x;x=y;y=z;

16.以下程序的运行结果是________

#include

using namespace std;

int main()

{ if(2*2==5<2*2==4) cout<<”T”;

else cout<”F”;

return 0;

}

17.以下程序的运行结果是________

#include

using namespace std;

int main()

{ int x,y=-2,z=0;

if((z=y)<0) x=4;

else if(y==0) x=5;

else x=6;

cout<

if(z=(y==0)) x=5;

x=4;

cout<

if(x=z=y) x=4;

cout<

return 0;

}

18.为了使输出结果是t=4,输入量a和b应满足的条件是________

#include

using namespace std;

int main()

{ int s, t, a, b;

cin>>a>>b;

if(a>0) s=s+1;

if(a>b) t=s+t;

else if(a==b) t=5;

else t=2*s;

cout<<”s=”<

return 0;

}

19.以下程序运行后的输出结果是__________

#include

using namespace std;

int main()

{ int a=5,b=4,c=6, d;

cout<<(d=a>b?(a>c?a:c):(b))<

return 0;

}

20.以下程序的运行结果是________

#include

using namespace std;

int main()

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

a=c=0;

b=1;

d=20;

if(a) d= d-10;

else if(!b)

if(!c) x=15;

else x=25;

cout<

return 0;

}

21.以下程序运行后的输出结果是_______

#include

using namespace std;

int main()

{ int x=1, y=0, a=0, b=0;

switch(x)

{ case 1:

switch(y)

{ case 0: a++;break;

case 1: b++; break;

}

case 2: a++, b++; break;

case 3: a++; b++; break;

default: a++; b++;

}

cout<<”a=”a<<”, b=”<

22.以下程序的运行结果是______

#include

using namespace std;

int main()

{ int a=2, b=7, c=5;

switch(a>0)

{ case 1:switch(b<0)

{ case 1:cout<<”@”;break;

case 2:cout<<”!”; break;

}

case 0: switch(c==5)

{ case 0: cout<<”*”;break;

case 1:cout<<”#”;break;

default: cout<<”#”; break;

}

default: cout<<”&”;

}

return 0;

}

23.若w=1、x=2、y=3、z=4,则条件表达式w

24.以下程序的运行结果是___________

#include

using namespace std;

int main()

{ int a=-10, b=-3;

cout<<(-a%b)<

cout<<(a-b,a+b)<

cout<<(a-b?a-b:a+b)<

return 0;

}

25.若有说明语句:

int x=1, y=0;

则以下表达式的值是________

x-->(y+x)?5:25>y++?’1’:’2’

判断题

1.复合语句中包含的简单语句数量必须大于或等于2.

2.在C++中,空语句表示什么都不做,因此毫无意义。

3.关系运算符的优先级高于逻辑运算符。

4.条件运算符是C++中唯一的三元运算符,所以它的优先级比其他的一元和二元运算符都低。

5.在switch语句中,case后面的常量表达式具有条件判断作用。

6.在while(x=0) {…}循环结构中是否执行循环体的语句,取决于变量x的值是否等于0。

程序填空题

1.以下程序的功能为:输出一个整书中各位数中的最大值,如输入为12864,则输出结果为8。填空补充程序。

#include

using namespace std;

while(x>0)

{ if(_______>max) max=_______;

x=x/10;

}

cout<

getchar();

return 0;

}

2.以下程序的功能为:判断输出3~100之间的所有素数。填空补充程序。

#include

using namespace std;

int main()

{ int x, I;

for(x=3;x<=100;x++)

{ if(x%2==0)_______;

for(i=2;i<=x-1;i++) if(x%i==0) ______;

if(i==x) cout<

}

getchar();

return 0;

}

3.以下程序的功能是:输出如下形式的方阵。填空补充程序。

13 14 15 16

9 10 11 12

5 6 7 8

1 2 3 4

#include

#include

using namespace std;

int main()

{ int I,j,x;

for(j=4;j_______;j--)

{ for(i=1;i<=4;i++)

{ x=(j-1)*4+____;

cout<

}

cout<

}

return 0;

}

4.以下程序计算x、y、z三个数中的最小值。填空补充程序中的语句。

#include

#include

#include

using namespace std;

u=x

v=u

printf(“%d”,v);

return 0;

}

5.根据以下嵌套的if语句所给的条件,填写switch语句,使它完成相同的功能。设mark取值在1~100之间。填空

补充程序中的语句。

if 语句:

if(mark<60) k=1;

else if(mark<70) k=2;

else if(mark<80) k=3;

else if(mark<90) k=4;

else if(mark<=100) k=5;

switch语句:

switch______

{ _____: k=1; break;

case 6: k=2; break;

case 7: k=3; break;

case 8: k=4; break;

_____: k=5;

}

算法初步练习题(附详细答案).doc

算法初步练习题 一、选择题: 1.阅读下面的程序框图,则输出的S = A .14 B .20 C .30 D .55 2.阅读图2所示的程序框图,运行相应的程序,输出的结果是 A .1 B. 2 C. 3 D. 4 3.阅读右图所示的程序框图,运行相应的程序,输出的结果是 A .2 B .4 C .8 D .16 4.某程序框图如图所示,该程序运行后输出的k 的值是 A .4 B .5 C .6 D .7 5.执行右面的程序框图,输出的S 是 3题 2题 1题 4题

A .378- B .378 C .418- D .4186.如图的程序框图表示的算法的功能是 A .计算小于100的奇数的连乘积 B .计算从1开始的连续奇数的连乘积 C .从1开始的连续奇数的连乘积,当乘积大于100时,计算奇数的个数 D .计算100531≥???????n 时的最小的n 值. 7.右图是把二进制数)2(11111化为十进制数的一个程序框图,判断框内应填入的 条件是 A .4i > B .4i ≤ C .5i > D .5i ≤ 8.某程序框图如图所示,则该程序运行后输出的B 等于 A .15 B .29 C .31 D .63 5题 6题

9.如果执行右边的程序框图,输入2,0.5x h =-=,那么输出的各个数的和等于 A .3 B .3.5 C .4 D . 10.某店一个月的收入和支出总共记录了N 个数据1a ,2,,N a a ???,其中 收入记为 正数,支出记为负数。该店用右边的程序框图计算月总收入S 和月 净盈利V ,那么在图中空白的判断框和处理框中,应分别填入下列四个选项中 的 A .0,A V S T >=- B .0,A V S T <=- C .0,A V S T >=+ D .0,A V S T <=+ 11. 如图1所示,是关于闰年的流程,则 以下年份是闰年的为 A .1996年 B .1998年 C .2010年 D .2100年 12. 某流程如右上图所示,现输入如下四个函数,则可以输出的函数是 否 y x = 是 否 开始 0x < 0y = x x h += 是 结束 1x < 输入,x h 否 是 1y = 输出y 2x ≥ 是 开始 1,0,0k S T === i A a = 输出,S V 1k k =+ 否 结束 输入12,,,,N N a a a ??? T T A =+ S S A =+ N k < 是 否 10题 11题 9题

C语言一些常用语句

C语言一些常用语句 2010-03-25 09:55 423人阅读评论(0) 收藏举报一break 1. break语句形式:break; 2. break语句功能: A. switch语句中,break语句会终止其后语句的执行,退出switch语句。 B. 使一个循环立即结束,也就是说在循环中遇到break语句时,循环立即终止, 程序转到循环体后的第一个语句去继续执行。 3. 注: A. break语句在循环中使用时,总是与if一起使用,当条件满足(或不满足) 时,负责退出循环。 B. 如果循环体中使用switch语句,而break出现在switch语句中,则它只用 于结束switch,而不影响循环。 C. break语句只能结束包含它的最内层循环,而不能跳了多重循环。 4. 例: break语句的执行只能从while循环中退出,继续执行for循环的其它语句 而不是退出外层循环。 for() { : : while()

{ : : if() break; : : } : : } 二。continue 1.continue语句形式:continue; 2.continue语句功能:它只能出现在循环体中,其功能是立即结束本次循环, 即遇到continue语句时,不执行循环体中continue后的语句,立即转去判断循环条件是否成立。 3.Continue与break语句的区别: continue只是结束本次循环,而不是终止整个循 环语句的执行,break则是终止整个循环语句的 执行,转到循环语句后的下一条语句去执行。 程序表达式及流程图如下:

(1.) while(表达式1) (2.)while(表达式1) { { : : If(表达式2) break; if(表达式2) continue; : : } } 三.goto 1.goto语句形式:goto语句是无条件转向语句,其一般形式为: goto 语句标号; 2.功能:goto语句往往用来从多重循环中跳出。它在解决一些特定问题时很方便,但由于goto语句难于控制,尽量少用。 3.例: IN: For() { : : Goto IN; }

高中数学必修三同步练习题库:基本算法语句(填空题:容易)

基本算法语句(填空题:容易)1、语句“For I From 2 To 20”表示循环体被执行_____次 2、执行右边的程序框图,输出的T= . 3、下面的程序输出的结果= 4、执行图程序中,若输出y的值为2,则输入x的值为______ 5、根据如图所示的伪代码,当输入的值为4时,输出的值为_______.

6、根据下列程序,当的输入值为2,的输入值为-2时,输出值为,则__________. 7、阅读下列伪代码,当,的输入值分别为2,3时,则输出的实数的值是__________.Read , If Then Else End If Print 8、下面的表述: ①6=p;②a=3×5+2;③b+3=5;④p=((3x+2)-4)x+3; ⑤a=a3;⑥x,y,z=5;⑦ab=3;⑧x=y+2+x. 其中是赋值语句的序号有________.(注:要求把正确的表述全填上)

9、在如图所示的算法中,输出的的值是. 10、将八进制53转化为二进制的数结果是: 11、读程序,输出的结果是. 12、如果执行如图所示的程序,则输出的数=____ ____. 13、,最后的值为. 14、若把英语单词“error”的字母顺序写错了,则可能出现的错误共有________种.

15、右边的程序中, 若输入,则输出的. 16、根据如图所示的伪代码,最后输出的的值为. 17、根据如图所示的伪代码,最后输出的的值为. 18、计算机的程序设计语言很多,但各种程序语言都包含下列基本的算法语句:,,,,。

19、已知某算法的流程图如图所示,则程序运行结束时输出的结果为. 20、有以下程序: A="-6" B="2" If A<0 then A="-A" END if B="B^2" A="A+B" C="A-2*B" A="A/C" B="B*C+1" Print A,B,C 输出结果是______,________,_________.

【试卷】新课标人教A版数学必修3第1章练习:1.3基本算法语句练习卷

基本算法语句练习 1.下列语言中,哪一个是输入语句 ( ) A.PRINT B.INPUT C.IF D.LET 2.右边程序的输出结果为 ( ) A . 3,4 B . 7,7 C . 7,8 D . 7,11 3. 将两个数a=8,b=17交换,使a=17,b=8,下面语句正确一组是 ( ) A . B . C . D . 4.下列给出的赋值语句中正确的是 ( ) A 、3=A B 、M=—M C 、B=A=2 D 、x+y=0 5.A=15,A=-A+5,最后A 的值为 ( ) A .-10 B .20 C .15 D .无意义 6.下列选项那个是正确的( ) A 、INPUT A; B B. INPUT B=3 C. PRINT y=2*x+1 D. PRINT 4*x 7.下面为一个求20个数的平均数的程序,在横线上应填充的语句为 ( ) A. i>20 B. i<20 C. i>=20 D. i<=20 8、如果右边程序执行后输出的结果是990,那么 在程序until 后面的“条件”应为( ) A.i > 10 B. i <8 C. i <=9 D.i<9 9.程序输出的结果S =

10.读程序 甲: i=1 乙: i=1000 S=0 S=0 WHILE i<=1000 DO S=S+i S=S+i i=i+l i=i-1 WEND Loop UNTIL i<1 PRINT S PRINT S END END 对甲乙两程序和输出结果判断正确的是 ( ) A .程序不同结果不同 B .程序不同,结果相同 C .程序相同结果不同 D .程序相同,结果相同 11.下边程序执行后输出的结果是 ( ) A. -1 B. 0 C. 1 D. 2 5n = 0s = WHILE 15s < s s n =+ 1n n =- WEND PRINT n END 12.程序运行后的结果为__________ (其中:“(a+j ) mod 5”表示 整数(a+j)除以5的余数) 13.程序运行后输出的结果 为____________________. 15.设计一个算法求:111 135 2007 + +++ , 试用程序框图和相应程序表示.

《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语言》程序算法练习题

完成下列训练题的基本步骤是: 1、问题分析及解决方案框架确定 充分地分析和理解问题本身,明确问题到底要做什么。(what to do?) 在确定解决问题框架过程中(how to do?),考虑怎样使程序结构清晰、合理、简单和易于调试,并确定每个函数的简单功能,以及函数之间的调用关系。 2、详细设计和编码 确定算法的主要流程,在此基础上进行代码设计(coding),一般来讲,每个 明确的功能模块程序不超过60行代码,否则,功能要继续分解。 3、上机前编写程序与检查 上机前检查程序可有效提高调试效率,减少上机调试程序时的无谓错误。 程序检查主要有两种途径:用一组测试数据手工执行程序;或者通过阅读或 给别人讲解自己的程序而深入、全面地理解程序逻辑,把程序中的明显错误 事前排除。 4、上机调试程序 提供的结果应当包括: 算法、数据结构的设计、程序清单 1、猜数游戏 游戏的开始由机器产生一个随机数(1~100之间,用库函数random()取值),然后游戏者在程序的提示下猜数,若输入的数比这个数大,程序提示“your answer is HIGH,try again!”否则,程序提示“your answer is LOW,try again!”直到猜对为止。程序可以实现连续猜数,直到游戏者退出。 程序输出要求:累计游戏者猜对这个数所需的次数n,当n<=7时,给出“congratulation!”,当715时,用exit(0)库函数退出程序。 2、百钱百鸡问题(穷举算法) 我国古代数学家张丘建在《算经》中出了一道题“鸡翁一,值钱五;鸡母一,值钱三; 鸡雏三,值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?” 注:穷举法是最简单、最常见的一种程序设计方法,它充分利用了计算机处理的高速特性。 使用穷举法的关键是确定正确的穷举范围,即不能过分扩大,也不能过分缩小穷举的范围。 3、请编写一个程序,计算表达式:data1 op data2的值。其中,op为运算符+、-、*、/、%。 4、打印所有的水仙花数 5、编写一个程序,实现将输入的一个无符号整数转换为二进制和八进制表示,分别存入字符 数组中并输出。(提示:算法采用模拟人工法)

第1章 C语言基本知识

第一章C语言基本知识 一、C语言的产生和发展 1、C语言的发展源于人们希望用高级语言编写操作系统。(C-BCPL第二字母)ALGOL60(高级语言)->CPL(硬件支持)-BCPC->B->C->标准C->ANSI C->ISO C 2、语言既具有高级语言特性,又具有低级语言特性-中级语言。 二、C语言的特点 1、语言简明、紧凑、使用方便、灵活。 2、运算符丰富。 3、数据结构丰富,具有现代化语言的各种数据结构。 4、具有结构化的控制语句。 5、语法限制不太严格,程序设计自由度大。 6、C语言允许直接访问物理地址,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 7、生成目标代码质量高,程序执行效率高。 8、用C语言写的程序可移植性好。 三、C程序的基本规则 1、C程序由函数构成。(亦称为函数语言。) 2、C程序中每条语句都用一个分号结尾,分号是C程序语句的必要组成部分,语句最后的分号不能省略。 3、每个C程序都有一个主函数(main()),且只有一个主函数。并且程序是从主函数开始执行的。 4、调用C语言的标准函数通常要在程序开头使用包含命令include,C程序中的命令不用分号结尾。 5、C程序中的变量必须先定义,后使用。 6、C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写,同一字母的大小写被作为两个不同的字符。 7、C程序中可以用“/*……*/”的形式加注释。 8、C程序书写格式自由,一行内可以写几条语句,一条语句可以写在多行。 9.一个函数包含两个部分: (1)函数的说明部分。包括函数名,函数类型,函数属性,函数参数名等。 如:int max(x,y) int x,y; 函数名后必须跟一对圆括弧,函数参数可以没有,如:main()。 (2)函数体。

计算机一级选择题练习题及答案_第 4 章

第四章选择题卷一及答案 [11-1] 下列N-S中的图形符号表示的是。 [答] C,1.1 A) 选择结构 B) 顺序结构 C) 当型循环结构 D) 直到型循环结构 解:这个N-S中的图形符号表示的是当型循环结构。当条件P成立是反复执行操作A,直到P 不成立时为止。 [11-2] 下面关于算法的描述中,错误的概念是。 [答] C,1.1 A) 一个算法应当有0个或多个输入 B) 一个算法应当有一个或多个输出 C) 一个算法所包含的计算步骤可以是无限的 D) 算法中的每一个步骤必须要有确切的含义 解:从算法的形式化定义中得出一个结论:一个算法是对于任何的输入元素X,都在有穷步骤内中止的一个计算方法。因此“算法所包含的计算步骤可以是无限的”这种说法是不正确的。 [11-3] 按照程序设计语言的发展及分类方法,C语言属于。 [答] C,1.1 A) 机器语言 B) 汇编语言 C) 面向过程语言 D) 面向对象语言 解:C语言是一种算法语言,它侧重于问题处理过程,其与具体的机器无关,与机器的具体实现无关;接近于数学语言表示,增强了可读性和易排错性;提供了更强大的语句功能和函数库,进一步扩充了语言提供的设施,大大地降低了程序设计的难度。因此,C语言属于面向过程语言。 [12-1] 以下概念中正确的描述是。

[答] C,1.1 A) 计算机可以直接执行高级语言源程序 B) 解释方式获得的目标代码效率优于编译方式 C) 无论是解释方式或编译方式最终获得的都是机器可执行的目标代码 D) 源程序经编译后得到的是可执行程序 解:用任何一种高级程序设计语言编写的问题求解程序都需要翻译成机器语言程序,完成这种翻译工作的程序称之为翻译器。把高级语言程序翻译成机器语言程序的方法有两种。一种是编译方式,一种是解释方式,因此无论是解释方式或编译方式最终获得的都是机器可执行的目标代码。 [12-2] 数组是一种应用广泛的数据类型,它属于。 [答] B,1.1 A) 简单类型 B) 结构类型 C) 指针类型 D) 文件类型 解:数组是每一种高级程序设计语言都提供了的数据结构,是最重要也是最基本的结构数据类型,程序设计人员可以利用数组模拟实现他所需要的一些结构。 [12-3] 程序设计方法的三个原则是。 [答] B,1.1 A) 递归原则、枚举原则、归纳原则 B) 抽象原则、枚举原则、归纳原则 C) 抽象原则、测试原则、归纳原则 D) 抽象原则、枚举原则、设计原则 解:程序设计方法的三个原则是抽象原则、枚举原则、归纳原则。 [13-1] 传统的瀑布式模型的软件生命周期分为三个时期。 [答] C,1.1 A) 软件分析、软件开发和软件维护 B) 软件定义、软件设计和软件维护 C) 软件定义、软件开发和软件维护 D) 软件定义、软件开发和软件测试 解:传统的瀑布式模型的软件生命周期分为软件定义、软件开发和软件维护三个时期。 [13-2] 下面关于面向对象的概念描述中错误的是。 [答] D,1.1 A) 对象由属性和行为(操作)所组成 B) 类是具有相同属性和行为的对象集合 C) 对象是所属类的一个具体实现,所以称之为类的实例

c语言基本代码

c语言基本代码 Prepared on 22 November 2020

'\0':是字符串的结束标志 ‘‘:空格 auto:声明自动变量一般不使用 double:声明双精度变量或函数(和%lf连用), m=(double)(v-l)/l*100+; 这个式子加个double是将后面式子中非double类型强制转换类型为double float:声明浮点型变量或函数(和%f连用),单精度 int:声明整型变量或函数(与%d连用) struct:声明结构体变量或函数 long:声明长整型变量或函数 switch:用于开关语句 enum:声明枚举类型 register:声明积存器变量 typedef:用以给数据类型取别名(当然还有其他作用) extern:声明变量是在其他文件正声明(也可以看做是引用变量) return:子程序返回语句(可以带参数,也看不带参数) union:声明联合数据类型 const:声明只读变量 short:声明短整型变量或函数 unsigned:声明无符号类型变量或函数 signed:生命有符号类型变量或函数 void:声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)default:开关语句中的“其他”分支 goto:无条件跳转语句 sizeof:计算数据类型长度,,是整型表达式用法sizeof(类型说明符,数组名或表达式);sizeof()是获取类型占用的字节数,是整形的 volatile:说明变量在程序执行中可被隐含地改变 static:声明静态变量 char:声明字符型变量或函数 strcmp:strcmp(s1,s2)比较字符串大小两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止大于返回1小于返回-1等于返回0 循环: for:一种循环语句(可意会不可言传)for(表达式1;表达式2;表达式3)while:循环语句的循环条件 do:循环语句的循环体 break:跳出当前循环 continue:结束当前循环,开始下一轮循环 判断: d=a>30b:c:相当于if暨当a>30是d=b否则d=c;

高中数学-算法与程序框图、基本算法语句分层练习

高中数学-算法与程序框图、基本算法语句分层练习 一、选择题(每小题5分,共25分) 1.执行如图所示的程序框图.若输出y=-,则输入角θ=( ) A. B.- C. D.- 【解析】选D.当θ=时,y=sin=; 当θ=-时,y=sin=-; 当θ=时,y=tan=; 当θ=-时,y=tan=-. 2.(·山东高考)执行如图的程序框图,当输入的x的值为4时,输出的y的值为2,则空白判断框中的条件可能为( )

A.x>3 B.x>4 C.x≤4 D.x≤5 【解析】选B.输入x为4,要想输出y为2,则程序经过y=log24=2,故判断框填x>4. 3.根据下列程序语句,当输入x为60时,输出y的值为 ( ) A.25 B.30 C.31 D.61 【解析】选C.该语句可转化为分段函数求函数值的问题, y= 当x=60时,y=25+0.6×(60-50)=31. 4.(·天津高考)阅读如图的程序框图,运行相应的程序,若输入N的值为19,则输出N的值为 ( )

A.0 B.1 C.2 D.3 【解析】选C.阅读程序框图可得,程序执行过程如下: 首先初始化数值为N=19, 第一次循环:N=N-1=18,不满足N≤3; 第二次循环:N==6,不满足N≤3; 第三次循环:N==2,满足N≤3; 此时跳出循环体,输出N=2. 【变式备选】(2016·天津高考)阅读如图所示的程序框图,运行相应的程序,则输出S的值为( )

A.2 B.4 C.6 D.8 【解析】选B. 第一次:S=8,n=2, 第二次:S=2,n=3, 第三次:S=4,n=4,满足n>3,输出S=4. 5.执行如图所示的程序框图,则输出的λ是( ) A.-4 B.-2 C.0 D.-2或0 【解析】选B.依题意,若λa+b与b垂直,则有(λa+b)·b=4(λ+4)-2(-3λ-2)=0,解得λ=-2;若λa+b与b平行,则有-2(λ+4)=4(-3λ-2),解得λ=0.结合题中的程序框图,输出的λ是-2. 二、填空题(每小题5分,共15分) 6.运行如图所示的程序,若输出y的值为1,则可输入x的个数为________. 【解析】模拟程序运行,可得程序的功能是求 y=的值,

c语言基本代码

c语言基本代码 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

'\0':是字符串的结束标志 ‘‘:空格 auto:声明自动变量一般不使用 double:声明双精度变量或函数(和%lf连用), m=(double)(v-l)/l*100+; 这个式子加个double是将后面式子中非double类型强制转换类型为double float:声明浮点型变量或函数(和%f连用),单精度 int:声明整型变量或函数(与%d连用) struct:声明结构体变量或函数 long:声明长整型变量或函数 switch:用于开关语句 enum:声明枚举类型 register:声明积存器变量 typedef:用以给数据类型取别名(当然还有其他作用) extern:声明变量是在其他文件正声明(也可以看做是引用变量) return:子程序返回语句(可以带参数,也看不带参数) union:声明联合数据类型 const:声明只读变量 short:声明短整型变量或函数 unsigned:声明无符号类型变量或函数 signed:生命有符号类型变量或函数 void:声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)default:开关语句中的“其他”分支

goto:无条件跳转语句 sizeof:计算数据类型长度,,是整型表达式用法sizeof(类型说明符,数组名或表达式);sizeof()是获取类型占用的字节数,是整形的 volatile:说明变量在程序执行中可被隐含地改变 static:声明静态变量 char:声明字符型变量或函数 strcmp:strcmp(s1,s2)比较字符串大小两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止大于返回1小于返回-1等于返回0 循环: for:一种循环语句(可意会不可言传)for(表达式1;表达式2;表达式3)while:循环语句的循环条件 do:循环语句的循环体 break:跳出当前循环 continue:结束当前循环,开始下一轮循环 判断: d=a>30b:c:相当于if暨当a>30是d=b否则d=c; if:条件语句与elseifelse并用1、在C语言中一般认为“0”是假,其他不是“0”的都是真。 2、if()里面为真,则进入if下的大括弧{},为假,就跳过。 以此题为例: 若X是“0”(为假)。则里面为假,跳过if下的大{} 若X不是“0”(为真)。则里面为真,进入if下的大{}。 case:开关语句分支,与switch(表达式)连用,case常量表达式;default冒号后面的语句,表示除去各种casei:情况外,其它情况均用default冒号后面的语句处理,即缺省case默认case的处理 else:条件语句否定分支(与if连用)

高中数学基本算法语句循环语句总结练习含答案解析A

1.2 基本算法语句 1.2.3 循环语句 一、UNTIL语句 1.语句格式与程序框图 2.执行过程 当计算机执行UNTIL语句时,先执行一次DO和UNTIL之间的①,再对UNTIL后的条件进行判断.若不满足,继续执行循环体;然后再检查是否满足条件,如此反复,直到②时为止.这时,计算机将不执行循环体,直接跳到UNTIL语句后,接着执行UNTIL语句之后的语句. 二、WHILE语句 1.语句格式与程序框图 2.执行过程 当计算机遇到WHILE语句时,先判断③,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次④ 为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句. 判断下面结论是否正确(请在括号中打“√”或“×”) 1.与循环语句相对应的程序结构为循环结构.( )

2.循环语句中可以不包含赋值语句.( ) 3.循环语句没有固定的格式,只要能解决问题就可以.( ) 题组一UNTIL语句解读 1.当x=2时,下面程序运行后输出的结果是( ) A.3 B.7 C.15 D.17 题组二WHILE语句的特征 2.下列关于循环语句的说法中不正确的是( ) A.算法中的循环结构由WHILE语句来实现 B.一般程序设计中有当型或直到型循环语句 C.循环语句有WHILE语句和UNTIL语句 D.算法中的循环结构由循环语句来实现 3.有以下程序段,其中描述正确的是( )

A.循环体语句执行10次 B.循环体是无限循环的 C.循环体语句一次也不执行 D.循环体语句只执行一次 4.下面关于WHILE语句的说法,正确的是( ) A.WHILE循环是当表达式为真时执行循环体 B.WHILE循环不需要事先指定循环变量的初值 C.WHILE循环中当表达式为假时,直接退出程序 D.WHILE循环的循环次数可以是无限次 5.下面程序运行后输出的结果为. 6.给定程序:

算法习题精选精讲

1.计算 2363 12222 +++++ ,写出算法的程序. 解:s=1 n=2 i=1 WHILE i<=63 s=s+n∧i i=i+1 WEND PRINT “1+2+2∧2+2∧3+…+2∧63=”;s END 2.写出已知函数 ? ? ? ? ? < - = > = ). ( 1 ), ( ), ( 1 x x x y输入x的值,求y的值程序. 解:INPUT “请输入x的值:”;x IF x>0 THEN y=1 ELSE IF x=0 THEN y=0 ELSE y=-1 END IF END IF PRINT “y的值为:”;y END 3.新课标B版数学必修3教材41页第7题:用100元钱买100只鸡,公鸡每只5元, 母鸡每只3元,小鸡3只一元,问能买多少公鸡,母鸡和小鸡? 程序如下: for x=1:20 for y=1:33 z=100-x-y; if 5*x+3*y+z/3<>100 else x y z end end end 4.(本小题满分14分)根据下面的要求,求满足1+2+3+…+n > 500的最小的自然数n。 (1)画出执行该问题的程序框图;(2)以下是解决该问题的一个程序,但有几处错误,请找出错误并予以更正。解:(1

②PRINT n+1 应改为PRINT n ; 12分 ③S=1应改为S=0 14分 5. 儿童乘坐火车时,若身高不超过1.1 m ,则不需买票;若身高超过1.1 m 但不超过1.4 m ,则需买半票;若身高超过1.4 m ,则需买全票.试 设计一个买票的算法,并画出相应的程序框图及程序。 解:程序是:INPUT “请输入身高h (米):”;h IF h<=1.1 THEN PRINT “免票” ELSE IF h<=1.4 THEN PRINT “买半票” ELSE PRINT “买全票” END IF END IF END 6.意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题:一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子? 试画出解决此问题的程序框图,并编写相应的程序. 解: 分析: 根据题意可知,第一个月有1对小兔,第二个月有1对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的兔子对数是前面两个月兔子对数的和,设第N 个月有两F 对兔子,第N -1个月有S 对兔子,第N -2个月有Q 对兔子,则有F=S+Q,一个月后,即第N+1个月时,式中变量S 的新值应变第N 个月兔子的对数(F 的旧值),变量Q 的新值应变为第N -1个月兔子的对数(S 的旧值),这样,用S+Q 求出变量F 的新值就是N+1个月兔子的数,依此类推,可以得到一个数序列,数序列的第12项就是年底应有兔子对数,我们可以先确定前两个月的兔子对数均为1,以此为基准,构造一个循环程序,让表示“第×个月的I 从3逐次增加1,一直变化到12,最后一次循环得到的F ”就是 7.设计算法求 100 99143131121 1?++?+?+? 的值。要求画出程序框图,写出用基本语句编写的程序。 解:这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法。程序框图如图所示: 1 0==k S DO 1 ))1(/(1+=+*+=k k k k S S

(完整word版)C语言基本概念

第2章C语言基本概念 2.1 初识“Hello world”程序 为纪念C语言的设计者,第一个程序范例选自C语言的定义文档——Brian Kernighan和Dennis Ritchie合著的The C Programming Language。该范例是“Hello world”程序,它是所有C 程序员共有的财富,而你也即将成为其中的一员。 该程序作为一个文件存储在你所用的计算机系统的永久存储器中。文件名为hello.c,其中.c说明该文件为C语言源程序。 下面介绍hello.c程序的组成部分:程序注释、库包含和主函数。 2.1.1 程序注释 C语言中,注释是在/*和*/之间的所有文字,可以占连续的几行。例2.1中的注释描述了该程序的作用。 注释是写给人看的,而不是写给计算机的。注释向其他程序员传递该程序的有关信息。当C语言编译器将程序转换为可由机器执行的形式时,注释被完全忽略。 当程序越来越复杂时,读者会发现给出合适的注释是使程序易读的最好方法之一。 2.1.2 库包含(预处理指令) C语言只明确定义了一小部分操作,在计算机程序中许多必要的操作并不是由C直接定义的(如C语言中没有内置的“读”或“写”命令),实际的做法是,在每个C实现中都包含了一些使用函数和符号的集合,称之为库。C的ANSI(American National Standards Institute)标准要求在每个C实现中提供特定的标准库。C系统可以通过提供附加库来扩展可执行操作

stdio.h。 #include 这条预处理指令说明,在编译前把stdio.h中的信息“包含”到程序中。该指令通知预处理器,程序中用到的某些内容,如printf,可以在标准头文件stdio.h中找到。Stdio.h中包含了关于C标准输入/输出库的信息。 注意: ●对每一个库使用一行#include ●预处理指令结束时没有“;” 预处理指令详细内容将在后面章节介绍。 2.1.3 主函数 1. 函数 术语“函数”来源于数学。在数学中函数是一条根据一个或多个给定参数进行数值计算的规则: f(x) = x + 1 g(y,z) = y – z C语言对“函数”的使用更加宽松。C语言中,函数是一系列独立的程序步骤,将这些 一个C程序是一个函数的集合。函数分为两类:程序员编写的函数;由C语言的实现所提供的函数。后一种函数也叫库函数,因为这些函数属于一个函数的“库”,而这个库是由编译器提供的。 每个C程序必须有一个main函数,在执行程序时系统会自动调用main函数,即该函数是程序的入口。 2. 语句 函数所执行的步骤在{}中列出,这些步骤称为“语句”。这些语句共同组成函数的主体。大多数函数都有几个连续执行的语句。 当运行C语言程序时,计算机执行main函数主体中包含的语句。 printf("Hello,world.\n");该语句用到了printf函数。此函数代表一组操作。当想要调用这些

算法与程序框图练习题及答案

第一章 算法初步 1.1算法与程序框图 1.1.1算法的概念 1.已知直角三角形两直角边长为a ,b ,求斜边长c 的一个算法分下列三步: ①计算22c a b =+a ,b 的值; ③输出斜边长c 的值,其中正确的顺序是 【 】 A.①②③ B.②③① C.①③② D.②①③ 2.若()f x 在区间[],a b 内单调,且()()0f a f b <,则()f x 在区间[],a b 内 【 】 A.至多有一个根 B.至少有一个根 C.恰好有一个根 D.不确定 3.已知一个学生的语文成绩为89,数学成绩为96,外语成绩为99.求他的总分和平均成绩的一个算法为: 第一步:取A =89 ,B =96 ,C =99; 第二步:____①______; 第三步:_____②_____; 第四步:输出计算的结果. 4.写出按从小到大的顺序重新排列,,x y z 三个数值的算法. 1.1.2 程序框图 1.在程序框图中,算法中间要处理数据或计算,可分别写在不同的 【 】 A .处理框内 B .判断框内 C .终端框内 D .输入输出框内 2.将两个数a=10,b=18交换,使a=18,b=10,下面语句正确一组是 【 】 A. B. C. D. 3指出下列语句的错误,并改正: (1)A =B =50 (2)x =1,y =2,z =3 (3)INPUT “How o ld are y ou” x (4)INPUT ,x (5)PRINT A +B =;C (6)PRINT Good-b y e! 4.2000年我国人口为13亿,如果人口每年的自然增长率为7‰,那么多少年 后我国人口将达到15亿?设计一个算法的程序. 5.儿童乘坐火车时,若身高不超过1.1 m ,则不需买票;若身高超过1.1 m 但不超过1.4 m ,则需买半票;若身高超过1.4 m ,则需买全票.试设计一个买票的算法,并画出相应的程序框图及程序。 1.2基本算法语句 1.2.1输入语句、输出语句和赋值语句 1 .在输入语句中,若同时输入多个变量,则变量之间的分隔符号是 【 】 A.逗号 B.空格 C.分号 D.顿号 2 . 3a = 4b = a=b b=a c=b b=a a=c b=a a=b a=c c=b b=a

C语言-基本选择题及答案解析

计算机程序设计基础(C语言) 单项选择练习题 说明:带*号的对非信息学院的同学不作要求。 一、基本概念 1. C语言程序是由 C 构成的。 A)一些可执行语言 B)main函数 C)函数 D)包含文件中的第一个函数2.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 3.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 4.C语言程序从main()函数开始执行,所以这个函数要写在_D___。 A) 程序文件的开始 B) 程序文件的最后 C) 它所调用的函数的前面 D) 程序文件的任何位置 5、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 6. 下列方法中错误的是(D)。 A.主函数可以分为两个部分:主函数说明部分和主函数体。 B.主函数可以调用任何非主函数的其它函数。 C.任何非主函数可以调用其它任何非主函数。 D.程序可以从任何非主函数开始执行。 7. 下列说法错误的是:(B) A.C程序运行步骤是编辑、编译、连接、执行。 B.C语言的变量名必须用小写,常量用大写。 C.C语言的三种基本结构是顺序、选择、循环。 D. C程序一定由函数构成的。 8.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行

基本算法语句与算法案例练习题(习题经典,有详细解答)

基本算法语句与算法案例练习题 1.我国古代数学发展一直处于世界领先水平,特别是宋、元时期的“算法”,其中可以同欧几里得 辗转相除法相媲美的是( ) A 、中国剩余定理 B 、更相减损术 C 、割圆术 D 、秦九韶算法 2.计算机执行右面的程序段后,输出的结果是( ) A 、1,3 B 、4,1 C 、0,0 D 、6,0 3. 840和1764的最大公约数是( ) A .84 B .12 C .168 D .252 4.阅读下列程序,并指出当a=3,b=﹣5时的计算结果( ) A .a=-1,b=4 B .a=0.5,b=﹣1.25 C .a=3,b=﹣5 D .a=-0.5,b=1.25 5.执行下列程序后,输出的值是( ) A .17 B .19 C .21 D .23 6.把89化成五进制的末尾数是 ( ) A .1 B .2 C .3 D .4 7.用“辗转相除”求得459法和357的最大公约数是( ) A .3 B .9 C .17 D .51 8.一个K 进制的三位数与某六进制的二位数等值,则K 不可能是( ) A.3 B.4 C.5 D.7 INPUT a,b a=a+b b=a ﹣b a=(a+b)/2 b=(a ﹣b)/2 PRINT a,b END

9.当输入x=-1,y=20时,图中程序运行后输出的结果为( ) A .3; 43 B. 43; 3 C.-18 ;16 D.16 ; -18 10.若运行如下程序,最后输出y 的值为-20,那么应该输入x 的值为 ( ) A.10或-6 B. 10或-2 C.-6 D. 10或-6或-2 11.读右面的程序, 该程序表示的函数是_________________ 12. 13.如图是求11 1 123100++++的算法的程序框图。 (1)标号①处填 。标号②处填 。 (2)根据框图用“当”型语句编写程序。

高中数学必修三同步练习题库:基本算法语句(选择题:较易)

基本算法语句(选择题:较易) 1、如右图,程序的循环次数为() A.1 B.2 C.3 D.4 2、已知,现要将两个数交换,使,下面语句正确的是( ) A. B. C. D. 3、下列对While语句说法不正确的是() A.当计算机遇到While语句时,先判断条件的真假,如果条件符合就执行While与End While之间的循环体 B.当条件不符合时,计算机不执行循环体,直接跳到End While语句后,接着执行End While之后的语句C.While型语句结构也叫当型循环 D.当型循环有时也称为“后测试”型循环 4、按如图所示的程序框图运行后,输出的结果是63,则判断框中的整数的值是() A.5 B.6 C.7 D.8

5、如图程序的输出结果为() A. B. C. D. 6、执行下图程序中,若输出的值为,则输入的值为()A.0 B.1 C. D. 7、计算机执行下面的程序,输出的结果是() A. B. C. D. 8、在赋值语句中,“”是() A.没有意义 B.与相等

C.将的原值加1再赋给,的值增加1 D.无法进行 9、下列程序执行后输出的结果是() A.3 B.6 C.15 D.10 10、运行下面的程序,若,则输出的等于() A.9 B.7 C.13 D.11

11、当输入x=1,y=2时,如图中程序运行后输出的结果为() A.5,2 B.1,2 C.5,﹣1 D.1,﹣1 12、如图所示,运行该程序,当输入分别为时,最后输出的的值是() A. B. C. D. 13、若运行如图的程序,则输出的结果是() A.4 B.9 C.13 D.17 14、下列选项中,正确的赋值语句是()

C语言基础题(含答案)

第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D.-_ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char

8.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号 B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。 A.C程序的机器语言版本 B.一组机器语言指令

相关主题
文本预览
相关文档 最新文档