级C语言复习题.docx
- 文档编号:790163
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:16
- 大小:22.48KB
级C语言复习题.docx
《级C语言复习题.docx》由会员分享,可在线阅读,更多相关《级C语言复习题.docx(16页珍藏版)》请在冰豆网上搜索。
级C语言复习题
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、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是()
Aa=a+b,b=a-b,a=a-b;Bt=a;a=b;b=t;
Ca=t;t=b;b=a;Dt=b;b=a;a=t;
6、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()
A)-3B)9C)-12D)6
7、若有定义语句:
intx=12,y=8,z;在其后执行语句z=0.9+x/y,则z的值为()
A)1.9B)1C)2D)2.4
8.以下不正确的叙述是( )
A.在C程序中,逗号运算符的优先级最低
B.在C程序中,APH和aph是两个不同的变量
C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
9.已知表达式x=(a=3,a*3),则x的值是( )
A3B6C18D9
10.以下程序的输出结果是( )
main()
{floatx=3.6;
inti;
i=(int)x;
print(“x=%f,i=%d”,x,i);
}
A、x=3.600000,i=4B、x=3,i=3
C、x=3.600000,i=3D、x=3,i=3.600000
11、若有定义:
inta,b;通过语句scanf("%d:
%d",&a,&b);能把整数3赋给变量a,5赋给变量b的输入数据是( )
A)35B)3,5C)3:
5D)35
12、表达式:
10!
=9的值是
A)trueB)非零值C)0D)1
13.若w=1,x=2,y=3,z=4,则表达式w w: y y: z的值是: ( ) A.4 B.3 C.2 D.1 14、表示关系x<=y<=z的c语言表达式为 A)(X<=Y)&&(Y<=Z)B)(X<=Y)AND(Y<=Z) C)(X<=Y<=Z)D)(X<=Y)&(Y<=Z) 15、设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)0B)1C)2D)3 16、语句: printf("%d",(a=2)&&(b=-2));的输出结果是( ) A)无输出B)结果不确定C)-1D)1 17、下列说法中正确的是( )。 A、在switch语句中一定要使用break语句 B、在switch语句中不一定要使用break语句 C、break语句是switch语句的一部分 D、break只能用于switch语句中、 18、若执行了语句: floatx=1008;inty=15;则表达式(int)(x+y)%7/17的值为( ) A)23B)1C)0D)无法确定 19.下面程序段() x=3; do{y=x--; if(! y){printf(“*”);continue;} printf(“#”);} while(1<=x<=2); A.将输出##B.将输出##* C.是死循环D.含有不合法的控制表达式 20、有以下程序段intk=0while(k=1)k++;while循环执行的次数是 A)无限次B)有语法错,不能执行 C)一次也不执行D)执行1次 21、C语言中数组下标的下限是()。 A、1B、0C、视具体情况D、无固定下限 22、假定int类型变量占用两个字节,其有定义: intx[10]={0,2,4};,则数组x在内存中所占字节数是 A)3B)6C)10D)20 23.以下程序的输出结果是()。 main() {ints[10]={1,2,3,4,5,6,7,8,9,10}; printf("%d\n",s[10]); } A、10B、9C、11D、不确定 24.以下程序运行后,输出结果是() main() {inta[3][3]={{3,2,1},{4,5,6},{2,9,2}}; inti,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); } A6B7C8D9 25.一个二维数组intstudent[5][6],其第2行第3列元素的正确表示是: () Astudent[3][2]Bstudent[2][3] Cstudent[2,3]Dstudent[1][2] 26.若有说明: inta[10];则对a数组元素的正确引用是() A.a[10]B.a[3.5]C.a(5)D.a[10-10] 27.以下程序的主函数中调用了在其前面定义的fun函数 #include voidmain() {doublea[15],k; k=fun(a); } 则下列选项中错误的fun函数首部是() A)doublefun(doublea[15]) B)doublefun(double*a) C)doublefun(doublea[]) D)doublefun(doublea) 28.下面程序段的运行结果是()(□代表空格) charc[5]={‘a’,’b’,’\0’,’c’,’\0’}; printf(“%s”,c); A.’a”b’B.abC.ab□cD.abc 29.给出以下定义: charx[]="abcdefg"; chary[]={'a','b','c','d','e','f','g'}; 则正确的叙述为() A)数组X和数组Y等价 B)数组X的长度大于数组Y的长度 C)数组x和数组Y的长度相同 D)数组X的长度小于数组Y的长度 30.下面程序段的运行结果是() chara[7]=”abcdef”; charb[4]=”ABC”; strcpy(a,b); printf(“%c”,a[5]); A.空格B.\0C.eD.f 31.判断字符串s1是否大于字符串s2,应当使用() A.if(s1>s2) B.if(strcmp(s1,s2)) C.if(strcmp(s2,s1)>0) D.if(strcmp(s1,s2)>0) 32.若有以下程序片段: charstr[]="ab\n\0\\\"";printf("%d",strlen(str)); 上面程序片段的输出结果是 A)3B)4C)6D)12 33、在C语言中,若对函数类型未说明,则函数的隐含类型是____类型 A)voidB)doubleC)intD)char 34、C语言中函数返回值的类型是由()决定。 A)return语句中的表达式类型B)调用函数的主调函数类型 C)调用函数时临时D)定义函数时所指定的函数类型 35、以下说法不正确的是() C语言规定: A.实参可以是常量、变量或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 36、当调用函数时,实参是一个数组名,则向函数传送的是() A)数组的长度B)数组的首地址 C)数组每一个元素的地址D)数组每个元素中的值 37.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是( )。 A函数调用可以作为独立的语句存在B函数调用可以作为一个函数的实参 C函数调用可以出现在表达式中 D函数调用可以作为一个函数的形参 38.在C语言程序中以下正确的描述是() A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可嵌套,但函数的调用可以嵌套 C.函数的定义和函数的调用均不可以嵌套 D.函数的定义和调用均可以嵌套 39、有如下程序 longfib(intn) { if(n>2)return(fib(n-1)+fib(n-2)); elsereturn (2); } main() {printf("%d\n",fib(3));} 该程序的输出结果是 A)2B)4C)6D)8 40.有以下定义 int a=0; double b=1.25; char c=’A’; #define d 2 则下面语句中错误的是() Aa++ Bb++ Cc++ Dd++ 41.设有以下宏定义: #defineN2 #defineMN+1 #defineNUM(M+1)*M/2 main() {printf(“%d\n”,NUM);} 程序运行后的输出结果是() A)4B)8C)9D)6 42、以下正确的说法是( )如果在一个函数中的复合语句中定义了一个变量,则该变量 A.只在该复合语句中有效 B.在该函数中有效 C.在本程序范围内均有效 D.为非法变量 43、有如下程序段int*p,a=10,b=1;p=&a;a=*p+b; 执行该程序段后,a的值为 A)12B)11C)10D)编译出错 44、有如下说明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是 A)*p+9B)*(p+8)C)*p+=9D)p+8 45、以下选项中,不能正确赋值的是 A)chars1[10];s1="Ctest"; B)chars2[]={'C','t','e','s','t'}; C)chars3[20]="Ctest"; D)char*s4="Ctest"; 46.变量的指针,其含义是指该变量的________. a)值b)地址c)名d)一个标志 47.下面程序段的运行结果是________. char*s="abcde";s+=2;printf("%s",s); a)cdeb)字符'c'c)字符'c'的地址d)无确定的输出结果 48、设有定义: struct{charmark[12];intnum1;doublenum2;}t1,t2;若变量均已正确赋值,则以下语句中错误的是: a)t1=t2;b)t2.num1=t1.num1;c)t2.mark=t1.mark;d)t2.num2=t1.num2 49、有以下程序 #include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习题
![提示](https://static.bdocx.com/images/bang_tan.gif)