C语言笔试题.wps(2)

2019-03-03 11:41

A.0650 B.1470 C.5430 D.输出值不定

8.以下程序的输出结果是(5,7) int a,b;

void fun(){a=100;b=200} Main()

{int a=5,b=7; fun() printf(\ A.100,200 B.5,7 C.200,100

D.7,5

9.,执行下面程序后,a的值为(8)(考点全局变量和局部变量) Main() {int a,b;

for(a=1,b=1;a<=100;a++) {if(b>=20) break;

if(b%3==1) {b+=3; continue} b—=5;}} A.7 B.8 C.9 D.10

10.若有以下说明: int a[3][5]={{1,2},{3,4},{5,6}};则数值为6的表达式是( a[2][1] ) A.a[2] B.a[2][1] C.a[3][3] D.a[3][5] 11.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是(7和5) Main() {int x;

scanf(\

if(x++>5) printf(\Else printf(\——);} A.7和5 B.6和3 C.7和4 D.6和4 12.以下程序的输出结果是(004) Main() {int a=-1,b=4,k; K=(++a<0)&&!(b——<=0);

Printf (\(短路) A.104 B.103 C.003

D.004

13下述程序运行后输出结果是(3)

Main() {int n[3],i,j,k; 000,i=0 j:0:1;1:2; i=1 j:0:3;1:3; For(i=0;i<3;i++) n[i]=0; k=2; For (i=0;i

For(j=0;j

Main() {int a=10,k=2,m=1;

a/=SQR(k+m)/SQR(k+m);(a=a/(SQR(k+m)/SQR(k+m))) Printf(\ A.10 B.1 C.9 D.0 15.下列运算符中优先级最高的是(+) A.> B.+ C.&& D.!= 16.一下不正确的语句(if(x=y)&&(x!=0) x+=y) 6 / 11

A.if(x>y);

B.if (x=y)&&(x!=0) x+=y;

C.if(x!=y) scanf(“%d”,&x); else scanf(“%d”,&y); D.if(x<y) {x++;y++;}

17.在c语言中,一位数组的定义的方式为:类型说明符 数组名([常量表达式]) A.[常量表达式] B.[整形表达式] C[整型常量]或[整型表达式] D.[整型常量] 18.定会以如下数组和变量 int k;

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

则下列语句的输出结果是( 7 5 3 ) for(k=0;k<3;k++) prinft(\ A.3 6 9 B.7 5 3 C.9 6 3 D.3 5 7

19.设有:int a=1 ,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后的n值为(2)

A.1

B.2

C.0

D.4

20.下面程序段运行的结果是char str[]=”ABC”,*p=str;printf(“%d\\n”,*(p+2));(字符'C'的ASCII码)

char str[] ='ABC',*p=str; prinft(\; A.0 B.字符‘C’的ASSCII码 C.字符‘C’的地址 D.字符‘C’ 21.若i为整型变量,则下列循环执行的次数是( 3次) for (i=3;i!=0)printf(\ A.0次 B.1次 C.2次 D.3次

22.下面程序有错得行是(5) 1 main() 2 {

3 int a[3]={1} ; 4 int i ;

5 scanf(\是地址 6 for(i=1;i<3;i++) a[0]=a[0]+a[i]; 7 prinf(\ 8 } A.3 B.6 C.7 D.5

23.下面的程序的运行结果是 (*#*#*#$)选项中无正确答案 #include main() { int i ;

for(i=1 ;i<5;i++){ if(i%2)

printf(\; else

continute ;//else 控制到这句; printf(\;} printf(\;} 7 / 11

A.*#*#$ B.#*#*#*$ C.*#*#$ D.#*#*$ 24.下面的程序的运行结果是 (k=4) #include main(){ int k = 0; char c='A'

do{ switch(c++)

{case 'A' :k++;break ; case 'B' :k-- ;

case 'C' :k+=2;break ;

case 'D' :k=k%2;continue ; case 'E' :k=k*10;break ; default :k=k/3 } k++;} while(c<'G')

printf(\ A.k=3 B.k=4 C.k=2 D.k=0 25.下程序不是死循环的是(.int k=0 ; do(++k) while(k>=0)) A. int i =100; while(1){

i=i0+1;if(i>100) break ;

A.int i=100; while(1) {i=i0+1;if (i>100 break)} B.for(;;);

C.int k=0; do{++k;} while (k>=0;) D.int s=36; while (s);--s

填空题

1.在内存中存储“A”要占用 (2)个字节,存储‘A’要占用(1)个字节。 2.在C语言中,长整型数据和(float)类型的数据占用相同的字节数。 3.表达式‘A'+4-0.5运算结果是(68.5),其数据类型是(double) 4.一个函数自己调用自己,称作(递归调用)。

5.在程序中使用库函数,一般应在文件开头使用(#include)命令。

6.定义语句“char p[6]=\”则p[3]代表的字符是(‘4’)。P[5]代表的字符是‘\\0‘.

7.若有如下定义:#define F(N) 2*N,则表达式F(2+3)的值是(7)。(2*2+3)

判断题

1.C语言中每个语句必须以“;”分号结束。(T) 2.C语言中所有函数的执行都是从主函数开始的。(T)

3.语句printf(\的输出结果为51。 (T)0的ASCII是48 4.常量—1按无符号整型输出时,显示65535。 (T)

5.结构体类型本身不占用内存空间,结构体变量占用内存空间。 (T) 6.C语言函数的返回值只能是数值,不能是地址。 (F) 7.X=(i=4,j=16,k=32); x的结果是32。 (T) 8 / 11

8.变量一旦被说明,则该变量被分配存储空间。 (T)

9.C语言程序通过编译、运行后,其结果都是正确的。 (F) 10.C语言中所有变量都不能存放地址。 (F) 四.阅读程序图 1.

#include Main(){

int a ,s ,n,count ;

a=2;s=0;n=1;count = 1;

While(count<=7) {n=n*a;s=s+n;++count;}(n=2的n 次方,等比数列求和) Prinft(\}

【】运行结果: S = 254

2.【程序】 Main(){

Int a[2][3] = { {1,2,3} ,{4,5,6}} int m,*ptr ; ptr=&a[0][0];

m=(*ptr)*((*ptr+2))*((*ptr+4)); printf(\

【运行结果】15 3 . 【程序】

voidfan(int *a ,int *b ) {k=a;a=b; b=k;} main(){

int a= 3, b=6,*x=&a , *y=&b ; fun(x,y);

printf(\ 【运行结果】 3 ,6 4【程序】 #include Main(){

int a, b ,m ,n ; m=n=1 ;

scanf(\ do{ if(a>0)

{m=2*n ; b++ ;}} while(a==b)

printf(\ 程序运行时请输入 4 2

【程序运行结果】 m = 2,n=1 5【程序】(拿x 的元素上y里去查,找不到给c ) #include

int f( int a[] ,int b[] ,int n , int c[]){ 9 / 11

int i ,j,k =0 ,t ; for(i=0 ;i

for( t =1 ; ,j = 0;j

{ t = 0 ; break ;} if(t) c[k++]=a[i] } return k ;} void main(){

int x[] = {7,2,3,6,5,4,1}, y[] ={5,10,7,9,8,6}, z[10] ,w ,j ; w=f(x,7,y,6,z); for(j=0;j

【程序运行结果】2341

五 . 程序填充题目

1.输出100到1000之间的个位数字之和能被15整除的所有数,输出时候没事每10个数占一行 main(){

int m, n , k,i=0;

for(m=100;m<1000 ;m++) {k =0 ; n =m ;

do{ k=k+_______【1】

n=n/10;}(先取低端的数) ____________【2】 if(k==0){ printf(\ i++;

printf(\;}}

【1】n或 n-n/10*10或 n-10*(n/10) 【2】while(n>0)或while(0

2.功能:有n个整数 ,使其前面各数顺寻向后移动m个位置,最后m个数变成最前面的m个数

main(){

int number[20],m,n,i;

printf(\ scanf( \ prinf(\ scanf(\ for(i=0;i

scanf(\

scanf(\ 10 / 11

move(______________【3】number , n, m);

for(i=0;i

prinf(\ prinf(\ move(array ,n ,m) int n ,m ,array[20];{ int *p ,array_end ;

array_end=*(______________)【4】; for(p=array+n-1;p>array;p--) *p=*(________)【5】 *array=array_end; m--

if(m>0) move(array,n,m);} 【3】number ,n ,m 【4】array+n- 1 【5】p-1

11 / 11


C语言笔试题.wps(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:社区消防工作全套基础台帐

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

马上注册会员

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