C程序本科复习题(1)

C程序本科复习题(1)
C程序本科复习题(1)

1、C 语言程序的基本单位是( ) A) 程序行 B) 语句 C) 函数 D) 字符

2、C 语言程序的三种基本结构是( ) A 、顺序结构,选择结构,循环结构 B 、递归结构,循环结构,转移结构 C 、嵌套结构,递归结构,顺序结构 D 、循环结构,转移结构,顺序结构、

3、C 语言可执行程序的开始执行点是( ) A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main 函数 D) 包含文件中的第一个函数

4、C 语言中,运算对象必须是整型数的运算符是 A) % B) \ C) %和\ D) *

5、C 语言中函数返回值的类型是由()决定。 A) return 语句中的表达式类型 B) 调用函数的主调函数类型 C) 调用函数时临时 D) 定义函数时所指定的函数类型

6、当调用函数时,实参是一个数组名,则向函数传送的是( ) A) 数组的长度 B) 数组的首地址 C) 数组每一个元素的地址 D) 数组每个元素中的值

7、C 语言中数组下标的下限是( )。 A 、1 B 、0 C 、视具体情况 D 、无固定下限

8、若变量已正确定义,要将a 和b 中的数进行交换,下面不正确的语句组是( ) A a=a+b,b=a-b,a=a-b; B t=a;a=b;b=t; C a=t;t=b;b=a; D t=b;b=a;a=t;

9、x 、y 、z 被定义为int 型变量,若从键盘给x 、y 、z 输入数据,正确的输入语句是 A) input x,y,z; B) scanf("%d%d%d",&x,&y,&z); C) scanf("%d%d%d",x,y,z); D) read("%d%d%d",&x,&y,&z); 10、表达式:10!=9的值是 A) true B) 非零值 C) 0 D) 1 11、表示关系x<=y<=z 的c 语言表达式为 A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z) C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z) 12、假定int 类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x 在内存中所占字节数是 A) 3 B) 6 C) 10 D) 20 13、若a 为int 类型,且其值为3,则执行完表达式a+=a-=a*a 后,a 的值是 A) -3 B) 9 C) -12 D) 6 14、若已定义x 和y 为double 类型,则表达式:x=1,y=x+3/2的值是 A)1 B)2 C)2.0 D)2.5 15、若有以下定义: char a; int b; float c; double d; 则表达式a*b+d-c 值的类型为 A) float B) int C) char D) double 16、设 a 、b 、c 、d 、m 、n 均为 int 型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式 (m=a>b)&&(n=c>d)运算后,n 的值为 A) 0 B) 1 C) 2 D) 3 17、设有说明语句:char a='\72';则变量a A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法 18、下列标识符中不合法的是____ A 、s_name B 、_e C 、fox D 、3DS 、 19、下列不正确的转义字符是 A) '\\' B) '\" C) '074' D) '\0' 20、下列描述中不正确的是 A) 字符型数组中可以存放字符串 B) 可以对字符型数组进行整体输入、输出 C) 可以对整型数组进行整体输入、输出 D) 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值 21、下列说法中正确的是__ ______。 A 、在switch 语句中一定要使用break 语句 B 、在switch 语句中不一定要使用break 语句 C 、break 语句是switch 语句的一部分 D 、break 只能用于switch 语句中、 22、下列运算符其优先级最高的是_____。 A 、|| B 、&& C 、+ D 、= 23、以下正确的程序段是________. a)char str[20]; scanf("%s",&str); b)char *p; scanf("%s",p); c)char str[20]; scanf("%s",&str[2]) ; d)char str[20],*p=str; scanf("%s",p[2]); 24、有以下程序段 int k=0 while(k=1)k++; while 循环执行的次数是 A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次 25、语句:printf("%d",(a=2)&&(b= -2);的输出结果是___ A) 无输出 B) 结果不确定 C) -1 D) 1 26、在C 语言中,若对函数类型未说明,则函数的隐含类型是____类型 A) void B) double C) int D) char 27、在宏定义 #define PI 3、14159中,用宏名PI 代替一个 A) 单精度数 B) 双精度数 C) 常量 D) 字符串 28、以下选项中,不能正确赋值的是 A) char s1[10];s1="Ctest"; B) char s2[]={'C', 't', 'e', 's', 't'}; C) char s3[20]="Ctest"; D) char *s4="Ctest\n"; 29、有如下程序 long fib(int n) { if(n>2) return(fib(n-1)+fib(n-2)); else return(2); } main () { printf("%d\n",fib(3)); } 该程序的输出结果是 A) 2 B) 4 C) 6 D) 8 30、有如下程序段 int *p,a=10,b=1 p=&a; a=*p+b; 执行该程序段后,a 的值为 A) 12 B) 11 C) 10 D) 编译出错 31、有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是 A) *p+9 B) *(p+8) C) *p+=9 D) p+8 32.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是( )。 A 函数调用可以作为独立的语句存在 B 函数调用可以作为一个函数的实参 C 函数调用可以出现在表达式中 D 函数调用可以作为一个函数的形参 33. 已知:int t=0; while (t=1){...} 则以下叙述正确的是( )。 A 循环控制表达式的值为0 B 循环控制表达式的值为1 C 循环控制表达式不合法 D 以上说法都不对 34.若运行时给变量x 输入12,则以下程序的运行结果是( )。 main () {int x,y; scanf ("%d",&x ); y=x>12?x+10:x-12; printf ("%d \n",y ); } A 0 B 22 C 12 D 10 35. 以下程序的输出结果是( )。 main() {int s[10]={1,2,3,4,5,6,7,8,9,10}; printf("%d\n",s[10]); } A 、10 B 、9 C 、11 D 、

不定

36.以下程序运行后,输出结果是( )

main()

{int

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

int i , j, s=0;

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

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

if(i = = 2-j) s=s+a[i][j];

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

}

A 6

B 7

C 8

D 9

37.一个二维数组 int student[5][6], 其第2行第3列元素的正确表示是:( )

A student [3][2]

B student

[2][3]

C student [2,3]

D student

[1][2]

38.若有代数式3ae/bc,则不正确的C 语

言表达式是( )

A.a/b/c*e*3

B.3*a*e/b/c

C.3*a*e/b*c

D.a*e/c/b*3

39.以下不正确的叙述是( )

A.在C 程序中,逗号运算符的优先级最低

B.在C 程序中,APH 和aph 是两个不同的变量

C.若a 和b 类型相同,在计算了赋值表达式

a=b 后b 中的值将放入a 中,而b 中的值不变 D.当从键盘输入数据时,对于整型变量只能

输入整型数值,对于实型变量只能输入实型数值

40.已知字母A 的ASCII 码为十进制数65,且c2为字符型,则执行语句

c2='A'+'6'-'3';后,c2中的值为( ) A.D B.68 C.不确定的

值 D.C

41.printf 函数中用到格式符%5s,其中数字

5表示输出的字符串占用5列.如果字符串长度以大于5,则输出按方式( );如果字

符串长度小于5,则输出按方式( ) A.从左起输出该字串,右补空格

B.按原字符长从左向右全部输出

C.右对齐输出该字串,左补空格

D.输出错误信息

42.判断char 型量ch 是否为大写字母的正

确表达式是( )

A.‘A ’<=ch<=‘Z ’

B.(ch>=‘A ’)&(ch<=‘Z ’)

C.(ch>=‘A ’)&&(ch<=‘Z ’)

D.(‘A ’<=ch)AND(‘Z ’>=ch)

43.以下语句语法正确的是:( ) A.if(x>0) printf(“%f ”,x)

else printf(“%f ”,-x);

B.if(x>0)

{x=x+y;printf(“%f ”,x);}

else printf(“%f ”,-x)

C.if(x>0)

{x=xy; printf(“%f ”,x);};

else printf(“%f ”,-x);

D.if(x>0)

{x=x+y;printf(“%f ”,x)}

else printf(“%f ”,-x);

44.若w=1,x=2,y=3,z=4,则表达式

w

D.1

45.设有程序段 int k=10; while (k=0)

k=k-1; 则下面描述中正确的是 ( )

A while 循环执行10次

B 循环是无限循环

C 循环体语句一次也不执行

D 循环体语句执行一次

46.对for(表达式1;; 表达式3)可理解为

( )

A. for(表达式1;0; 表达式3)

B. for(表达式1;1;表达式3)

C. for(表达式1;表达式1;表达式3)

D. for(表达式1;表达式3;表达式3)

47.若i 为整型变量,则以下循环执行的次

数是( )

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

A.无限次

B.0次

C.1次

D.2

48.有以下定义

int a=0;

double b=1.25;

char c=’A ’;

#define d 2

则下面语句中错误的是( ) A a++ B b++ C c++ D d++ 49. 以下程序运行后,输出结果是______ main() { int m=0256,n=256; printf("%o %o\n",m,n); } A 256, 256 B 256,400 C 400,256 D 400,400 50.下面程序段( ) x=3; do{y=x--; if(!y) {printf(“*”); continue;} printf(“#”);} while(1<=x<=2); A.将输出## B.将输出##* C.是死循环 D.含有不合法的控制表达式 51. 在C 语言中,引用数组元素时,其数组下标的数据类型允许的是( ) A.整型常量 B.整型表达式 C.整型常量或整型表达式 D.任何类型的表达式 52.若有说明: int a[10];则对a 数组元素的正确引用是( ) A .a[10] B. a[3.5] C. a(5) D. a[10-10] 53.以下对二维数组a 正确说明是( ) A. int a[3][ ]; B. float a(3,4); C. double a[1][4]; D. float a(3)(4); 54.若有说明: int a[3][4];则对a 数组元素的正确引用是( ) A. a[2][4] B. a[1,3] C. a[1+1][0] D. a(2)(1) 55. 设有以下宏定义: #define N 3 #define Y(n) ( (N+1)*n) 则执行语句:z=2 * (N+Y(5+1));后,z 的值为 A) 出错 B) 42 C) 48 D) 54 56.若二数组a 有m 列,则计算任意元素a[I][j]在数组中位置的分式为__________ A.I*m+j B.J*m+I C.I*m+j-1 D.I*m+j+1 57.对以下说明语句的正确理解是( )int a[10]={6,7,8,9,10}; A.将5个初值依次赋值给a[1]至a[5] B.将5个初值依次赋值给a[0]至a[4] C.将5个初值依次赋值给a[6]至a[10] D.因为数组长度与初值的个数不同,所以此语句不正确 58. 下列运算符中,不属于关系运算符的是___________。 A 、> B 、>= C 、= D 、<= 59.下面程序段的运行结果是( ) char c[5]={‘a ’,’b ’,’\0’,’c ’,’\0’}; printf(“%s ”,c); A.’a ”b ’ B.ab C.ab □c D.abc 60. 给出以下定义: char x[]="abcdefg"; char y[]={'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A)数组X 和数组Y 等价 B)数组X 的长度大于数组Y 的长度 C)数组x 和数组Y 的长度相同 D)数组X 的长度小于数组Y 的长度 61.下面程序段的运行结果是( ) char a[7]=”abcdef ”; char b[4]=”ABC ”; strcpy(a,b); printf(“%c ”,a[5]); A.空格 B.\0 C.e D.f 62. 已知表达式x=(a=3,a*3),则x 的值是( ) A 3 B 6 C 18 D 9 63.判断字符串s1是否大于字符串s2,应当使用( ) A. if(s1>s2) B. if(strcmp(s1,s2)) C. if(strcmp(s2,s1)>0) D. if(strcmp(s1,s2)>0) 64. 若有以下程序片段: char str[]="ab\n\012\\\""; printf(%dd",strlen(str)); 上面程序片段的输出结果是 A)3 B)4 C)6 D)12 65.以下说法不正确的是( )C 语言规定: A .实参可以是常量、变量或表达式 B .形参可以是常量、变量或表达式

C.实参可以为任意类型

D.形参应与其对应的实参类型一致

66. 以下程序的输出结果是_____________。

main()

{float x=3.6;

int i;

i=(int)x;

print(“x=%f,i=%d”,x,i);

}

A、x=3.600000,i=4

B、x=3,i=3

C、x=3.600000,i=3

D、x=3,i=3.600000

67.以下正确的描述是()在C语言程序中

A. 函数的定义可以嵌套,但函数的调用不可以嵌套

B.函数的定义不可嵌套,但函数的调用可以嵌套

C.函数的定义和函数的调用均不可以嵌套

D.函数的定义和调用均可以嵌套

68.以下正确的说法是()如果在一个函数中的复合语句中定义了一个变量,则该变量

A.只在该复合语句中有效

B.在该函数中有效

C.在本程序范围内均有效

D.为非

法变量

69. 变量的指针,其含义是指该变量的

________.

a)值 b)地址 c)名 d)一个标志

70. 下面程序段的运行结果是________.

char *s="abcde";

s+=2;printf("%s",s);

a)cde b)字符'c' c)字符'c'的地址 d)无确定的输出结果

二、填空题:

1.strcat函数的作用是()。

2.在函数外部定义的变量是();形式参数是()。

3. 调用C语言数学函数时要求用()命令。

4. 字符串“I am a student.”在存储单元中占()个字节。

5. 如果要比较两个字符串中的字符是否相同,可使用的库函数是().

6. 在c语言中,字符串不存放在一个变量中,而是存放在一个()中。

7. 设有int a[3][4]={{1},{2},{3}};,则a[1][1]的值为()。

8. 在int a=3;p=&a中,*p的值是()。

9. C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是()。.

10. 结构化程序中有三种结构分别是()、()和()。

11. 设int

a[3][4]={{1,2,5,3},{2,4,7,9

},{3,6,5,8}};则表达式

a[1][2]+a[2][3]的值是

()。

12. 设int a=2;,则执行a+=a*=15;后,变量a的值是()。

13.若函数调用语句为f(a,b,f(a+b,a-b,b));,则函数f的参数个数是()。

14.C语言中一个单精度浮点数据占()个字节。

15. C语言中逻辑值真用()表示。

16. C语言中字符型数据在内存中以()码形式存放。

17. 若已知a=10,b=20,则!a

18. 当a=3,b=2,c=1时,表达式f=a>b>c的值是()。

19.()函数代表从键盘缓冲区读入一个字符,且只能接受一个字符。

20. 设ch是char型变量,其值为A,且有下面的表达式:ch=(ch>='A'&&ch<='Z')?(ch+32):ch 的值是()

21. 在C语言中字符数据与()数据可以互相赋值。

22. 开发一个C程序要经过编辑、()和连接、运行四个部分。

23. C语言的基本数据类型有()、()和()。

24. 设x=(5>1)+2,x的值为()。

25. m是一个有10个整型元素的数

组,其定义语句是()。

26. 中断本次循环,进入下一次循环

的语句是(),用来中断循环

的语句是()。

27. 格式输出语句中()格式说

明代表以小数形式输出单、双精

度数,隐含输出6位小数。

28. 将以下语句用条件运算符改写

为(),if(a>b)max=a; else max=b;

29. 当a=3,b=4,c=5时,表达式 !a&&b

的值为()

30. 若有定义:int

a[]={2,4,6,8,10,12},*p=a;则

*(p+1)的值是(). *(a+5)

的值是().

三、判断题

1.C语言程序的主函数必须在其他

函数之前,一个C语言程序总是从

主函数开始执行。()

2.C语言程序中有调用关系的函数

必须放在同一源程序文件中。

( )

3.在C语言中函数返回值的类型是

由定义函数时所指定的函数类型

决定的。( )

4.关系运算符的优先级低于赋值运

算符。( )

5.循环体中continue语句的作用是

结束整个循环的执行。( )

6. 关系表达式的值是0或1。( )

7. 使用while和do-while循环时,

循环变量初始化的操作应在循环

语句之前处理。()

8. 表达式4/7和表达式4.0/7的值

相等。()

9. 在C语言中,二维数组元素在内

存中的存放顺序是由用户自己决

定的。()

10.数组的大小必须在定义时确定,

所有数组元素的类型必须相同。

()

11. C语言程序的变量必须先定义后

使用。()

12. C语言规定函数的实参应与其对

应的形参类型一致。()

13. C语言认为Student和student

的变量是不同变量。()

14. C语言是一种面向对象的程序设

计语言。()

15. C语言程序中的#include和

#define均不是C语句。()

16. do –while语句构成的循环不

能用其他语句构成的循环来代替。()

17. 标准格式输入函数scanf()可

以从键盘上接受不同数据类型的数据项。

()

18.在对数组全部元素赋初值时,不

可以省略行数,可以省略列数。()

19. 在程序中定义了一个结构体类

型后,可以多次用它来定义具有该类型的变

量。()

20. 预处理命令都必须以#开头。()

四、程序填空题

1. 程序运行后的输出结果

是。

#include

main()

{

int y=1,x,a[]={2,4,6,8,10},*p;

p=&a[1];

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

y=y + *(p+x);

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

}

2.程序运行后的输出结果是

#include

void fun(int a,int b,int c)

{a=b;b=c;c=a;}

main()

{int a=10,b=20,c=30;

fun(a,b,c);

printf(“%d ,%d,%d”,c,b,a);

}

3.下面程序的功能是计算1-100能被3整除

的数之和。

#include

main()

{ int i, s;

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

{ ②;

s=s+t;

}

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

}

4.下面程序的功能是从键盘上输入若干学

生的学习成绩,统计并输出最高成绩和最低

成绩,当输入为负数时结束输入。

main()

{ float x,amax,amin;

scanf("%f",&x);

amax=x;

amin=x;

while( ① )

{ if(x>amax) amax=x;

if( ② ) amin=x;

scanf("%f",&x);

}

printf("\namax=%f\namin=%f\n",amax,am

in);

}

5.下面程序的功能是用辗转相除法求两个

正整数m和n的最大公约数。

hcf(int m,int n)

{ int r;

if(m

{ r=m;

①;

n=r;

}

r=m%n;

while( ② )

{ m=n;

n=r;

r=m%n;

}

③;

}

6.下面的函数sum(int n)完成计算1~n的

累加和。

sum(int n)

{ int f;

if(n<=0)

printf("data error\n");

if(n==1) ①;

else ②;

③;

}

7.若有以下程序,则程序的输出结果是

#include

main()

{ int s=0,n;

for(n=0;n<4;n++)

{switch (n)

{

default:s+=4;

case 1: s+=1;break;

case 2: s+=2;break;

case 3: s+=3;}

}

}

Printf("%d\n",a);}

8.教材111页习题5.6

9.教材127页例6.9

10.教材133页例7.2

11.教材153页习题7.3

12. 教材173页例8.8

13. 教材237页例10.7

14. 教材251页例10.16

五、程序改错题

改错:下述程序(假定所有的变量都已经声

明且赋值)有什么错误,请找出来,并将正

确内容写在旁边。

(1)请找出并改正以下程序的错误:(共有

3个错误)

line 1: #include

line 2: int x= 1;

line 3: main(){

line 4: if( x = 1);

line 5: printf(" x

equals 1" )

line 6: elseif

line 7: printf(" x

does not equal 1");

line 8: return 0;

line 9: }

2.本程序从键盘输入一个正整数n,计算n!

的值。要求定义和调用函数

fact(n),计算n!。(共有3个错

误)

#01 #include

#02 void main(void)

#03 {

#04 int n;

#05 double f;

#06 double fact(int m);

#07 printf("Input n: ");

#08 scanf("%d", n);

#09 f = fact( );

#10 printf("%d!=%f\n",

n, f);

#11 }

#12 double fact(int m);

#13 {

#14 int i;

#15 double product;

#16 for ( i = 1; i <= m;

i++ )

#17 product =

product * i;

#18 return product;

#19 }

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

C语言程序设计 一、选择题(共40分,每小题2分) 1、以下叙述不正确的是(D) A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 2、下列四个选项中,是不合法的用户标识符的选项是(B) A、abc B、12AC C、sun D、A 3、设有语句inta=4;则执行了语句a+=a-=a*a后,变量a的值是(A) A、-24 B、0 C、4 D、16 4、下列运算符中优先级最高的是(B) A、< B、+ C、&& D、== 5、在C语言中,运算对象必须是整型数的运算符是(A) A、% B、/ C、%和/ D、+ 6、以下关于运算符的优先顺序的描述正确的是(C) A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B、逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑与运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑与运算符 7、在C语言中,如果下面的变量都是int类型,则输出的结果是(C) sum=pad=5;pAd=sum++,pAd++,++pAd; printf(“%d\n”,pad); A、7 B、6 C、5 D、4 8、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)

A、INPUTx、y、z; B、scanf(“%d%d%d”,&x,&y,&z); C、scanf(“%d%d%d”,x,y,z); D、read(“%d%d%d”,&x,&y,&z); 9、假定从键盘输入23456<回车>,下面程序的输出结果是:(C)voidmain() {intm,n; scanf(“%2d%3d”,&m,&n); printf(“m=%dn=%d\n”,m,n); } A、m=23n=45 B、m=234n=56 C、m=23n=456 D、语句有错误 10、若运行时,给变量x输入12,则以下程序的运行结果是(A)main() {intx,y; scanf(“%d”,&x); y=x>12?x+10:x-12; printf(“%d\n”,y); } A、0B、22C、12D、10 11、C语言中while和do-while循环的主要区别(A) A、do-while的循环体至少执行一次 B、while的循环控制条件比do-while的循环控制条件严格 C、do-while允许从外部转到循环体内 D、do-while的循环体不能是复合语句 12、以下对二维数组的正确说明的语句是(C) A、inta[3][] B、floata(3,4) C、doublea[3][4] D、floata(3)(4) 13、以下程序的输出结果是(C) main()

程序设计基础试题库

练习题一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____ 。

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语言程序设计试题集

第一章基础知识 一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。

程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。 13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。

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

《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.360docs.net/doc/7f17565265.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.有如下程序:

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

C语言程序设计试卷及答案

C语言程序设计试卷及 答案 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

C语言程序设计 一、单项选择题(共15小题,每题4分,共60分) 1、下列有关C语言的叙述中错误的是()。 A)C语句必须以分号结束B)任何一个C程序中有且只有一个主函数 C)复合语句在语法上可被看作一条语句D)C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的是()。 A)MAINB)_HJC)2ongD)LINE1 3、以下能正确定义一维数组的是()。 A)inta[5]={0,1,2,3,4,5};B)inta[5]=”012345”; C)chara[]=”012345”;D)chara[5]={0,1,2,3,4,5}; 4、以下关于main()函数的说法,正确的是。 A)main()必须是程序的第一行B)main()可以有参数 C)一个程序可以有多个main()D)main()可以被用户自定义的函数调用 5、设charstr1[10]=“ABCDE”,str2[10]=“xyz”; 则执行语句printf(“%d”,strlen(strcpy(str1,str2)));后的输出结果是()。 A)9B)8C)5D)3 6、若用数组名作为函数调用的实参,则传递给形参的是()。 A)数组的首地址B)数组第一个元素的值C)数组中全部元素的值D)数组元素的个数 7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()。 A)void?B)double?C)int?D)char 8、下面不能正确进行字符串赋值操作的语句是()。

C语言程序设计习题集(3)

指针 一单项选择题(每题2分,共40分) 1 以下叙述中错误的是_B__。 A 在程序中凡是以“#”开始的语句行都是预处理命令行 B 预处理命令行的最后不能以分号表示结束 C #define MAX是合法的宏定义命令行 D C程序对预处理命令行的处理是在程序执行的过程中进行的 2 若程序中有宏定义行:#define N 100 ,则以下叙述中正确的是__B_。 A 宏定义行中定义了标识符N的值为整数100 B 在编译程序对C源程序进行预处理时用100替换标识符N C 对C源程序进行编译时用100替换标识符N D 在运行时用100替换标识符 3 若有如下宏定义: #define N 2 #define y(n) ((N+1)*n) 则执行下列语句:z=4*(N+y(5));后的结果是_B__。 A 语句有错误 B z值为68 C z值为60 D z值为180 4 以下程序运行后的输出结果是_A__。 #define F(X,Y) (X)*(Y) main() { int a=3,b=4; printf("%d\n",F(a++,b++)); } A 12 B 15 C 16 D 20 5 以下程序运行后的输出结果是_C__。 #define f(x) (x*x) main() { int i1,i2; i1=f(8)/f(4); i2=f(4+4)/f(2+2); printf("%d,%d\n",i1,i2); } A 64,28 B 4,4 C 4,3 D 64,64 6 若已定义a为int型变量,则__D_是对指针变量p的正确说明和初始化。 A int p=&a; B int *p=a; C int *p=*a; D int *p=&a; 7 已知下列说明语句: static int a[]={2,4,6,8} static int *p[]={a,a+1,a+2,a+3}; int **q; q=p; 则表达式**(q+2)的值是_A__。 A 6 B 2 C 4 D 8 8 下面是一个初始化指针的语句:int *px=&a;,其中指针变量的名字应该__C_。 A *px B a C px D &a 9 若指针px为空指针,则_B__。。

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

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

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'

04737c程序设计试题及答案20200_图文

全国2009年10月高等教育自学考试 C++程序设计试题 课程代码:04737 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.对C++中主函数描述正确的是( ) A.名称为main,可为多个 B.名称不限,可为多个 C.名称为main,必须有且只能有一个 D.名称不限,必须有且只能有一个 2.调用声明为int result(int a,int b)的函数时,正确的方法是( ) A.result(1,2) B.result(1) C.result(0.1,0.3) D.result(1,2,3) 3.用于包含C++标准库iostream的预处理指令是( ) A.#define B.#include C.#define ‘iostream’ D.#include‘iostream’ 4.无类型标识符是指( ) A.void B.bool C.short D.long 5.从本质上看,引用是被引用变量的( ) A.拷贝 B.别名 C.复制 D.克隆 6.下面关于数组的初始化正确的是( ) A.char str[ ]={'a','b','c'}; B.char str[2]={'a','b','c'}; C.char str[1][2]={{'a','b'},{'e','d'}}; D.char str[ ][ ]={'a','b','c'}; 7.C++类中定义的成员默认访问属性为( ) A.public B.private C.protected D.friend 1文档来源为:从网络收集整理.word版本可编辑.

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

程序设计基础复习题 一、单选 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语言程序设计程序填空题库及答案

程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); }

【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

(完整版)程序设计基础试题_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

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

单项选择题 (002) 阅读程序题 (018) 程序填空题 (039) 编写程序题 (070) 一、单项选择题 导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。对于掌握不准的问题,应该通过上机实验来检验。 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123C) %d D) \n

【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 ??? A) print B) i\am C) Pxq D) str_l ??? _3d one_half My->book Cpp ??? oodbs tart$it line# pow ??? aBc 3pai His.age while 【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。 A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始B) 程序文件的最后 C) 它所调用的函数的前面D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义 【1.8】在C语言中,错误的int类型的常数是。 A) 32768 (超过了范围) B) 0 C) 037 D) 0xAF 【1.9】执行语句printf("%x",-1);屏幕显示____。 A) -1 B) 1 C) –ffff D) ffff 【1.10】已知long i=32768;执行语句printf("%d",i);屏幕显示____。 A) -1 B) -32768C) 1 D) 32768 【1.11】已知long i=65539; 执行语句printf("%d",i);屏幕显示____。 A) 65539 B) -3 C) 3D) 程序不能执行 【1.12】在C语言中,整数-8在内存中的存储形式是。 A) 1111 1111 1111 1000B) 1000 0000 0000 1000 C) 0000 0000 0000 1000 D) 1111 1111 1111 0111 【1.13】C语言中字符型(char)数据在内存中的存储形式是____。

C语言程序设计试题与答案D

绝密★启用前学院 学年第二学期期末考试 级专业()《 C语言程序设计》试卷D 一、单项选择题(本大题共15小题,每小题2分,共30分) 1、以下正确的C语言自定义标识符是() A._la B.2a_ C.do D.a.12 2、在C语言中,错误 ..的常数表示是() A.0L B.-0x6aL C.′6′D.1.234E3.5 3、设int a,x=2;执行语句a=x>0?3*x:(x=10);后,变量x的值是() A.1 B.2 C.6 D.10 4、设有以下程序段: int x=2,y=2,z=0,a; a=++x||++y&&z++; printf(″%d,%d,%d\n″,x,y,z); 执行后输出的结果是() A.2,2,0 B.3,3,1 C.3,2,0 D.3,2,1 5、逗号表达式a=2*6,a*3,a+5的值是() A.12 B.17 C.36 D.41 6、设int a[2][3]={{1},{2,3}};,则元素a[1][0]的值是() A.0 B.1 C.2 D.3 7、C语言中,错误 ..的int类型的常数是() A.1E5 B.0 C.037 D.0xaf 8、在C语言中,′a′和″a″存储所占用的字节数分别是() A.1,1 B.1,2 C.2,1 D.2,2 9、设int x;,则以下语句中错误 ..的输入是() A.scanf (″%d″,x); B.scanf (″%d″,&x); C.scanf (″%o″,&x); D.scanf (″%x″,&x); 10、在C语言中,运算符″=″和″==″的功能分别是() A.关系运算和赋值运算B.赋值运算和关系运算 C.都是关系运算D.都是赋值运算 11、设int x[]={1,2,3,4,5},*p=x;,则值为3的表达式是() A.p+=2, *p++ B.p+=2, *++p C.p+=2, p++ D.p+=2, ++*p 12、设for(i=0, j=10; (j>0)&&(i<4); i++, j--);,该语句的循环次数是() A.0 B.3 C.4 D.无限 13、设函数定义如下: float f1 (float a, float b) { return (a+b); } 若有float x=1.1, y=2.2;,则以下语句中正确的函数调用是() A.printf (″%f″, f1(x)); B.printf (″%f″,f1(&x, y)); C.printf (″%f″,f1(*x,*y)); D.printf (″%f″,f1(x, y)); 14、若有说明:int i,j=7,*p=&i;则与i=j;等价的语句是()。 A. i=*p; B. *p=*&j; C. i=&j ; D. i=**p; 15、设char str1[10]=″ABCDE″,str2[10]=″XYZ″;则执行语句: printf(″%d″,strlen(strcpy(str1,str2))); 后的输出是()。 A. 3 B. 5 C. 8 D. 9 二、填空题(本大题共10小题,每小题2分,共20分) 16、一个C语言程序的基本组成单位是___________________。 17、求字符串的有效长度的系统函数名是___________________。 18、设float a [4][5];,则数组a中第一维下标的最大值是___________________。 19、设int a; float b; char c; long d; double e; , 则表达式a/c-b+d-e值的类型是 ______________。 20、设int a=2;,则执行a+=a*=15;后,变量a的值是__________。 21、一个C语言程序的执行起点是__________。 22、设double y[4][5];,则数组y中元素的个数是__________。 23、设int x=7,y=3,则表达式x%y+x/y的值是__________。 24、一个short型变量所占内存的字节数是____________________。

C程序设计基础_复习题

c语言规定,任何非0的数像1 -1等都被认为是真,而0被认为是假 1>1为假 试题一、单选题 1. 已知int k,m=1;执行语句k=-m++;后,k的值是_____。【知识点:难度:正确答案:A】 A.-1 B.0 C.1 D.-2 2. 已知定义int m; float k; 正确的语句是。【知识点:难度:正确答案:D】 A.(int k)%m B.int(k)%m C.int(k%m)D.(int)k%m 3. 当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是______。【知识点:难度: 正确答案:B】 A.m=k=n B.(m=k)&&(n=m) C.(m=k)||(n=k)D.(n=m)&&(m=k) 4. 已知int x=5; 表达式6>x>1值是_____。【知识点:难度:正确答案:A】 A.0 B.1 C.5 D.表达式语法错 表达式6>x>1 ,先 判断6>x 为0,再 判断0>1,所以值 为0。 (6>x 为1 ,再判 断1>1,所以值为 0。) 5. 下列程序段执行后c值为_____。【知识点:难度:正确答案:D】 int k=7, c=0; while(--k) if (k%3) continue; else c++; A.5 B.4 C.3 D.2 6. 已知字母a的ASCII码为十进制数97,且ch为字符型变量,则执行语句ch=…a?+…D?-…A?;后,ch 中的值为_____。【知识点:难度:正确答案:C】 A.d B.c C.100 D.不确定 7. 设m,n已正确定义,执行语句{for(m=0, n=10; m,能使puts(s)语句正确输出ABCDE字符串的程序 段是______。【知识点:难度:正确答案:C】 A.char s[5] = {"ABCDE"}; puts(s) B.char s[5] = {…A?,?B?,?C?,?D?,?E?}; puts(s); C.char *s; s = "ABCDE"; puts(s); D.char *s; scanf(“%s”,s); puts(s); 《C程序设计基础及实验》

C语言程序设计期末考试试题及答案

C 语言程序设计 试 题 (2008 /2009 学年 第 二 学期) 一. 选择题(满分30分,每题2分) 1.若a 、b 、c 都定义为int 类型且初值为0,则以下不正确的赋值语句是 D 。 A. a=b=c+8; B. a+=y+3; C. c++; D. a+b+c 2. 已知int j ,i=1;执行语句“j=i++;”后,变量i 的值是 B 。 A. 1 B. 2 C. –1 D. -2 3.执行下面程序: #include "stdio.h" void main() { int a=1,b=2,c=3; c=(a+=a+2),(a=b,b+3); printf(“%d,%d,%d ”,a,b,c); } 则输出结果是: A 。 A. 2,2,4 B. 4,2,3 C. 5,5,3 D. 4,2,5 4.若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为 D 。 A. a< >0 B. !a C. a=0 D. a 5. for (j=0;j<11;j++);循环结束后,j 的值是 B 。 A. 12 B. 11 C. 10 D. 9 6. C 语言中函数返回值的类型由 D 决定的。 A. return 语句中的表达式类型 B. 调用该函数的主调函数的类型 C. 调用函数时临时决定 D. 定义函数时所指定的函数类型 7. 下列说法中正确的是 B 。 A 在调用用户自定义函数时,必须对其进行声明。 B 函数可以返回一个值,也可以什么值也不返回。 C 说明函数时,必须明确参数的类型和返回值。 D 在程序设计中空函数没有什么作用。 8. 若int i=10;执行下列程序后,变量i 的正确结果是 D 。 switch ( i ) {case 0: i+=1; case 10: i+=1; case 11: i+=1; default: i+=1; } A. 10 B. 11 C. 12 D. 13 9. 下列语句中不正确的字符串赋值或初始化的是 C 。 A . char str[10]={"strings"}; B.char str[8]={'s','t','r','i','n ','g','s','\0'}; C. char str[10]; str= "strings"; D. char str[]= "strings"; 10. 有如下程序: #include void main() { int a=1,b=0,c=0; if (a

相关文档
最新文档