江苏省计算机二级C语言试题笔试(8份)(4)

2019-03-29 13:27

题号 一 二 三 四 五 六 七 八 九 得分 一、选择题(本大题共10小题,每题3分,共30分)

1. 以下选项中属于C语言的数据类型是( )

A.复数型 B .逻辑型 C .双精度型 D. 集合型

2. 要判断char型变量m是否是数字,可以使用下列表达式( )

A.0<=m && m<=9 B. ‘0’<=m && m<=’9’

C. “0”<=m && m<=”9” D. 前面三个答案均是错误的 3. 为了判断两个字符串s1和s2是否相等,应当使用( )

A.if (s1= =s2) B. if (s1=s2)

C. if ( strcpy (s1,s2) ) D. if ( strcmp( s1,s2)= =0 ) 4. 以下说法正确的是( )

A. C语言程序总是从第一个定义的函数开始执行

B. 在C语言程序中,要调用的函数必须在main()函数中定义 C. C语言程序总是从main()函数开始执行

D. C语言程序中的main()函数必须放在程序的开始部分 5. 以下错误的描述是( )

A. 不同函数中可以使用相同的变量名 B. 形式参数是局部变量

C. 一个函数内部定义的变量只能在本函数范围内有效

D. 在一个函数内部的复合语句中定义的变量可以在本函数范围内有效 6. 要说明一个有10个int 元素的数组,应当选择语句( )

A.int a[ 10 ]; B. int a[ 2, 5 ] C. int a[ ]; D. int *a[ 10 ]; 7. 说明语句”int ( * p ) ( ) ;”的含义是( )

A. p是一个指向一维数组的指针变量 B. p是指针变量,指向一个整型数据

C. p是一个指向函数的指针,该函数的返回值是一个整型 D. 以上都不对

8. 已知:char b[ 5 ] , *p=b; 则正确的赋值语句是( )

A. b=”abcd”; B. *b=”abcd”; C. p=”abcd” ; D. *p=”abcd”; 9. 下面的四个运算符中,优先级最低的是( )

A.( ) B. . C. —> D. + + 10. C语言中标准输入文件stdin 是指( )

A.键盘 B. 显示器 C. 鼠标 D. 硬盘

二、写出运行结果(本大题共4小题,每题5分,共20分)

1.# include main ( ) { char ch;

总 分 16

ch=getchar( ); switch( ch ) { case 65:

printf(“%c”, ‘A’); case 66:

printf(“%c”,’B’); default:

printf(“%s\\n”,”other”); } } 如程序可以正常运行,当从键盘输入 字母A时,输出结果为( ) 2. # include

int d=1l; fun( int p ) { int d=5; d+=p++;

printf(“%d”,d); }

main( ) { int a=3l; fun(a); d+=a++;

printf(“%d”,d); }

运行结果是

3.# include main( ) { int i=0 , j=0; while(i<10) i++;

While( j++<10) ;

Printf(“i=%d, j=%d\\n”, i,j);

}

运行结果是

4.# include main( )

, static char a* +=”Program”, *ptr; for( ptr=a;ptr

putchar ( *ptr ); }

三、阅读程序、填空(每空2分,共18分)

1、下面程序输出3到100之间的所有素数。

17

# include main( ) { int i,j;

for ( i=3; i<=100; i++) { for(j=2;j<=i-1; j++) if ( ) break;

if ( )

printf(“M”,i);

}

}

2、 下面的函数sum(int n )计算1~n的累加和

sum(int n) { if (n<=0)

printf(“data error!\\n”);

if (n= =1) ; else ; }

3、 下面的程序是使用冒泡法对输入的10个浮点数从小到大进行排序。

# include main( )

{ float a[ 10 ],x;

int i,j;

printf(“input 10 numbers please\\n”); for( i=0; ; i++) scanf(“%f”,&a*i]); printf(“\\n”);

for( i=1; ; i++) for (j=0; ;j++) if ( ) { x=a[j]; ; a[j+1]=x; }

四、 设计题(本题共3小题,1、2每题10分,3题12分,共32分)1、写一函数,求方程aX2+bX+c=0的根。从主函数输入a、b、c的值

18

2、 写一函数,输入一个二进制数,输出相应的十进制数

3.建立一个链表,每个结点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,将此结点删去

一、选择题(10*2’) 1 c 2 b 3 d 4 c 5 d 6 a 7 c 8 c 9 d 10 a 二、写出程序运行结果(6*3’) 1 ABother 2 .8 4 3 I=10,j=11 4 Porm 三、填写程序(9*3’) 1 I % j = =0 j= =i 2 return(1) return(sum(n-1)+n) 3 I<10 I<9 j<10-I a[j]>a[j+1] a[j]=a[j+1] 1 # include float x1,x2,disc,p,q;

19

greater_than_zero(float a, float b) { x1=(-b+sqrt(disc))/(2*a);

x2=(-b-sqrt(disc))/(2*a); }

equal_to_zero(float a,float b) { x1=x2=(-b)/(2*a); }

smaller_than_zero(float a,float b) { p= -b/(2*a);

q=sqrt(disc)/(2*a);

}

main( )

{ float a,b,c;

scanf(“%f,%f,%f”,&a,&b,&c); disc=b*b-4*a*c; if ( disc>0)

{ greater_than_zero(a,b);

printf(“x1=%5.2f\\tx2=%5.2f\\n\\n”,x1,x2);else if(disc = =0)

{ equal_to_zero( a,b);

printf(“x1=%5.2f\\tx2=%5.2f\\n\\n”,x1,x2); } else

{smaller_than_zero( a,b);

printf(“x1=%5.2f\\tx2=%5.2f\\n\\n”,x1,x2); } } a) #include # define MAX 100 main( )

{ char t[MAX];

i=0; flag=0; flag1=1;

while((c=getchar())!=’\\0’ && I

else if( flag) , t*I+=’\\0’; c=getchar();

if (c= =’N’||c= = ‘n’) flag1=0;

20


江苏省计算机二级C语言试题笔试(8份)(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:现代西方哲学复习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: