08--09-1c++练习题2.doc_第1页
08--09-1c++练习题2.doc_第2页
08--09-1c++练习题2.doc_第3页
08--09-1c++练习题2.doc_第4页
08--09-1c++练习题2.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、选择题(1) 以下叙述中不正确是 。A).在C语言中所有变量必须先定义后使用 B).在程序中,aph与APH是两个不同的变量 C).在C语言中,整型数据与字符型数据不能相互通用 D).用户标识符不能与关键字相同 (2) 下列字符串不是标识符的是 。 A). sum B). Average C. ) Day_night D). M.D.JOHN(3) 设整型变量i=6,则执行y=i+;后,变量y与变量i的值分别是 。A. ) 6 7 B).6 6 C).7 7 D).不确定(4) 若有代数式(3xy)/(bc),则下列不正确的表达式是 。A).x/b/c*y*3 B).3*x*y/b/c C).3*x*y/b*c D).x*y/c/b*3(5) 以下对二维数组c的声明正确的是 _ _ 。A)int c3 ;B)int c(3,4);C)int c(2)(2);D)int c32;(6) 如果用户的程序中要使用C库函数中的字符串函数时,应在该源文件中使用的include命令是_。A)#includeB)#includeC)#includeD)#include(7) 以下程序的输出结果是_ _ 。 main( )char c1=8,c2=2; printf(“%c,%c,%d,%dn”,c1,c2,c1-c2,c1+c2);其中2的ASCII值为50。A)因输出格式不合法,输出出错信息B)8,2,6,106 C)8,2,6,10 D)8,2,5,9(8) 若主调用函数为double型,被调用函数定义中没有函数类型说明,而return语句中的表达式为float型,则被调用函数返回值的类型是_。)float 型)int型C)double型D)类型错误(9) 语句if (i ) i+; 中的条件表达式 i 等价于_。A)i=0B)i!=1C)i!=0D)-i(10) 为表示关系xyz,应使用的C语言表达式是_。A).(xy)&(yz) B).(xy)and(yz) C).(xyz) D).(xy)&(yz)(11) 已知:int a,*p=&a; 则为了得到变量a的值,下列错误的表达式为_。A)p0B)*pC)&*aD)*&a(12) 设有:int a =3,b = 4 ,c =5,则下面的表达式中,值为0的表达式是_。A).ab+c&b-c B)!(a=a; i+) printf(%d,i );B)for(i=z; i=a; printf(%c,i-);C)for(i=z; i=a; i+) printf(%c,i );D)for(i=z; i=a; -i ) printf(%d,i);(17) 声明语句为“int b34;”,下列表达式中与数组元素b21等价的是_。 A)*(b2+1)B)b3C)*(b1+2)D)*(*(b+2)(18) 已知char b5,*p=b; 正确的语句是_。 A)b=abcd ;B)*b=abcd;C)p=abcd;D)*p=abcd(19) 有如下程序long fib(int n) if(n2) return(fib(n-1)+fib(n-2);else return(2);main0 printf(“%dn”,fib(3);该程序的输出结果是A)2 B)4 C)6D)8(20) 有如下程序int func(int a,int b) return(a+b);main0 int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%dn”,r);该程序的输出的结果是A)12 B)13C) 14 D) 15二、程序阅读题1.以下程序的输出结果是_。#includevoid main( )int m=026,n=0x16;printf(%d,%dn,m,n);2.阅读以下函数,写出此函数的功能。#include void main() int a,b,s; scanf(%d%d,&a,&b); s=a-b; if (ab) s=b-a; printf(%dn,s); 3.以下程序的运行结果 。#include void main() int a23=1,2,3,4,5,6;int (*p)3=a, i, j, k=0;for(i=0;i2;i+)for(j=0;j3;j+)k+=*(*(p+i)+j);printf(%dn,k); 4.写出以下函数的功能。#include int f(char *s)char *p=s;while(*p!=0) p+;return(p-s);6.以下程序的运行结果 。#includeint f1(int x,int y) return(x+y); main() int a=2,b=5,c=8; printf(%dn,f1(f1(a+c,b),a-c); 三、程序填空题2.以下程序的功能是求出输入整数的个位数、十位数和百位数(1000以下的正整数)。请填空。#include#includevoid main()int x,a,b,c; doprintf(输入一个1000以下的正整数:); (3) ; printf(n); while( 4) ); if(x0) x=-x;a=x/100; b=(x-a*100)/10; c= (5) ; printf(%d的个位数是%d,十位数是%d,千位数是%dn,x,c,b,a); 四、编程题1(5分)编写一个函数conj,把两个字符数组str1和str2中的字符串连接起来,结果放在字符数组str1中,设字符数组str1足够大,能容纳连接后的字符串。不要用strcat函数。 一、 2、(5分)编写两个正整数m和n,求其最小公倍数。选择题:1 C 2 D 3 A 4 C 5 D 6 A 7 B 8 B 9 C 10 A 11 C 12 B 13 C 14 D 15 C 16 B 17 A 18 C 19 B 20 D 二、程序阅读题1 22,222 输入2个整数,用较大的数减去教小的数,输出其差3 214 该函数返回字符指针s所指的字符串的长度;5 x=7,y=56 9三、程序填空题 3.scanf(d,&x) 4.abs(x)10005 x%100四、编程题void conj(char str1,char str2)int i=0,j=0;while(str1i!=0 ) i+;while(str2j!= 0)str1i+ =str2j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论