文档库 最新最全的文档下载
当前位置:文档库 › 福建省C语言题目-无答案

福建省C语言题目-无答案

福建省C语言题目-无答案
福建省C语言题目-无答案

高级语言程序设计

一、C语言基础知识

1.在C语言中,合法的字符常量是()。

(A) '字'

(B) "A"

(C) "ABC"

(D) '\x41'

2.复合语句的定界符是()。

(A) [ ]

(B) { }

(C) ( )

(D) /* */

3.下列叙述错误的是()。

(A) C源程序必须先编译链接成可执行程序才能执行

(B) main()函数不能有返回值

(C) 结构化程序设计的三种基本控制结构是:顺序、选择、循环

(D) 函数是C源程序的基本单位

4.下列叙述错误的是()。

(A) 注释行可单独占用一行,也可跟在语句的后面

(B) 注释部分可增加程序的可读性

(C) 注释部分的定界符是\* *\

(D) 注释部分在可执行程序中不存在

5.下列叙述正确的是()。

(A) 所有语句都必须以分号";"结束

(B) 构成C源程序的基本单位是语句

(C) main()函数只能位于源程序开头

(D) 所有函数名都可以由用户命名

6.下列叙述错误的是()。

(A) 一个C源程序可由一个或多个函数组成

(B) 一条语句可分多行书写

(C) C源程序必须包含一个且只能有一个main()函数

(D) 多条语句不能书写在同一行

二、C语言基本数据类型和运算符

7.C语言的下列运算符中,优先级最高的运算符是()。

(A) ++

(B) +=

(C) ||

(D) !=

8.C语言的基本数据类型包括()。

(A) 整型、浮点型、数组型

(B) 整型、浮点型、字符型

(C) 整型、字符型、结构体类型

(D) 整型、浮点型、指针型

9.下列不合法的实型常量是()。

(A) 2.3f

(B) 1e-2

(C) 10e0.3

(D) 3.14e2

10.下列不合法的字符常量是()。

(A) 'A'

(B) 'a'

(C) '3'

(D) "n"

11.下列不合法的自定义标识符是()。

(A) int

(B) a

(C) a3

(D) b_1

12.下列不合法的整型常量是()。

(A) 0xA3

(B) 082

(C) 1000L

(D) 46

A'的ASCII码的十进制值为65, ’0’的ASCII码的十进制值为48,则以下程序运行结果是()。main()

{ char ch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

printf("%d,%c\n",ch1,ch2);

}

(A) 67,D

(B) C,D

(C) C,68

(D) 67,68

13.下列语句错误的是()。

(A) int a,b;

(B) char c=65;

(C) int m=n=1;

(D) char s[]="hello!";

14.若已定义:float a,b;下列表达式错误的是()。

(A) a+=b+5

(B) a+b=5

(C) a=b=1

(D) a= 'P'+2.0

15.若已定义int a=3,b=4,c=5; 表达式a>b?a+c:b+c的值是()。

(A) 3

(B) 4

(C) 8

(D) 9

16.若已定义:int a=1,b=2,c=3;表达式(a+=2,a+b,a-c)的值是()。

(A) -2

(B) 0

(C) 1

(D) 2

17.若已定义int a=-2,b=4;表达式a*=b+1的值是()。

(A) -11

(B) -10

(C) -7

(D) -6

18.下列语句中,符合C语言语法的赋值语句是()。

(A) a=7+b+c=a+7;

(B) a=7+b++=a+7;

(C) a=7+b,b++,a+7;

(D) a=7=b,c=a+7;

19.若已定义:int a=10,b=20,c=30; 表达式(++a)+b%c的值是()。

(A) 10

(B) 11

(C) 30

(D) 31

20.若已定义int a=10,b=20,c=3; 表达式a/b*c的值是()。

(A) 0

(B) 0.5

(C) 1

(D) 1.5

21.若已定义int x=45; 表达式x%10/2的值为()。

(A) 0

(B) 1

(C) 2

(D) 3

22.能正确表示变量x不属于区间[-3,5]的是()。

(A) 5<=x<=-3

(B) x>=-3 && x<=5

(C) x>=-3||x<=5

(D) x<-3||x>5

23.若已定义:int m=15; 能正确表示m既能3整除也能5整除的是()。

(A) (m/3==0) && (m/5==0)

(B) (m/3==0)||(m/5==0)

(C) (m%3)==0 && (m%5)==0

(D) (m%3==0)||(m%5==0)

24.以下程序运行时,若从键盘输入5,则输出结果是()。

main()

{ int a;

scanf("%3d”,&a);

if(a++>5) printf("%d\n",a);

else printf("%d\n",a--);

}

(A) 7

(B) 4

(C) 5

(D) 6

25.若已定义float x; 要从键盘输入6.58给变量x,应选用()语句。

(A) scanf("%3.2f",&x) ;

(B) scanf("%1.2f",&x) ;

(C) scanf("%4.3f",&x) ;

(D) scanf("%f",&x) ;

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

#include

#include

int main()

{

char a=97,c='A';

printf("%c-%c=%d\n",a,c,a-c);

getch( );

return 0;

}

(A) A-A=0

(B) 97-A=97

(C) a-A=32

(D) 97-A=32

27.若已定义int a=2,b=3; 要实现输出内容为: 2+3=5,应使用语句()。

(A) printf("a+b=%d\n",a+b);

(B) printf("a+b=a+b\n");

(C) printf("%d+%d=a*b\n",a,b);

(D) printf("%d+%d=%d",a,b,a+b);

28.要使用以下程序段给变量a,b,c分别赋值’a’, ’b’, ’c’,正确的输入格式是()。char a,b,c;

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

(A) a b c

(B) a,b,c

(C) abc

(D) 'a' 'b' 'c'

29.要使用以下程序段给变量a,b分别赋值1,2,正确的输入格式是()。

scanf("%d,%d”,&a,&b);

(A) 1-2

(B) 1:2

(C) 1,2

(D) 1 2

30.有以下程序:

main()

{ int c;

while((c=getchar())!= '\n')

{ switch(c-'2')

{ case 0 :

case 1 : putchar(c+4);

case 2 : putchar(c+4); break;

case 3 : putchar(c+3);

default: putchar(c+2); break;

}

}

printf("\n");

}

31.当输入:247↙回车,程序的输出结果是()。

(A) 689

(B) 6689

(C) 66778

(D) 66887

32.若已定义int m=2,t=0;执行t=m+'0';语句后,变量t的值为()。(注:’0’的ASCII码值为48)

(A) 2

(B) 0

(C) 48

(D) 50

33.若已定义int a=-1,b=1;执行b=(!a)+b;语句后,变量b的值为()。

(A) 1

(B) 2

(C) 0

(D) 3

34.若已定义: int a=3,b=2,c=1; 表达式(int)5.8%a+b/4+(c++)的值为()。

(A) 4

(B) 3

(C) 3.5

(D) 4.5

35.若已定义:int m=-1,n=0,t=1; 下列表达式值为0的是()。

(A) m||n

(C) !m

(D) (m++)&&(++n)

36.算术运算符"/"按运算对象的个数属于()。

(A) 单目运算符

(B) 双目运算符

(C) 三目运算符

(D) 四目运算符

37.以下程序段的运行结果是()。

int a=15,b=6,c;

c=a^b;

printf("a=%d,b=%d,c=%d\n",a,b,c);

(A) a=15,b=6,c=9

(B) a=15,b=6,c=21

(C) a=6,b=15,c=9

(D) a=6,b=15,c=21

38.以下程序段的运行结果是()·

int a=6,b=5,c;

c=(a>>1)|(b<<1);

printf("a=%d,b=%d,c=%d\n",a,b,c);

(A) a=6,b=5,c=11

(B) a=3,b=5,c=11

(C) a=3,b=10,c=13

(D) a=3,b=5,c=5

39.以下程序段的运行结果是()。

int a,b=3;

a=b<<2;

printf("a=%d,b=%d\n",a,b);

(A) a=12,b=3

(B) a=12,b=12

(C) a=3,b=3

(D) a=3,b=12

40.以下程序段运行后,变量a,b,c的值分别是()。int a,b=4,c=5;

a=b&c;

(A) 4,4,5

(B) 5,4,5

(C) 5,4,4

(D) 5,5,5

三、控制结构

41.以下程序运行后a的值是().

main()

for(a=1,b=1;a<=100;a++)

{

if(b>=20) break;

if(b%3==1) { b+=3; continue; }

b-=5;

}

}

(A) 101

(B) 100

(C) 8

(D) 7

42.若已定义:int a,b,c;下列程序段编译时不会出现语法错误的是:

(A) if(a==b) then

c=0;

(B) if a==b then

c=0;

(C) if(a==b)

c=0;

else

c=1;

(D) if(a==b);

c=0;

else

c=1;

43.在嵌套的if…else语句中,有关else描述正确的是()·

(A) 不能出现在循环语句中

(B) 可以单独出现,不需要与if配对

(C) 与缩进位置相同的if配对

44.在循环体中,continue语句的作用是()。

(A) 结束本次循环,继续下一次循环

(B) 跳出本层循环,接着执行该循环后续的语句

(C) 暂停本次循环,等待击键继续

(D) 结束函数调用

45.下列关于do…while语句与while语句描述正确的是()。

(A) while语句中的循环体至少无条件执行一次,do…while语句中的循环体可能都不执行

(B) do…while语句中的循环体至少无条件执行一次, while语句中的循环体可能都不执行

(C) do…while语句中的循环体可使用break语句, while语句中的循环体不允许出现break语句

(D) do…while语句适用于循环次数已知的场合,而while语句适用于循环次数未知的场合

46.下列程序段不会出现无限循环的是()。

(A) int i=-1;

while(1)

i++;

for(i=1;;i++)

a+=2;

(C) int i=2;

while(i==4)

i+=2;

(D) int i=2

while(i=4)

i+=2;

47.以下程序段的运行结果是()。

int x=3;

do{

printf("%3d", x-=2 );

}while(!(--x));

(A) 1

(B) 30

(C) 死循环

(D) 1, -2

48.若已定义:int m=-1,n=2; 以下程序段的运行结果是()·if(m)

m+=2;

else

m++;

n++;

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

(A) 0,3

(B) 1,3

(C) 0,2

(D) 1,2

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

#include

#include

int main( )

{

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

if(a=2)

b=(++c);

else

b=(c--);

printf("%d,%d\n",b,c);

getch( );

return 0;

}

(A) 2,1

(C) 3,3

(D) 1,1

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

#include

int main( )

{

int a=1,b=2;

switch(a)

{

case 0:

a++;

b++;

case 1:

a+=1;

b+=2;

case 2:

a+=2;

b+=3;

}

printf("%d,%d\n",a,b);

getch( );

return 0;

}

(A) 1,2

(B) 2,3

(C) 2,4;

(D) 4,7

51.以下程序的运行结果是()。#include

#include

int main( )

{

int a=1,b=2;

switch(a++)

{

case 0:

b=b+1;

break;

case 1:

b+=2;

break;

case 2:

b+=3;

break;

}

printf("%d,%d\n",a,b);

getch( );

return 0;

}

(A) 1,5

(B) 1,4

(C) 2,4

(D) 2,5

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

#include

#include

int main( )

{

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

if(!a)

b=++c;

else

b=c--;

printf("%d,%d\n",b,c);

getch( );

return 0;

}

(A) 2,1

(B) 1,1

(C) 3,2

(D) 3,3

53.下列程序段中,非死循环的是()。

(A) int i=100;

while(1)

{ i=i%100+1;

if(i>=100) break;

}

(B) int k=0;

do{

++k;

}while(k>=0);

(C) int s=10;

while(++s%2+s%2) s++;

(D) for(;;)

54.以下程序段运行后,x的值为()·int i=1,x=0;

while( (++i)<=5)

{

x+=2;

}

(A) 14

(B) 12

(C) 10

(D) 8

55.以下程序段运行后,x的值为()·

int i,x=0;

for(i=4;i>=0;i--)

x=(x+1)*3;

(A) 54

(B) 66

(C) 120

(D) 363

56.以下程序段运行后i的值为()·

int i=3;

while(i<10)

{

if(i==5)

break;

i=i+2;

}

(A) 3

(B) 5

(C) 12

(D) 11

57.以下程序段运行后i的值为()。

int i=1;

while(i<10)

{

if(i==9)

{

i++;

continue;

}

i=i+2;

}

(A) 9

(B) 10

(C) 11

(D) 12

58.以下程序段运行时,语句k+=2; 的执行次数是()。

for(i=7;i>1;i-=2)

k+=2;

(A) 3

(B) 2

(C) 1

(D) 4

四、数组

59.设已定义char s[ ]="\"Name\\Address\023\n";,则字符串所占的字节数是()。

(A) 19

(B) 16

(C) 18

(D) 14

60.若已定义int a[10]; 对数组a中元素引用不正确的是()。

(A) a[2*2]

(B) a[5/2]

(C) a[3-4]

(D) a[8+1]

61.下列对一维数组a的定义中,正确的是()。

(A) int a[4]={0,1,2,3,4};

(B) int a[]={0,1,2,3,4};

(C) int n=5;int a[n]={0,1,2,3,4};

(D) int a[];

62.若已定义:int a[]={10,12,23,24,35}; 则a[2-1]元素的值为()

(A) 10

(B) 12

(C) 23

(D) 24

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

#include

#include

int main( )

{

int a[]={10,12,23,24,35},i,sum=0;

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

sum+=a[i];

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

getch( );

return 0;

}

(A) 12

(B) 35

(C) 36

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

#include

#include

int main( )

{

int a[5]={1,3,5,8,10},i=1,s=0;

while(i<5)

{

if(a[i]%2!=0)

s+=a[i];

i++;

}

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

getch( );

return 0;

}

(A) 6

(B) 8

(C) 9

(D) 18

65.若已定义int a[][4]={1,-2,3,-4,5,-6,7,-8};,则表达式a[0][2]+a[1][1]的值为()。

(A) 3

(B) -3

(C) 10

(D) -8

66.若已定义int a[5][3]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};,无法正确引用数组a元素的是()。

(A) a[0][0]

(B) a[4][1]

(C) a[5][1]

67.正确定义二维数组a的语句是()。

(A) int a[5]8;

(B) int a(5,8);

(C) int a[5][8];

(D) int a{5},{8};

68.以下程序段的运行结果是()·

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

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

(A) 2

(B) 5

(C) 4

(D) 3

69.以下程序段的运行结果是()·

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

for(i=2;i>=0;i--)

printf("%2d”,a*i+*2-i]);

(A) 7 5 3

(B) 1 5 9

(C) 9 5 1

(D) 3 5 7

70.设有下列语句,则()是对a数组元素的不正确引用,其中0≤i<10。

int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a;

(A) a[p-a]

(B) *(&a[i])

(C) p[i]

(D) *(*(a+i))

71.无法输出字符串”her"的程序段是()。

(A) char a[ ]={'h','e','r','\0'};

puts(a);

(B) char a[4]={'h','e',0,'r'};

puts(a);

(C) char a[ ]={'h','e','r',0};

puts(a);

(D) char a[4]={'h','e','r','0'-48};

puts(a);

72.以下程序段的运行结果是()。

char a[]="abcefg",b[]="bmn";

int i;

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

a[i]=b[i];

puts(a);

(A) bmnabc

(B) mn

(C) bmnefg

(D) abcbmn

73.若已定义char a[10],b[10]="Health!"; 使数组a存储Health!"的语句是()。

(A) strcpy(b,a);

(B) strcpy(a,b);

(C) strcat(b,a);

(D) strcat(a,b);

74.若已定义char a[30]="Health!",b[10]="Happy!"; 使数组a存储”Health!Happy!"的语句是()。

(A) strcpy(b,a);

(B) strcat(a,b);

(C) strcpy(a,b);

(D) strcat(b,a);

75.若已定义char s[20]="HAPPY!"; 则函数strlen(s)的值是()。

(A) 20

(B) 5

(C) 8

(D) 6

76.设有下列语句:

char str1[]="string",str2[8],*str3,*str4="string";

则()是对库函数strcpy的不正确调用。此函数用来复制字符串。

(A) strcpy(str3,"HELLO3");

(B) strcpy(str2,"HELLO2");

(C) strcpy(str1,"HELLO1");

(D) strcpy(str4,"HELLO4");

注:该题所有选项在TC4.0下全部调试通过,连warning都没有。

五、函数

77.下列叙述错误的是()。

(A) 定义函数时函数名前省略类型符,则默认为int型

(B) 若函数无返回值,在定义函数时类型符为void

(C) 定义函数时函数名前省略类型符,则默认为float型

(D) 定义函数时必须指明函数名

78.下列叙述错误的是()。

(A) 若要定义静态类变量,在定义变量的类型名前应使用关键字static

(B) 函数体内定义的变量,若无明确其存储类型,则默认为auto类变量

(C) 全局变量的作用域是从其定义处起至本程序结束处

(D) 局部变量的作用域是从其定义处起至本程序结束处

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

#include

#include

int fun(int x)

{

if(x==1)

return 0;

else

return 2*x;

}

int main( )

{

int i;

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

printf("%3d”,fun(i));

getch( );

return 0;

}

(A) 2 4 6

(B) 0 2 3

(C) 0 4 6

(D) 2 3 6

80.函数定义时使用()类型符,则表示该函数无返回值。

(A) void

(B) float

(C) empty

(D) double

81.以下程序段的运行结果是()。

main()

{ int i=4,j;

j=i;

pic(i+2*j-2,'*');

putchar('\n');

for(j-=2;j>=0;j--)

{ pic(3-j, ' ');

pic(i+2*j, '*');

putchar('\n');

}

}

pic(int len,char c)

{ int k;

for(k=1;k<=len;k++) putchar(c);

}

(A) Triangle

(B) Rectangle

(C) Trapezoid

(D) Inverted Trape

*****注:该题不可能有这种结果出现。实际结果是4排星号,分别是10个,8个,6个和4个,整个图形轴对称

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

#include

#include

int larger(int x,int y)

{

return x>y?x:y;

}

int main( )

{

int a=3,b=9,c=5,m,n,k;

m=larger(a,b);

n=larger(a,c);

k=larger(larger(a,b),c);

printf("%d,%d,%d\n",m,n,k);

getch( );

return 0;

}

(A) 9,5,9

(B) 5,9,9

(C) 9,9,5

(D) 5,9,5

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

fun3(int x)

{static int a=3;

a+=x;

return a;

}

main()

{int k=2,m=1,n;

n=fun3(k);

n=fun3(m);

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

}

(A) 3

(B) 4

(C) 6

(D) 9

六、指针

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

voi ast (int x,int y,int *cp,int *dp)

{

*cp=x+y; *dp=x-y;

}

main()

{ int a=4,b=3,c,d;

ast(a,b,&c,&d);

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

}

(A) 7,1

(B) 1,7

(C) 7,-1

(D) c、d未赋值,编译出错

85.若已定义:int a=9,*pa=&a; float b=0.6,*pb=&b; 下列语句错误的是()。

(A) *pa=a*5;

(B) pa+pb;

(C) b=*pa+*pb;

(D) *pb=*pb+0.78;

86.若已定义int a=9,*p=&a; 下列描述错误的是()。

(A) &(*p)等价于p

(B) *p等价于a

(C) &a等价于p

(D) &p等价于a

87.若已定义:int a=9; int *p=&a; 对int *p=&a;语句应解释为()。

(A) 将变量a的值赋予指针变量p

(B) 定义p为整型变量

(C) 变量a的值赋予指针变量p所指向的变量

(D) 对p进行说明的同时进行初始化,使p指向a

88.若已定义:int a,*p; 使指针变量p指向a,应使用语句()。

(A) p=&a;

(B) p=a;

(C) p=*a;

(D) a=&p;

89.若已定义:int a=5,b,*pa=&a; 与b=a;语句等价的是()。

(A) b=*a;

(B) b=*pa;

(C) b=&pa;

(D) b=pa;

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

enum week { aa,bb=2,cc,dd,ee }week=ee;

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

(A) ee

(B) 5

(C) 2

(D) 4

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

#include

#include

int main( )

{

int a[5]={3,5,7,9,11},*p,i;

for(p=a;p

*p=*p+1;

printf("%d\n",a[2]);

getch( );

return 0;

}

(A) 10

(B) 7

(C) 6

(D) 8

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

#include

#include

int main( )

{

int a,b,*pa,*pb;

a=3; b=5;

pa=&a; pb=&b;

*pb=*pa;

printf("a=%d,b=%d\n",a,b);

getch( );

return 0;

}

(A) a=5,b=3

(B) a=3,b=3

(C) a=5,b=5

(D) a=3,b=5

93.以下程序的运行结果是()。#include

#include

int main( )

{

int a,b,c,*pa,*pb;

a=3; b=5;

pa=&a; pb=&b;

c=(*pa<*pb?*pa:*pb);

printf("a=%d,b=%d,c=%d",a,b,c);

getch( );

return 0;

}

(A) a=5,b=3,c=5

(B) a=3,b=3,c=3

(C) a=5,b=5,c=3

(D) a=3,b=5,c=3

94.以下程序的运行结果是()。#include

#include

int main( )

{

int a[5]={2,5,6,8,10},*p;

p=a;

printf("%d,%d",*(p+2),a[0]);

getch( );

return 0;

}

(A) 5,2

(B) 7,2

(C) 8,2

(D) 6,2

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

#include

#include

int main( )

{

int a,b,*pa,*pb;

a=10; b=15;

pa=&a; pb=&b;

a=a+3; b=b+3;

printf("%d,%d\n",*pa,*pb);

getch( );

return 0;

}

(A) 10,18

(B) 13,18

(C) 10,15

(D) 13,15

96.若已定义int a[3]={1,2,3},*p=a; 下列错误的语句是()。

(A) a[2]=*p;

(B) *p=*(p+1);

(C) &p=a;

(D) *p=a[1];

97.以下程序段运行后,元素a[0]、a[1]、a[2]的值依次是()·int a[3]={11,12,13},*p,i;

p=a;

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

*(p+i)=*(p+i)+10;

(A) 21,12,13

(B) 21,22,23

(C) 21,22,13

(D) 11,12,13

98.以下程序段的运行结果是()。

int a[5]={1,12,3,26,5},max,*p;

p=a;

max=*p;

for(p=a;p

if(*p>max)

max=*p;

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

(A) max=0

C语言题库及答案

C语言题库及答案

姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

c语言试题及答案

1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( 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); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式

C语言试卷及答案

一、选择题(每题 1 分,共 20 分) 1. C 语言程序的三种基本结构是顺序结构、选择结构和结构。 A、循环 B、递归 C、转移 D、嵌套 2. 下列标识符中,合法的是_______ 。 A) unsigned B) 5ab C) INT# D)_num2 3. 若float x ;x = 10/4 ;x的值是。 A、2.5 B、2.0 C、3 D、 2 4. 表达式!x 等价于。 A、x==0 B、x==1 C、x != 0 D、x != 1 5. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为。 A、算术运算、赋值运算、关系运算 B、关系运算、赋值运算、算术运算 C、算术运算、关系运算、赋值运算 D、关系运算、算术运算、赋值运算 6. 能将高级语言编写的源程序转换为目标程序的是。 A、链接程序 B、解释程序 C、编译程序 D、编辑程序 7. 下列语句定义pf为指向float类型变量f的指针,是正确的。 A、float f, *pf = f; B、float f, *pf = &f; C、float *pf = &f, f; D、float f, pf = f; 8. 一个C程序的执行是从。 A、本程序的main函数开始,到main函数结束 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 9. 能正确表示“当x的取值在[1,10]或[[200,210]范围内为真,否则为假”的表达式是________。 A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B、(x>=1)||(x<=10)||(x>=200)||(x<=210) C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D、(x>=1)||(x<=10)&&(x>=200)||(x<=210) 10. 对两个数组a和b进行如下初始化 char a[]=“ABCDEF”;char b[]={ …A?,?B?,?C?,?D?,?E?,?F?}; 则以下叙述正确的是。 A、a和b数组完全相同 B、a和b长度相同 C、a和b中都存放字符串 D、a数组比b数组长度长 11. 是不正确的字符常量。 A、'\n' B、'1' C、"a" D、'\101' 12. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和等价。 A、k=(a>b)?1:0; B、k=a>b; C、k=a<=b; D、a<=b ? 0 : 1; 13. 设变量定义为“int x, *p=&x;”,则&*p相当于。 A、p B、*p C、x D、*&x 14. 有两个字符数组a、b,则以下正确的输入语句是。 A)gets(a,b); B) scanf(“%s%s”,a,b); C) scanf(“%s%s”,&a,&b); D) gets(“a”),gets(“b”); 15. C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是。 A、地址传递 B、单向值传递

C语言考试题及答案

一、单项选择题:(10分,每题2分) 1.char*p[10];该语句声明了一个:。 A)指向含有10个元素的一维字符型数组的指针变量p B)指向长度不超过10的字符串的指针变量p C)有10个元素的指针数组p,每个元素可以指向一个字符串 D)有10个元素的指针数组p,每个元素存放一个字符串 2.若intx;且有下面的程序片断,则输出结果为:。 for(x=3;x<6;x++) { printf((x%2)"##%d":"**%d\n",x); } A) ##3B)**3 C)**3D)##3**4 **4##4##4**5##5 ##5**5 3.在while(!x)语句中的!x与下面条件表达式等价的是:。 A)x!=0B)x==1 C)x!=1D)x==0 4.已知 structpoint { intx; inty; }; structrect { structpointpt1; structpointpt2; }; structrectrt; structrect*rp=&rt; 则下面哪一种引用是不正确的________。 A) r t.pt1.xB) (*rp).pt1.xC) rp->pt1.x D)rt->pt1.x 5.若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为:。 A)*(a+j*n+i)B)*(a+i*n+j)C)*(*(a+i)+j)D)*(*a+i) +j CDDDC 二、分析程序并写出运行结果。(25分,每题5分) 1.#include main()

{intn; staticchar*monthName[]= {"Illegalmonth","January","February", "March","April","May","June","July","August", "September","October","November","December"}; for(n=1;n<=12;n++) { printf("%s\n",monthName[n]); } } 运行结果是: January February March April May June July August September October November December 2.#include #defineARR_SIZE7 voidYH(inta[][ARR_SIZE],intn); voidPrintYH(inta[][ARR_SIZE],intn); main() {inta[ARR_SIZE][ARR_SIZE];

大学C语言考试试题及答案

精选考试类文档,如果您需要使用本文档,请点击下载! 祝同学们考得一个好成绩,心想事成,万事如意! 大学C语言考试试题及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串

选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"a

C语言考试题库及答案复习整理

C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include void main() { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是 ________D____. A) true B) 非零值 C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、C 语言程序的基本单位是_____C______. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句

a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是______A_____. #include void main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 13、若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为____D__. A) a<>0 B) !a C) a=0 D) a

C语言全部题目及答案

C语言全部题目及答案 SANY GROUP system office room 【SANYUA16H-

C语言全部题目及答案 Exercise 1: Programming Environment and Basic Input/Output 1.Write a program that prints “This is my first program!” on the screen. (a)Save this program onto your own disk with the name of e2-1a; (b)Run this program without opening Turbo C; (c)Modify this program to print “This is my second program!”, then save it as e2-1b. Please do not overwrite the first program. 2.Write a program that prints the number 1 to 4 on the same line. Write the program using the following methods: (a)Using four “printf” statements. (b)Using one “printf” statement with no conversion specifier(i.e. no ‘%’). (c)Using one “printf” statement with four conversion specifiers 3.(a) Write a program that calculates and displays the number of minutes in 15 days. (b) Write a program that calculates and displays how many hours 180 minutes equal to. (c) (Optional) How about 174 minutes?

(完整版)C语言试题及答案解析

C语言 一、选择题(第题2分,共20分) 1.一个C程序的执行是从 A 。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 2.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C 。 x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 52 3.设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为 C 。 A) 0~255 B) 0~32767 C) 0~65535 D) 0~2147483647 4.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。 A) float B) char C) int D) double 5. putchar函数可以向终端输出一个 D 。 A) 整型变量表达式 B) 实型变量值 C) 字符串 D) 字符或字符型变量值 6. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式 B ;如果字符串长度小于5,则输出按方式 C 。 A) 从左起输出该字符串,右补空格 B) 按原字符长从左向右全部输出 C) 右对齐输出该字符串,左补空格 D) 输出错误信息 7.判断char型变量ch是否为大写字母的正确表达式是 C 。 A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 8.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 B 。 if(x>y) z=x; x=y; y=z; A) x=10, y=20, z=30 B) x=20, y=30, z=30 C) x=20, y=30, z=10 D) x=20, y=30, z=20 9.以下程序段______C__. x=-1; do{ x=x*x; } while(!x); A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误 10.以下正确的描述是___B____. A)continue语句的作用是结束整个循环的执行

C语言试题与答案

大学C语言考试题库 第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系

c语言期中考试试题及答案

《C语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】A) 函数B) 语句C) 字符D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】A) 整型、实型、逻辑型B) 整型、实型、字符型 C) 整型、双精度型、布尔型D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】A) 固定的B) 由用户自己定义的 C) 任意的D) 与机器字长有关

(完整版)c语言期末考试题及其答案

选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套

C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c; printf("d=%d",d); } A d=70 B d=80 C d=140 D d=700 10.已知职工记录描述如下,在Turbo C中,系统为变量w分配()字节的空间。 struct worker { int no; char name[20]; char sex; union { int day; int month; int year;}birth; } w; A 29 B 20 C 25 D 6 11.设有以下定义,值为5的枚举常量是()。 enum week{sun,mon=4,tue,wed,thu,fri,sat} w; A tue B sat C fri D thu 12.下面选项中正确的赋值语句是(设char a[5],*p=a;)()。 A p="abcd"; B a="abcd"; C *p="abcd"; D *a="abcd"; 13.设有以下程序段,则值为6的表达式是()。 struct st { int n; struct st *next;}; static struct st a[3]={5,&a[1],7,&a[2],9,0 },*p; p=&a[0]; A p++->n B ++p->n C p->n++ D (*p).n++ 写出下列程序的运行结果(10分,每小题2分) 1.float average (float array[10]) { int i;

c语言试题及答案 ()

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由

主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。

c语言习题及答案

第一章1.1 题目内容: 使用printf()在屏幕上输出hello world! 提示: #include int main() { printf("hello world!\n"); return 0; } 输入格式: 无 输出格式: 输出提示信息:"hello world!\n" 输入样例: 输出样例: hello world! #include int main() { printf("hello world!\n"); return 0; } 1.2 在屏幕上输出多行信息(3分) 题目内容: 使用printf()函数在屏幕上输出以下多行信息: hello world! hello hit! hello everyone! 提示: 在printf()函数中转义字符‘\n’表示换行。

输入格式: 输出格式: 输出提示信息: "hello world!\n" "hello hit!\n" "hello everyone!\n" 输入样例: 输出样例: hello world! hello hit! hello everyone! #include int main() { printf("hello world!\n"); printf("hello hit!\n"); printf("hello everyone!\n"); return 0; } 1.3 计算半圆弧的周长及半圆面积(3分) 题目内容: 编程并输出半径r=5.3的半圆弧的周长及该半圆的面积,的取值为3.14159。要求半径r和必须利用宏常量表示。输入格式: 无 输出格式: 半圆的面积输出格式: "Area=%f\n" 半圆弧的周长输出格式: "circumference=%f\n" 输入样例: 输出样例: Area=44.123632 circumference=16.650427 #include #define PI 3.14159 #define R 5.3 int main() { printf("Area=%f\n", R*R*PI/2); printf("circumference=%f\n", 2*R*PI/2); return 0; }

C语言试题及答案

一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是(D )。 A. 软件是一种逻辑实体,具有抽象性 ~ B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于(D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 【 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件

A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。 - A. 设计说明书 B. 需求规格说明书 C. 可行性分析报告 D. 用户手册 9. 以下关于数据流图的说法错误的是( c )。 A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B. 数据流图是用作结构化分析的一种工具 C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成 D. 数据流图的绘制采用自上向下、逐层分解的方法 10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( c )。 A. 数据库设计 B. 数据通信 C. 数据定义 D. 数据维护 11. 需求分析阶段的研究对象是( b )。 ¥ A. 系统分析员要求 B. 用户要求 C. 软硬件要求 D. 系统要求 12. 结构化方法的基本原则是( b )。 A. 模块化 B. 抽象与分解 C. 信息隐蔽 D. 逐步求精 13. 耦合度最高的是(b)耦合。 A. 环境 B. 内容 C. 控制 D. 数据 14. 内聚程度较低的是( a )内聚。 A. 偶然 B. 通讯 C. 顺序 D. 时间 15. 对一个程序来说,组成系统的模块数目( b ),则开发成本越小。 A. 越多 B. 越少 C. 顺序 D. 时间> 16. 画软件结构图时应注意调用关系只能是(B )。 A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左 17. 程序流程图中的箭头代表( b )。 A. 数据流 B. 控制流 C. 顺序流 D. 调用 18. 软件测试是软件质量保证的重要手段,下述( B )是软件测试的最基础环节。

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语言试题及答案06612

大学C语言考试题库 第1章C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于C 源程序是高级语言程序,因此一定要在TC 软件中输入 B. 由C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有32 个关键字和9 种控制语句。

(2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在C 语言程序中允许出现的字符集是ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以*/ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" (3) 在C 语言中,字符型数据在计算机内存中,以字符的 C 形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 (4) 字符串的结束标志是 C 。 A. 0 B. '0' C. '\0' D. "0" (5) 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为 B 。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (6) 逻辑运算符中,运算优先级按从高到低依次为 D 。 A. &&,!,|| B. ||,&&,! C. &&,||,! D. !,&&,|| (7) 表达式!x||a==b 等效于 D 。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) (8) 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是 A 。 A. 0,0 B. 0,1 C. 1,0 D. 1,1

c语言考试试题以及答案

1. 编程求和1-2+3-4+5-6+…+99-100 #include<> int main() { int i,t,s; s=0; t=1; for(i=1;i<=100;i++) { t=-t; s=s+(-t)*i; } printf("%d\n",s); system("pause"); return 0; } 2.求:1+(1+2)+(1+2+3)+…+(1+2+3+….10) 的和 #include<> int main() { int i,t,s; s=0; t=0; for(i=1;i<=10;i++) { t=t+i; s=s+t; } printf("%d\n",s); system("pause"); return 0; } 3. 求n的值,其中a是一个不为0的数字,例如2+22+222+2222+22222,其中数字a和n由键盘输入。 #include<> int main() { int a,n,i=1,sn=0,tn=0; printf("a,n:"); scanf("%d %d",&a,&n); while(i<=n) {tn=tn+a; sn=sn+tn; a=a*10; i++; } printf("%d\n",sn); system("pause"); return 0; } 4. 有一个函数如下: x (x<5) y= 2x+6 (5<=x<15) 2x-6 (x>=15) 输入x的值,计算出相应的y值。 #include<>

int main() { int x,y; printf("输入X:"); scanf("%d",&x); if(x<5) { y=x; printf("x=%3d,y=x=%d\n",x,y); } else if(x>=5&&x<15) {y=2*x+6; printf("x=%3d,y=2*x+6=%d\n",x,y); } else {y=2*x-6; printf("x=%3d,y=2*x-6=%d\n",x,y); } system("pause"); return 0; } 5. 某国的税收政策为:1000元以下免税,1000~2000元缴纳5%的税,2000~4000元上税10%,4000元以上按20%交税。试编写程序,输入一个人的收入,计算其需要上缴的税额。 #include<> int main() { float a; scanf("%f",&a); if(a<=1000) { printf("免税",a); } if(a>1000&&a<=2000) { printf("%f",a*); } if(a>2000&&a<=4000) { printf("%f",a*); } else printf("%f",a*); system("pause"); return 0; } 6. 编程分段统计学生成绩,输入为负数时结束。要求按90-100、80-89、70-79、60-69、60以下五档分别统计各分数段人数 #include<> int main() { float score; int a[6]={0,0,0,0,0,0}; char grade; int i; do{ scanf("%f",&score);

相关文档