程序的设计习题与答案

程序的设计习题与答案
程序的设计习题与答案

2011-2012年度第一学期“C语言程序设计”期末考试复习提纲

一、考试题型

二、题例:

(一)项目二数据类型、运算符和表达式

选择题:

1. 不合法的C语言整型常量是 A 。

A. –012

B. 0x35

C. 123L

D. 8E2

2. 不合法的C语言实型常量是 A 。

A. E3

B. . 123

C. –6.2E4

D. 5.0

3. 不合法的C字符常量是 C 。

A. ’2’

B. ’\101’

C. ’AB’

D. ’\n’

4.下列四组选项中,均是不合法的用户标识符的选项是 B 。

A. W P_0 do

B. b-a goto int

C. float la0 _A

D. -123 abc TEMP

5.下列四组选项中,均是合法转义字符的选项是 A 。

A. ’\”’’\\’’\n’

B. ’\’’\017’’\”’

C. ’\018’’\f’’xab’

D. ’\\0’’\101’’xlf’

6. 定义三个变量a、b、c,并分别赋初值为5。能实现该功能的语句是 C 。

A. int a=b=c=5;

B. int a,b,c=5;

C. int a=5,b=5,c=5;

D. int a=5;b=5;c=5;

7. 若x,y,t均为int类型,则执行语句x=y=3;t=++x||++y;后,y的值是 D 。

A. 不定值

B. 4

C. 1

D. 3

8.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C 。

x=(i=4,j=16,k=32)

A. 4 B. 16 C. 32 D. 52

9.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。

A. float

B. char

C. int

D. double

10.设以下变量均为int类型,则值不等于7的表达式是 C 。

C. (x=6,x+1,y=6,x+y)

D. (y=6,y+1,x=y,x+1)

填空题:

1.若有定义int m=5,y=2;,则计算表达式y+=y-=m*=y后的y值是 -16 。

2.若s是int型变量,且s=6,则表达式s%2+(s+1)%2的值为 1 。

3. 若a是int型变量,则表达式(a=4*5,a*2),a+6的值为 26 。

4.若x和a均是int型变量,则计算表达式x=(a=4,6*2)后的x值为 12 ,计算表达式x=a=4,6*2后的x 值为 4 。

5. 若a是int型变量,则计算表达式a=25/3%3后a的值为 2 。

6.若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为 10 ,n的值为 6 。

7. 若有定义:char c=‘\010’;则变量c中包含的字符个数为 1 。

8.若有定义:int x=3,y=2;float a=2.5,b=3.5; 则下面表达式的值为 1 。

(x+y)%2+(int)a/(int)b

9. 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’a’+’8’-’3’的值为 102 。

阅读题:(写出程序运行结果)

1. #include

main()

{ int x=97; char y=’b’;

printf(“%c,%d ”, x, y) ;

}

答:a,98

2. #include

main()

{ int x=6;

x+=x-=x*x ;

printf(“x=%d\n”, x) ;

}

答:x=﹣60

3. #include

main()

{ int x;

(x=4*5,x*5),x+25;

printf(“x=%d\n”, x) ;

}

答: x=20

4. #include

main()

{ int i=1,j;

j= -i++;

}

答:﹣1

编程题:(顺序结构编程)

1.输入华氏温度,输出摄氏温度。C=5/9*(F-32)

#include

main()

{

float C,F;

printf("请输入华氏温度F:");

scanf("%f",&F);

C=5.0/9*(F-32);

printf("%.2f℉=%.2f℃\n",F,C);

}

2.输入底面半径r和高度h,计算并输出圆柱体的体积v。v=πr2h(π取

3.14,v计算结果保留到小数

点后两位)

#include

#define PI 3.14

main()

{

float r,h,V;

printf("请输入底面半径r和高度h:");

scanf("%f%f",&r,&h);

V=PI*r*r*h;

printf("圆柱体的体积V=%.2f\n",V);

}

3.从键盘输入一扇形的半径和角度,求扇形的面积和周长。

#include

#define PI 3.14

main()

{

float r,n,S,C;

printf("请输入扇形的半径r和角度n:");

scanf("%f%f",&r,&n);

S=(n*PI*r*r)/360;

C=(n*PI*r)/180+2*r;

printf("扇形的面积S=%.2f,周长C=%.2f\n",S,C);

}

4. 从键盘输入学生的三门考试成绩,计算并输出平均成绩。

#include

main()

float a,b,c,avg;

printf("请输入学生三门考试的成绩:");

scanf("%f%f%f",&a,&b,&c);

avg=(a+b+c)/3; /*求平均成绩*/

printf("平均成绩为:%.2f\n",avg);

}

(二)项目三 C语言程序控制结构

选择题:

1.下列for循环的循环次数是 D 。

int i=0,j;

for (j=10;i=j=10;i++,j--)printf(”ok”);

A. 0次

B. 1次

C. 10次

D. 无限次

2. 下列for循环的循环次数是 B 。

int i=0,j=0;

for(;!j&&i<=5;i++)j++;

A.5次B.1次C.无限D.6次

3. 语句for(i=0,j=0;i<=100;i++)j=j+i;运行后j的值为 D 。A.500 B. 100 C. 5000 D. 5050

4、有以下程序:

#include

main()

{char c;

while((c=getchar())!='?') putchar(- -c); }

程序运行时,如果从键盘输入:Y?N?<回车>,则输出结果为 D 。

A. Y

B. XY

C. YX

D. X

5.下面的程序段执行时,若从键盘输入5,则输出为 D 。

int a;

scanf(”%d”,&a);

if (a-->5)printf(”%d\n”,a++);else printf(”%d\n”,a);A.7 B.6 C.5 D.4

6. 若int a=5;则执行下列语句后打印的结果为 A 。

do

{printf (“%2d\n”, a--);

} while (!a);

A.5 B.不打印任何结果 C.4 D.陷入死循环

7.语句for(i=0,j=0;i<=100;i++)j=j+i;运行后j的值为 D 。A.500 B.100 C.5000 D.5050

8.下面程序段的运行结果是 C 。

int n=0;

while(n++<=2);printf(“%d”,n);

9.若i为整型变量,则以下循环执行次数是 B 。

for(i=2;i==0;)printf(“%d”,i- -);

A. 无限次

B. 0次

C. 1次

D. 2次

10.执行语句for(i=1;i++<4; );后变量i的值是 C 。和第八题相似

A. 3

B. 4

C. 5

D. 不定

填空题:

1、若输入字符串:abcdef<回车>,则以下while循环体将执行____0 ____次。While((ch=getchar( ))= =’d’) printf(“**”);

2、下面程序段的运行结果是___a=-5______。

i=1;a=0;s=1;

do{a=a+s*i;s=-s;i++;}while(i<=10);

printf(“a=%d”,a);

3.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束

循环。请填空。

int n=0,c;

c=getchar();

while( c!=’\n’ )

{

if( c>=’0’ && c<=’9’ )n++;

c=getchar();

}

4. 以下程序中,while语句的循环次数是无限次。

#include

main()

{ int i=0;

while(i<10)

{ if(i<1) continue;

if(i==5) break;

i++;

}

printf(“%d”,i);

}

5.下面程序的功能是用“辗转相除法”求两个正整数的最大公约数。请填空。 #include

main()

{int r,m,n;

scanf(“%d%d”,&m,&n);

if(m

r=m%n;

while(r){m=n;n=r;r=__ m%n __;}

}

6. 执行以下程序后,输出“#”的个数是___6____。 #include

main()

{ int i,j;

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

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

putchar(‘#’);

}

阅读题:(写出程序运行结果)

1.#include

main()

{ int y=10;

do{y--;

}while(--y);

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

}

答:0

2. #include

main()

{ int x=15;

while(x>10&&x<50)

{ x++;

if(x/3){x++;break;}

else continue;

}

printf(“%d\n”,x);

}

答: 17

3. #include

main()

{int a=1,b=0;

for( ; a<3; a++)

switch(a++)

{ case 1:b--;break;

case 2:b++;

case 3:b+=3;

}

printf(“%d\n”,b);

}

4. #include

main()

{int s,i;

for(s=0,i=1 ; i<3 ; i++,s+=i) ; printf(“%d\n”,s);

}

答: 5

编程题:

1.计算s=1+1/2+1/3+……+1/n

#include

main()

{

int i,n;

float s;

scanf("%d",&n);

for(s=0.0,i=1;i<=n;i++)

s=s+1.0/(i);

printf("s=%f\n",s);

}

2.求和:从1加到100

#include

main()

{

int n,s;

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

s=s+n;

printf("s=%d\n",s);

}

3.如果0

main()

{

int n,i;

long s;

printf("请输入整数n:");

scanf("%d",&n);

if(n>0&&n<17)

{

for(i=2,s=1;i<=n;i++)

s=s*i;

}

else printf("输入错误!请输入1-16中的整数!\n");

}

4.如果0〈n<8,请计算 s=1!+2!+3!+……+n! ,并打印输出计算结果s。(注:n!=1*2*3*……*n) #include

main()

{

int n,i,s,fact;

printf("请输入整数n:");

scanf("%d",&n);

if(n>0&&n<8)

{

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

{

fact=fact*i; /*求n!*/

s=s+fact; /*求s=1!+2!+3!+……+n!*/

}

printf("s=%d\n",s);

}

else printf("输入错误,请输入1-7中的整数!\n");

}

5.从键盘输入一个大于1的整数,输入是否为素数,是,则输出“YES”,否则输出“NO”

#include

main()

{

int n,i;

printf("请输入整数n:");

scanf("%d",&n);

if(n>1)

{

for(i=2;i

if(n%i==0)break;

if(i==n)printf("YES\n");

else printf("NO\n");

}

else printf("输入错误,请输入大于1的整数!\n");

}

(三)项目四数组

选择题:

1.若二维数组a有m列,则在a[i][j]前的元素个数为____B____.(注意列)

2.以下对二维数组a的正确说明是____C____.

A. int a[3][];

B. float a(3,4);

C. double a[1][4];

D. float a(3)(4); 3.若有说明:int x[][3]={1,3,5,7,9,11};,则x数组的行数为___A____。

A.2

B. 3

C. 4

D. 无确定值

4.若有以下定义

int a[ ]={1,2,3,4,5,6,7};

char c1=’b’,c2=’2’;

则数值不为2的表达式是_____A_____。

A. c2-0

B. a[1]

C. ’d’-c1

D. a[‘3’-c2]

5.以下程序的输出结果是_____B______。

main( )

{ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

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

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

s+=a[i][j];

printf(“%d\n”,s);

}

A.18

B. 19

C. 20

D. 21

6.有两个字符数组a、b,则以下正确的输入语句是___B____.

A. gets(a,b);

B. scanf(“%s%s”,a,b);

C. scanf(“%s%s”,&a,&b);

D. gets(“a”),gets(“b”);

7.当执行下面的程序时,如果输入ABC,则输出结果为____A_____。

#include

#include

main()

{char ss[10]=“1,2,3,4,5”;

gets(ss);strcat(ss,”6789”);printf(”%s\n”,ss);

}

A. ABC6789

B. BC67

C. 12345ABC6

D. ABC456789

8.判断字符串s1是否大于字符串s2,应当使用___D____.

A. if(s1>s2)

B. if(strcmp(s1,s2))

C. if(strcmp(s2,s1)>0)

D. if(strcmp(s1,s2)>0)

填空题:

1.下面程序以每行4个数据的形式输出a数组,请填空。

#define N 20

main()

{ int a[N],i;

for(i=0;i

for(i=0;i

{if (___i%4==0____) __ printf(“\n”); _

}

printf(“\n”);

}

2.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};

则初始化后,a[1][2]的初值是___0____,a[2][1]的初值是____6___。3.下面程序的运行结果是___7,3_____。

main( )

{ int a[10]={10,2,-13,21,11,67,-78,8,90,-53};

int i,x=0, y=0;

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

if(a[i] >0) x++;

else y++;

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

}

4.下面程序的功能是:输入50个数,按逆序输出,请填空。

main( )

{int a[50],i;

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

scanf(“%d”, &a[i]);

for(__i=49__;i>=0;_ i- -__)

printf(“%4d”,a[i]);

}

5. 下面程序可求出矩阵a的主对角线上的元素之和,请填空。

main()

{ int a[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;

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

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

if(_i==j _)sum=sum+__ a[i][j]__;

printf(“sum=%d\n”,sum);

}

6. 下面程序的功能是在三个字符串中找出最小的,请填空。

#include

#include

main()

{ char s[20],str[3][20];

int i;

for(i=0;i<3;i++)gets(str[i]);

strcpy(s,__ str[0]__);

if(strcmp(str[1],s)<0)strcpy(s,str[1]);

if(strcmp(str[2],s)<0)strcpy(s,str[2]);

}

阅读题:

1. #include

main()

{ int a[10], i;

for(i=9; i>=0;i--) a[i]=10 - i;

printf(“%d%d%d\n”,a[2],a[5],a[8]);

}

答:852

2. #include

main()

{ int a[3][3]={1,2,3,4,5,6,7,8,9}, i,s=0;

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

s=s+a[i][i];

printf(“s=%d\n”,s);

}

答: s=15

3. #include

main()

{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf(“%d%d%d%d\n”,a[0][3],a[1][2],a[2][1],a[3][0]);

}

答:0650

4. #include

#include

main()

{ char s[][10]={“a”,”good”,”world”};

strcat(s[0],s[1]);

printf(“%s”,s[0]);

}

答: agood

5. #include

main()

{ char s[]=“abcdef”;

s[3]=’\0’;

printf(“%s\n”,s);

}

答: abc

编程题:

1.从键盘输入10个整数,存入数组a,从数组a的第二个元素起,分别将后项减前项之差存入数组b,

#include

main()

{

int a[10],b[10],i,j;

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

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

for(i=0,j=0;i<9;i++,j++)

{

b[j]=a[i+1]-a[i];

printf("%5d",b[j]);

if(i%3==2)printf("\n");

}

}

2.输入一个字符串,将其中的大写字符转换成小写,其它的不做转换,然后输出得到的字符串。#include

main()

{

int i;

char s[100];

scanf("%s",s);

for(i=0;s[i]!='\0';i++)

{

if(s[i]>='A'&&s[i]<='Z')

s[i]=s[i]+32;

}

for(i=0;s[i]!='\0';i++)

printf("%c",s[i]);

printf("\n");

}

3.读入20个整数,统计非负数个数,并计算非负数之和

#include

main()

{

int a[20],i,n,s=0;

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

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

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

if(a[i]>=0)

{

n++;

}

printf("非负数个数:n=%d\n",n);

printf("非负数之和:s=%d\n",s);

}

4.某班有30名学生,考试共5门课程,输入各门成绩,计算每人的总分,输出全班学生的各科成绩及

总分。

#include

main()

{

int i,j;

float score[30][5],sumr[30]={0.0,0.0},sum=0;

printf("请输入30个同学各5门课程的成绩:\n");

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

{

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

{

scanf("%f",&score[i][j]);

}

}

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

{

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

{

sumr[i]=sumr[i]+score[i][j];

}

sum=sum+sumr[i];

}

printf("\t 课程一课程二课程三课程四课程五\n");

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

{

printf("第%2d个同学:",i);

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

{

printf("%8.2f",score[i][j]);

}

printf("\n");

}

printf("%.2f\n",sum);

}

5.从键盘输入10个数,从小到大排列(或从大到小排列),将其输出(冒泡法或选择法任选)。

#include

main()

{

int a[10],i,j,t;

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

{

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

}

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

{

for(j=0;j<10-i-1;j++) {

if(a[j]>a[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

printf("从小到大排列:\n"); for(i=0;i<10;i++)

{

printf("%d ",a[i]);

}

printf("\n");

}

选择法排序:

#include

main()

{

int a[10],i,j,k,t;

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

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

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

{

k=i;

for(j=i+1;j<10;j++)

{

if(a[j]>a[k])

if(i!=k)

{

t=a[i];

a[i]=a[k];

a[k]=t;

}

}

}

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

printf("%5d",a[i]);

printf("\n");

}

(四)项目五和项目六函数、指针

选择题

1.以下正确的函数定义形式是___A_____.

A. double fun(int x,int y)

B. double fun(int x; int y)

C. double fun(int x, int y);

D. double fun(int x,y);

2. 以下函数调用语句中实参的个数是____A___。

fun((v1,v2),(v3,v4,v5),v6) ;

A. 3

B. 4

C. 5

D. 6

2.若有说明;int *p,m=5,n;以下正确的程序段的是___D___.

A. p=&n;

B. p=&n;

scanf(“%d”,&p); scanf(“%d”,*p);

C. scanf(“%d”,&n);

D. p=&n;

*p=n; *p=m;

2.以下程序的运行结果是___ A+B=9_____.

int a=5;int b=7;

main()

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

c=plus(a,b);

printf(“A+B=%d\n”,c);

}

plus(int x,int y)

{ int z;

z=x+y;

return(x);

}

3.以下正确的程序段是____B _____.

A. char str[20];

B. char *p;

scanf(“%s”,&str); scanf(“%s”,p);

scanf(“%s”,&str[2]); scanf(“%s”,p[2]);

填空题:

1.若有定义:int a[]={2,4,6,8,10,12},*p=a;则*(p+1)的值是__4____. *(a+5)的值是____2____. 2.下面程序段的运行结果是___ hELLO!___.

char s[80],*sp=“HELLO!”;

sp=strcpy(s,sp);

s[0]='h';

puts(sp);

3. 理解下面的程序,填空使程序完整。

#include

int max(__int x,int y__)

{ int z;

if (x>y) z=x;

else z=y;

_ return(z)____;

}

main()

{ int a,b,c;

scanf(“%d%d”,__&a&b___);

c=_ max___(a,b);

printf(“a=%d,b=%d,max=%d\n”,a,b,c);

}

阅读题:

1. #include

void func(int x)

{ x=20;

}

main()

{ int x=10;

func(x);

printf(“%d”,x);

}

答:10

2. #include

void fun(float *a,float *b)

{ float w;

*a=*a+*a;

w=*a; *a=*b; *b=w;

}

main()

float *px=&x,*py=&y;

fun(px,py) ;

printf(“%f,%f”,x,y);

}

答:3.000000,4.000000

(五)项目七和项目八结构体、共用体、文件

选择题:

1.根据以下定义,能输出字符‘M’的语句是__D____。

struct person

{ char name[9];

int age;

}class[10]={“John”,17,”Paul”,19,”Mary”,18,”Adam”,16};

A. printf(“%c”,class[3].name);

B. printf(“%c”,class[3].name[1]);

C. printf(“%c”,class[2].name[1]);

D. printf(“%c”,class[2].name[0]); 2.下面程序的运行结果是______C_____.

main()

{ struct cmplx{ int x;

int y;

}um[2]={2,3,4,5};

printf(“%d\n”,cnum[0].y/cnum[0].x*cnum[1].x);

}

A. 2

B. 3

C. 4

D. 5

3.以下对结构体变量stu1中成员age的非法引用是____B____.

struct student

{int age;

int num;

}stu1,*p;

p=&stu1;

A. stu1.age

B. student.age

C. p->age

D. (*p).age

4.以下scanf函数调用语句中对结构体变量成员的不正确引用是___D_____.

struct pupil

{char name[20];

int age;

int sex;

}pup[5],*p;

p=pup;

A. scanf(“%s”,pup[0].name);

B. scanf(“%d”,&pup[0].age);

C. scanf(“%d”,&(p->sex));

D. scanf(“%d”,p->age);

5. fopen()函数的mode取值”r”和”w”时,它们之间的差别是____B____。

A. “r”可向文件输入,“w”不可向文件输入

B. “r”不可向文件输入,“w”可向文件输入

6. 若要将“text.txt”文件打开用于追加信息,则以下格式正确的是____C____。

A. fp=fopen(“text.txt”, “r”);

B. fp=fopen(“text.txt”, “r+”);

C. fp=fopen(“text.txt”, “a+”);

D. fp=fopen(“text.txt”, “w”);

7. 要使用fopen函数打开一个新的可读可写的二进制文件,文件的打开方式应是____D___。

A. “ab+”

B. “rb+”

C. “ab-”

D. “wb+”

程序设计基础试题库

练习题一Visual FoxPro 基础 、选择题 1. 关系数据库管理系统应能实现的专门关系运算包括___c __________ A 显示、打印、制表B关联、更新、排序 C 选择、投影、连接D排序、索引、统计 2. 关系是指__b__。 A 属性的集合B元组的集合 C 实例的集合 D 字段的集合 3. 如果把学生看成实体,某个学生的姓名叫“杨波”,则“杨波”应看成是___b ______ 。 A)属性型B )属性值C )记录型D )记录值 4. 关系数据库系统中所使用的数据结构是 _______ d ___ 。 A)图B )树C )表格D )二维表 5. 对表进行水平方向的分割用的运算是 _______ b ___ 。 A)交B )选择C )投影D )连接 6. 下列数据库技术的术语与关系模型的术语的对应关系中_______ d _____ 是正确的。 A)实例与关系 B )字段与元组C )记录与属性 D )记录类型与关系模式 7. 下列关于数据库系统的叙述中,正确的是 _____ c _____ 。 A)数据库系统中数据的一致性是指数据类型一致 B)数据库系统只是比文件系统管理的数据更多 C)数据库系统减少了数据冗余 D数据库系统避免了数据冗余 8. 关系数据模型 ______ d ___ 。 A)只能表示实体间的1:1联系 B)只能表示实体间的1:n C只能表示实体间的m:n D 可以表示实体间的上述三种联系 9. 在一个关系中如果有这样一个属性存在,它的值能惟一地标识关系中的每一个元组,称

这个属性为 _____ a____ 。 A)关键字B )主属性C )数据项D )主属性值 10. 关系数据库管理系统中的元组是______ b ____ 。 A)关系中的垂直方向的列 B )关系中的水平方向的行 C属性或属性的组合 D )以上的答案均不正确 11. 从数据库的整体结构看,数据库系统采用的数据模型有_________ a __ 。 A)层次模型、网状模型和关系模型 B)层次模型、网状模型和环状模型 C)网状模型、链状模型和层次模型 D链状模型、关系模型和层次模型 12. 设有属性A B、C D以下表示中不是关系的是___________ d__。 A)R( A) B )R( A, B)C )R (A, B, C, D) D )R (A X B X C X D) 13. 若实体间联系是M N的,则将联系类型_________ a___ 。 A)也转换为关系模型 B)属性加入任一个关系模式中 C)属性加入N端实体类型相应的关系模式中 D)属性加入M端实体类型相应的关系模式中 14. 数据库系统的构成为数据库、计算机硬件系统、用户和________ a ____ 。 A 数据库管理系统 B 操作系统 C 数据集合 D 文件系统 15. 层次型、网状型和关系型数据库划分原则是________ c ___ 。 A 文件大小 B 记录长度 C 数据之间的联系 D 联系的复杂程度 16. 在数据库设计中用关系模型来表示实体和实体之间的联系,关系模型的结构是 _____ d ___ 。 A 封装结构 B 层次结构 C 网状结构 D 二维表结构 17. 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过__a ________ 。 A 主键 B 超键 C 外键 D 候选键 18. 层次模型不能直接表示 ______ b __ 关系。 A 1:1 B m:n C 1:m D 1:1 和1:m 19. DBAS旨的是_____ d____ 。

计算机基础第2章实验(raptor实验)实验报告撰写要求

计算机基础实验报告 实验名称基于流程图的可视化程序设计 指导教师张冬慧 实验日期 专业电子信息科学与技术 学生姓名王雨琪 班级/学号电技1302 2013012649 成绩

实验一可视化程序设计环境入门 一.实验目的 (1)掌握可视化环境RAPTOR的安装和使用。 (2)熟悉RAPTOR中的基本概念。 (3)掌握RAPTOR的图形符号的使用方法。 (4)掌握使用RAPTOR绘制算法流程图的设计方法。 (5)掌握RAPTOR环境下一般算法的设计方法。 (6)通过RAPTOR的“帮助”菜单了解RAPTOR的运算符和内置常量等。二.实验内容 1. 实验题目:输入半径值,计算相应的圆周长和圆面积。 RAPTOR流程图:

程序运行结果(截图): 三.实验体会 实验二RAPTOR中选择结构算法设计 一.实验目的 掌握RAPTOR中包含分支结构的算法的设计。 二.实验内容 1. 实验题目:在RAPTOR编程环境中,编写并运行求解如下分段函数的算法。 RAPTOR流程图(截图):

程序运行结果(截图): 2. 实验题目:参照上述分段函数的算法设计,在RAPTOR编程环境中,编写并运行求解如下分段函数的算法。 RAPTOR流程图(截图): 程序运行结果(截图):

3. 实验题目:参照上述分段函数的算法设计,在RAPTOR编程环境中,编写并运行求解如下分段函数的算法:计算运费。 运费=重量(吨数)*路程(千米数)*折扣(按路程优惠) 其中,700km以上按90%计算,1000km以上按85%计算。 RAPTOR流程图(截图): 程序运行结果(截图):

高中信息技术《算法与程序设计》试题

高中信息技术《算法与程序设计》试题 一、单选题(每小题3分,20小题,共60分) 1、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?() A、分析问题 B、设计算法 C、编写程序 D、调试程序 2、在调试程序过程中,下列哪一种错误是计算机检查不出来的?() A、编译错误 B、执行错误 C、逻辑错误 D、任何错误计算机都能检查出来 3、下列关于算法的叙述中,错误的是() A、一个算法至少有一个输入和一个输出 B、算法的每一个步骤必须确切地定义 C、一个算法在执行有穷步之后必须结束 D、算法中有待执行的运算和操作必须是相当基本的。 4、流程图中表示判断的是()。 A、矩形框B、菱形框C、圆形框D、椭圆形框 5、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是() A、顺序结构 B、选择结构 C、层次结构 D、循环结构 6、能够被计算机直接识别的语言是() A、伪代码 B、高级语言 C、机器语言 D、汇编语言 7、在VB语言中,下列数据中合法的长整型常量是() A、08A B、2380836E C、88.12345 D、1.2345E6 8、求Mid(“ABCDEFG”,3,2)的结果是() A、“ABC” B、“CD” C、“ABCDEF” D、“BCD” 9、表达式 A+B+C=3 OR NOT C<0 OR D>0 当A=3,B=4,C=-5,D=6时的运算结果是() A、0 B、1 C、TRUE D、FALSE 10、在循环语句 For x=1 to 100 step 2 …… Next x 中,x能达到的最大值是() A、100 B、99 C、98 D、97 11、在下列选项中,不属于VB的对象的是() A、窗体的背景颜色 B、命令按钮 C、文本框 D、标签 12、在调试程序的时候,经常要设置断点,设置断点的快捷键是()

程序设计基础试题和答案解析二

《程序设计基础》考试试卷二 1.1966年,Bohra和Jacopini提出的三种基本程序设计结构是:________ A.if、while和for; B. switch、do-while和for; C.while、do-while和for; D.顺序结构、分支结构和循环结构。 2.算法的特征不包括:______。 A.有穷性 B.可行性 C.确定性 D.有1个或者多个输入。 3.C语言源程序的基本组成单位是______。 A.函数 B. 语句 C. 声明和语句 D. 文件 4.下列标识符中,只有______是合法的。 A.if B. 3ab C. Int D. A-4 5.下列常量中,只有______是合法的。 A.3e-0.3 B. ‘abc’ C. 02a1 D. ‘\377’ 6.下列说法中正确的是:______。 A.C语言中的for语句的三个表达式都可以省略,而且分号也可以省略。 B.宏替换比函数调用的执行速度慢。 C.实质上,C语言中的指针就是一个变量的地址。 D.C语言中的任何函数都可以由程序员命名。 7.C语言中,运算对象必须是整型的运算符是_______。 A./ B. % C. + D. - 8.以下叙述中错误的是_______。 A.C语句必须以分号结束 B.复合语句在语法上被看作一条语句 C.空语句出现在任何位置都不会影响程序运行 D.赋值表达式末尾加分号就构成赋值语句 9.以下叙述中正确的是_______。 A.调用printf函数时,必须要有输出项 B.使用putchar函数时,必须在之前包含头文件stdio.h C.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出 D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10.以下关于函数的叙述中正确的是_______。 A.每个函数都可以被其它函数调用(包括main函数) B.每个函数都可以被单独编译 C.每个函数都可以单独运行 D.在一个函数内部可以定义另一个函数 11.有以下程序段typedef struct NODE{ int num; struct NODE *next;

历年算法与程序设计学业水平考试真题(带答案)

一、选择题 1、流程图是描述()的常用方式。 A、程序 B、算法 C、数据结构 D、计算规则 2、下面不属于算法描述方式的是()。 A、自然语言 B、伪代码 C、流程图 D、机器语言 3、以下运算符中运算优先级最高的是()。 A、+ B、^ C、>= D、* 4、某程序中三个连续语句如下: a=1 b=2 c=b+a 它属于() A、顺序结构 B、选择结构 C、循环结构 D、以上三种都不是 5、穷举法的适用范围是() A、一切问题 B、解的个数极多的问题 C、解的个数有限且可一一列举 D、不适合设计算法 6、在现实生活中,人工解题的过程一般分为() A、理解分析问题→寻找解题方法→用工具计算→验证结果 B、寻找解题方法→理解分析问题→用工具计算→验证结果 C、用工具计算→验证结果→寻找解题方法→理解分析问题 D、用工具计算→验证结果→理解分析问题→寻找解题方法 7、下列关于算法的特征描述不正确的是() A、有穷性:算法必须在有限步之内结束 B、确定性:算法的每一步必须确切的定义 C、输入:算法必须至少有一个输入 D、输出:算法必须至少有一个输出 8、下列哪一个不是用于程序设计的软件() A、BASIC B、C语言 C、Word D、Pascal 9、下列可以作为合作变量名的是() A、a7 B、7a C、a-3 D、8 10、编程求1+2+3+........+1000的和,该题设计最适合使用的控制结构为()。 A、顺序结构 B、分支结构 C、循环结构 D、选择结构 11、下列步骤不属于软件开发过程的是() A、任务分析与系统设计 B、软件的销售 C、代码编写与测试 D、软件测试与维护12.以下程序段运行时,语句k=k+1 执行的次数为()次。 k=-10 do k=k+1 loop while(until)k=0 A. 9 B. 10 C. 11 D. 12 13.已知x=6, y=5, 则以下运算结果为True 的是() A.Not(x>y) B. (x<5)or(y>6) C. (x>=6)And(y>=5) D. Not(x>4) 14.模块化程序设计方法反映了结构化程序设计的()基本思想。 A、自顶向下,逐步求精 B、面向对象 C、自定义函数、过程 D、可视化编程 15、一位同学想编程解决“韩信点兵”的问题,他制定的如下工作过程中,最恰当的是() A、设计算法,编写程序,提出问题,运行程序,得到答案

计算机程序设计基础习题册(含答案)

《计算机程序设计基础》 习 题 册

班级学号姓名成绩一、单选题 1.C++源程序文件的默认扩展名为A。 A) cpp B) exe C) obj D) lik 2.由C++源程序文件编译而成的目标文件的默认扩展名为C。 A) cpp B) exe C) obj D) lik 3.由C++目标文件连接而成的可执行文件的默认扩展名为B。 A) cpp B) exe C) obj D) lik 4.编写C++程序一般需经过的几个步骤依次是B。 A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接 5.程序中主函数的名字为 A 。 A) main B) MAIN C) Main D) 任意标识符 6.下面四个选项中,均是不合法的用户标识符的选项的是C。 A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 7.下列变量名中合法的是C。 A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 8.存储以下数据,占用存储字节最多的是 D 。 A) 0 B) ‘0’ C) “0” D) 0.0 9.在C++语言中,字符型数据在内存中的存储形式是D。 A) 补码 B) 反码 C) 原码 D) ASCII码 10.若有说明语句:char c =’\072’;则变量c A。 A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令

算法与程序设计会考复习题

《算法与程序设计》模块会考复习题 一.单选题 1. java方法重载时参数不可能出现的情况是____D______。P67 A.参数的个数不同 B.参数的个数相同而参数的类型不同 C.参数不完全对应相同D.参数完全对应相同 2. 运行Java程序需要的工具软件所在的目录是___A_______。P16 A.JDK的bin目录B.JDK的demo目录 C.JDK的lib目录D.JDK的jre目录 3. J_HelloWorld.java 的文件内容如下: class J_HelloWorld { public static void Main(String args[]) M不应大写 { System.out.println(" Hello World "); } } 下面说法正确的是____B______。 A.J_HelloWorld.java无法通过编译,因为main方法的声明方式不对 B.J_HelloWorld.java可以通过编译,但程序运行时出现“程序中没main方法”的异常C.J_HelloWorld.java可以通过编译,但无法运行,因为该文件没有public类 D.J_HelloWorld.java可以通过编译并正常运行,结果输出字符串“Hello World” 4. 逻辑表达式!(3/2==1.5)&& 9<3|| 9>3的运算结果为_____A_______。 P9 A.true B.false C.表达式有错D.条件不足 5. 下列可以将变量x和y的值互换的语句是___B______。P35 A.x=y;y=x; B.z=x;x=y;y=z; C.x=z;z=y;y=x; D. x=(x+y)/2;y=(x-y)/2; 6. 执行完下面程序片段之后,下面结论正确的是___B_____。 P43 int a,b,c; a=1;b=2; c=(a+b)>3 ? a++:b++; A.a的值是2,b的值是3 B.a的值是1,b的值是3 C.a的值是1,b的值是2 D.c的值是false。 7. 下面程序片段输出的是___C_______。应使用关系运算符== int a=3,b=1; if(a=b)

程序设计基础练习题(全答案版)

《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.360docs.net/doc/ef8637810.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统 2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。 A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”) C. System.Console.WriteLine(“x={0}”,x) D. System.Console.WriteLine(“x={x}”) 3.要退出应用程序的执行,应执行下列的_A___语句。 A. Application.Exit(); B. Application.Exit; C. Application.Close(); D. Application.Close; 4.关于C#程序的书写,下列不正确的说法是__D________。 A.区分大小写 B.一行可以写多条语句 C.一条语句可以写成多行 D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 5. 在C#语言中,下列能够作为变量名的是__C__。 A.if B. 3ab C. b_3a D. a-bc 7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。 A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0 8. 以下程序的输出结果是___C_____。 A. 5 B. 4 C. 6 D. 不确定 9. If语句后面的表达式应该是__A___。 A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序:

算法与程序设计填空题10套

第一套 1.有如下程序段: x=5 y=6 p=Not(x+y=11) 该程序段运行后,P的值是(1)False或0。 2.有如下程序段: x=5 y=10 z=12 if x+y<=z Or y+z<=x Or x+z<=y then a="False"else a="True" 该程序段运行后,a的值为(1)True。 3.有如下程序段: s=0 for i=1to5 s=s+i*i next i 该程序段运行后,s的值为(1)55。 4.程序填空 随机产生10个0~100之间的整数,按从小到大的次序排序并输出。为了实现这一目标,完善下面 的VB程序,在划线处填入合适的语句或表达式,完成程序设计(流程图参见图12-3)。

图12-3 sub command1_click() const n=10 dim i,j,t as integer dim a(1to10)as integer for i=1to10 ______(1)__a(i)=int(Rnd*101)________ next i For i=1To n-1 For j=i+1To n If______(2)_a(i)>a(j)_____Then k=a(i):a(i)=a(j):a(j)=k End If Next j Next i

For i=1To n List1.AddItem Str(a(i)) Next i 第二套 1.有如下程序段: x=5 y=6 t=x x=y y=t 该程序段运行后,y的值为(1)5。 2.有如下程序段: x=5 y=-20 if not x>0then x=y-3else y=x+3 该程序段运行后,x的值为(1)5。 3.有如下程序段: e=0:f=1 for i=1to3 e=e+f f=f+e next i 该程序段运行后,f的值为(1)13。 4.程序填空 有30个人,其中有男人、女人和小孩。他们在一家饭馆里花去500元。已知,每个男人花30元,每个女人花20元,每个小孩花10元。问男人、女人、小孩各为多少人? 为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计。 sub command1_click() dim man,woman,child,s as integer for man=1to15 for woman=1to23 child=_______(1)_30-woman-man_ s=30*man+20*woman+10*child if___(2)s=500and child>0then list1.additem str(man)+""+str(woman)+""+ str(child) end if

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

程序设计基础复习题 一、单选 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句结论只有一句是错误的,它是()

《算法与程序设计》试题带答案

《算法与程序设计》试题 学校:_____________ 班级:____________ 学号:____________ 姓名:____________ 一、单选题(每小题3分,20小题,共60分) 1、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?() A、分析问题 B、设计算法 C、编写程序 D、调试程序 2、在调试程序过程中,下列哪一种错误是计算机检查不出来的?() A、编译错误 B、执行错误 C、逻辑错误 D、任何错误计算机都能检查出来 3、下列关于算法的叙述中,错误的是() A、一个算法至少有一个输入和一个输出 B、算法的每一个步骤必须确切地定义 C、一个算法在执行有穷步之后必须结束 D、算法中有待执行的运算和操作必须是相当基本的。 4、流程图中表示判断的是()。 A、矩形框B、菱形框C、圆形框D、椭圆形框 5、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是() A、顺序结构 B、选择结构 C、层次结构 D、循环结构 6、能够被计算机直接识别的语言是() A、伪代码 B、高级语言 C、机器语言 D、汇编语言 7、在VB语言中,下列数据中合法的长整型常量是() A、08A B、2380836E C、88.12345 D、1.2345E6 8、求Mid(“ABCDEFG”,3,2)的结果是() A、“ABC” B、“CD” C、“ABCDEF” D、“BCD” 9、表达式 A+B+C=3 OR NOT C<0 OR D>0 当A=3,B=4,C=-5,D=6时的运算结果是() A、0 B、1 C、TRUE D、FALSE

(完整版)程序设计基础试题_10_答案

广州大学学年第学期考试卷 课程高级语言程序设计考试形式(开/闭卷,考试/查) 学院系专业班级学号姓名 一、填空题(每空1分,共10分) 1.C源程序的基本单位是(函数)。 2.一个C源程序中至少应包含一个(main()函数)。 3.若a和b均是int型变量,且a和b的初值均为5,则计算表达式a+=b++ 后,a的值为(10 ),b的值为( 6 )。 4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,b值为( 4 ),c 值为( 2 )。 5.表达式8.2-2/3 的计算结果是(8 )。 6.在C语言中,整数可用三种数制表示,它们分别是(十进制)、(八进制)和(十六进制)。 二、程序计算题(每小题5分,共15分) 1. # define f(a) printf(“%d”,a) main() { int i,b[]={1,2,3,5,7,9,11,13,15},*p=5+b; for(i=3;i;i--) switch(i) { case 1: case 2: f(*p++); break;

case 3: f(*(--p)); } } 2. main() { int arr_sum(int arr[],int n); int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total; int (*pt)( int arr[],int n); pt=arr_sum; p=a[0]; total=(*pt)(p,12); printf(“total=%d\n”,total); } arr_sum(int arr[],int n) { int i,sum=0; for(i=0;i

计算机程序设计基础习题册含答案

《计算机程序设计基础》 计算机程序设 计基础_基础知识(一) 班级 学号 姓名 成 绩 一、 单选题 习题册

1.C++源程序文件的默认扩展名为A。 2.A) cpp B) exe C) obj D) lik 3.由C++源程序文件编译而成的目标文件的默认扩展名为C。 4.A) cpp B) exe C) obj D) lik 5.由C++目标文件连接而成的可执行文件的默认扩展名为B。 6.A) cpp B) exe C) obj D) lik 7.编写C++程序一般需经过的几个步骤依次是B。 8.A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接9.程序中主函数的名字为 A 。 10.A) main B) MAIN C) Main D) 任意标识 符 11.下面四个选项中,均是不合法的 用户标识符的选项的是 C。 12.A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 13.下列变量名中合法的是 C。 14.A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 15.存储以下数据,占用存储字节最 多的是 D 。 16.A) 0 B) ‘0’

C) “0” D) 17.在C++语言中,字符型数据在内存中的存储形式是D。 18.A) 补码 B) 反码 C) 原码 D) ASCII码 19.若有说明语句:char c =’\072’;则变量c A。 20.A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 计算机程序设计基础_基础知识(二) 班级学号姓名成绩 一、单选题 1.下列哪一个是C++语言中合法的变量 C A) 8ZSe B) ±A0 C) X0_2 D) ’x0’2.已知ch是字符型变量,下面不正确的赋值语句是A 3.A) ch='a+b' B) ch='\0'

算法与程序设计习题

《算法与程序设计》模块练习题 一、单选题 1、模块化程序设计方法主要通过()来实现。 A.递归算法和递归程序 B.过程和函数的定义和调用 C.程序的循环结构 D.对象答案:B 2、text1.text的含义正确的是()。 A.text1是控件名称,text是控件属性 B.text1是窗体名称,text 是控件 C.text1是控件名称,text是方法 D.text1是控件属性,text是控 件答案:A 3、以下程序段运行后S的值是()。 s = 0 For i = 1 To 14 x = 2 * i - 1 If x Mod 3 = 0 Then s = s + 1 Next i A.0 B.4 C.5 D.14 答案:C 4、数列1,4,7,10,13,……的递推公式为()。 A.f(1)=1;f(n)=n+3 B.f(1)=1;f(n)=n*2-1 C.f(1)=1;f(n)=n*2+1

D.f(1)=1;f(n)=f(n-1)+3 答案:D 5、对于对象及其特征的错误理解是()。 A.对象都具有一个标识自己以区别其他对象的名字。 B.对象都具有自身的属性及其属性值。 C.对象一般只用数据表示属性,但不用代码表示行为。 D.对象都具有自身的行为(操作)。 答案:C 6、VB函数Left ()从字串左端取部分字串,那么Left("Visual Basic 6.0", 8)的值为()。 A.Visual B B.Visual C.Visual Ba D.asic 6.0 答案:A 7、程序段如下: c ="1234" For i = 1 To 4 Print _____, Next 如果要让程序运行后得到如下结果: 1 1 2 12 3 1234 则在下划线处应填入的内容为()。 A.Right(c,i) B.Left(c,i) C.Mid(c,i,1) D.Mid(c,i,i) 答案:B 8、若X = True,执行If X Then X = 0 Else X = 1后X的结果为()。

《程序设计基础》题库(50道)

《程序设计基础》题库(50道) <说明> 1、难易程度依次为:易(16道)、较易(38道)、较难(31道)、难(15道)。 2、总共抽8道题,按难易程度:易(1道)、较易(4道)、较难(2道)、难(1道); 按题型:顺序(1道)、分支(2道)、单循环(2道)、多循环(1道)、数组(1道)、字符串(1道) 3、考试要求:先画流程图再写程序,理论考试,2个半小时 一、顺序结构 1、 请定义4个整型变量,并打印输出这4个变量的加、减、乘、除后的结果。(易) 2、 将华氏温度转化成摄氏温度。公式为:C=(5/9)*(F-32),其中F 为华氏温度,C 为 摄氏温度。请根据给定的华氏温度输出对应的摄氏温度。(易) 3、 根据观察,蟋蟀的名叫频率与温度有关,具体的公式为T=(c+40)/10.其中,c 代表 蟋蟀每分钟鸣叫数,T 代表华氏温度。请根据蟋蟀每分钟的鸣叫数输出相应的华氏温度。(易) 4、 编写程序,读入0~1000的一个整数并将其各位数字之和赋给一个整数,如整数932, 各位数字之和为14. (较易) 5、 编程实现两个整数交换位置,例如:int x = 6,y = 9,交换后 x = 9,y = 6。(较易) 6、 求空间两点之间的距离。(提示:空间一点(x,y,z ),可由三个实数来描述)(较易) 7、 已知圆的半径,求圆的面积。(易) 8、 已知一个三角形的三边边长分别为a,b,c ,利用海伦公式求三角形的面积。(较难) 海伦公式: 9、 求两数平方和的算术根。(易) 10、 给定一段时间求出它的秒数。(如计算2小时 17分30秒等于多少秒)(易) 11、 某印刷厂3月1日有A4纸500盒,3月2日又买进进100盒,3月3日用掉A4 纸存量的三分之二,3月4日又买进A4纸存量的2倍,问该印刷厂3月1日到3月4日期间每天的A4纸存量分别是多少盒?(易) 12、 三个小朋友,大毛有糖果50粒,二毛有糖果43粒,三毛有糖果13粒。现在他们 三兄弟做游戏,从大毛开始,将自己的糖果三等分,三兄弟每人一份,多余的自己吃掉;然后二毛和三毛也依次这样做,问最后三兄弟各有多少糖果?(较易) 二、分支结构 13、 两个整数比较大小,输出较大值。(易) 14、 三个整数比较大小,输出最大值。(较易) 15、 求下列函数中y 的值。(较易) y=10 (x=0) y=3x+5 (x>0) y=x-2 (x<0) 16、 判断某年是否为闰年。(闰年的条件是:该年的年号能被4整除且不能被100整除, 或该年的年号能被400整除,则该年是闰年,否则不是闰年。)(较易) 17、 根据某同学的成绩,判定其成绩的等级。(90~100分为“优秀”,80~89为“良好”, 70~79为“中等”,60~69为“及格”,60分以下为“不及格”。)(较易) ))()((c p b p a p p S ---=2 c b a p ++=

vfP程序设计基础习题集

VFP程序设计习题 习题一 一、判断题(1分/题,共20分,对打画√,错打×) 1.建立自由表分两步:定义表结构和输入数据。 2.表间的关系分三种:一对一关系、一对多关系和多对多关系。 3.若要使用多个表,就要使用多个工作区。 4.在应用程序中可以通过使用该工作区的表的别名来标识工作区。 5.对象具有属性,而属性只能在设计阶段设置。 6.引用对象的方法分绝对引用和相对引用。 7.表单集是指两个以上的表单同时输出,并且可以通过程序或鼠标交换输出权。 8.一条命令可分几行写,在行结束处用“:”表示一行未完,转入下一行。 9.VFP主要数据容器有:表记录、变量和数组。 10.报表包括两个基本组成部分:数据源和布局。 11.如果不想使用“报表向导”或“快速报表”设计报表,可以从空白报表布局开始,然后自己添加控件。 12.表选择查询输出的去向可以是浏览、报表或表单。 13.视图与查询相类似的地方是:可以用来从一个或多个相关联的表中提取有用信息。14:视图与表相类似的地方是:可以用来更新其中的信息,并将更新结果永久保存在磁盘上。15.在“数据库设计器”中,视图的显示方式与表在分层结构中的显示方式相同,所不同的是视图名代替了表名。 16.一个视图在使用时,将作为临时表在自己的工作区中打开。 17.如果打开基于本地表的视图,则在Visual FoxPro的另一个工作区中基表被同时打开。18.在视图中更新数据与在表中更新数据类似,使用视图还可以对其基表进行更新。19.VFP中的NULL表示未知数据,便于与含有NULL值的SQL数据库一起工作。20.索引是改变表的物理顺序,排序是排列表的逻辑顺序。 二、选择题(每个选择3分,共24分) 1.统计女生人数并将结果存放于变量X中的命令是() (A).COUNT FOR .NOT. 性别=”男” TO X (B).COUNT FOR ( 性别=”女”)=.T. TO X (C).SUM FOR ( 性别<>”男”)=.T. TO X (D).SUM FOR 性别=”女” TO X 2. 在已打开的表中,要永久删除当前记录位置开始的10条记录,可用() (A)先执行DELETE NEXT 10命令,后用PACK命令 (B)先执行DELETE RECORD 10命令,后用PACK命令 (C)先执行DELETE FOR RECORD> 10命令,后用PACK命令 (D)ZAP NEXT 10 3.按数值型字段”总分”进行索引,使其按降序排列的命令是() (A)INDEX ON -总分TO WP (B)INDEX ON 总分/A TO WP (C)INDEX ON 总分TO WP (D)INDEX ON 总分/D TO WP 4.下列操作后,不改变表记录指针的命令是()

算法与程序设计试题带答案

高一第二学期《算法与程序设计》学分认定试题 学校:_____________ 班级:____________ 学号:____________ 姓名:____________ 一、单选题(每小题3分,20小题,共60分) 1、用计算机解决问题时,首先应该确定程序“做什么”,然后再确定程序“如何做”请问“如何做”是属于用计算机解决问题的哪一个步骤() A、分析问题 B、设计算法 C、编写程序 D、调试程序 2、在调试程序过程中,下列哪一种错误是计算机检查不出来的() A、编译错误 B、执行错误 C、逻辑错误 D、任何错误计算机都能检查出来 3、下列关于算法的叙述中,错误的是() A、一个算法至少有一个输入和一个输出 B、算法的每一个步骤必须确切地定义 C、一个算法在执行有穷步之后必须结束 D、算法中有待执行的运算和操作必须是相当基本的。 4、流程图中表示判断的是()。 A、矩形框B、菱形框C、圆形框D、椭圆形框 5、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是() A、顺序结构 B、选择结构 C、层次结构 D、循环结构 6、能够被计算机直接识别的语言是() A、伪代码 B、高级语言 C、机器语言 D、汇编语言 7、在VB语言中,下列数据中合法的长整型常量是() A、08A B、2380836E C、 D、 8、求Mid(“ABCDEFG”,3,2)的结果是() A、“ABC” B、“CD” C、“ABCDEF” D、“BCD” 9、表达式A+B+C=3 OR NOT C<0 OR D>0 当A=3,B=4,C=-5,D=6时的运算结果是() A、0 B、1 C、TRUE D、FALSE 10、在循环语句For x=1 to 100 step 2 …… Next x 中,x能达到的最大值是() A、100 B、99 C、98 D、97 11、在下列选项中,不属于VB的对象的是() A、窗体的背景颜色 B、命令按钮 C、文本框 D、标签 12、在调试程序的时候,经常要设置断点,设置断点的快捷键是()A、F1 B、F8 C、F9 D、F12 13、算法描述可以有多种表达方法,下面哪些方法不可以描述“闰年问题”的算法() A、自然语言 B、流程图 C、伪代码 D、机器语言 14、以下不属于非法用户自定义标识符(常量和变量命名)的是() A、8ad B、ad8 C、_a8d D、const 15、已知A,B,C,D是整型变量,且都已有互不相同的值,执行语句B=0;A=C;D=A;D=B;后,其值相等的变量是() A、A,D B、A,C C、C,B D、B,A 16、要交换变量A和B的值,应使用的语句组是( ) A、A=B;B=C;C=A B、C=A;A=B;B=C C、A=B;B=A D、C=A;B=A;B=C 17、VisualBasic中以单引号开头一行文字称为注释,它对程序的运行() A、起一定作用 B、有时候起作用 C、不起任何作用,但是必须的 D、不起任何作用,但能增加程序的可阅读性 18、要使一个命令按钮显示文字“确定”,正确的设置是把该命令按钮的()。 A、属性Font设置为“确定” B、属性.ForeColor设置为“确定” C、属性Caption设置为“确定” D、属性BorderStyle设置为“确定” 19、要从文本框TXTShowOut中输出"中国您好!",代码为( ) A ="中国您好!" B ="中国您好!" C ="中国您好!" D Val=“中国您好!” 20、下列Visual Basic程序段运行后,变量max的值为()。 a=11; b=15; max=a IF b>max Then max =b A、15 B、11 C、15或11都有可能 D、以上都不是 二、阅读程序写结果(第1~2小题每题5分,第3小题10分,共20分) 1、Private Sub Form_Load() N=InputBox(“请输入N的值:”,“输入”) S=1 For i=1 to N S=S*i Next i MsgBox “S=”+Str(s),0,”计算结果” End Sub 当N=5时,运行的结果是__________________。

程序设计基础-题库 (填空)

程序设计基础-题库 1、C源程序的基本单位是___。 答案:函数; 2、在C语言中,输入操作是由库函数___完成的,输出操作是由库函数___完成的。答案: scanf;scanf();printf;printf(); 3、一个C源程序中,至少应该包含一个___。 答案:主函数;main函数;main();主函数main; 4、C语言程序中,一个函数由两部分组成,分别是__和__。 答案:函数的首部;函数首部;函数体;函数头;函数的头;函数体;函数的首部;函数首部;函数头;函数的头; 5、请写出以下表达式的值: 10/4*3 答案: 6 ; 6、已有定义int x;float y;且执行scanf("%3d%f",&x,&y);语句时,从第一列开始输入数据12345□678,则x的值为⑴ ,y的值为⑵ 。 答案: 123 ; 45.0 ; 解析:读取数据格式中规定域宽时,系统仅读取指定宽度的数据。 7、以下程序的输出结果是()。 main() {int x=1,y=2; printf("x=%d y=%d *sum*=%d\n",x,y,x+y);

printf("10 Squared is :%d\n",10*10); } 答案: x=1 y=2 *sum*=3 10 Squared is :100 ; 解析: 8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=( );b=a-( );a-=( ); 答案: b ; b ; b ; 解析: 9、若x为int型变量,则执行以下语句后x的值为()。 x=7; x+=x-=x+x; 答案: -14 ; 解析: 10、以下程序实现输出x,y,z三个数中的最大者。请分析程序填空。 main() {int x=4,y=6,z=7;; int ____; if(____) u=x;

相关文档
最新文档