C语言考试题目
Posted 张夷陵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言考试题目相关的知识,希望对你有一定的参考价值。
一、单项选择题:(本大题共25小题,每题2分,共50分)
1、C语言的源程序通常的扩展名是( )。
A..cpp B..obj C..exe D..c
2、下列选项中,( )属于多行注释。
A./* B.// C.\\\\ D./**/
3、以下不合法的字符常量是( )。
A. 'ab' B.'2' C.'A' D.'\\n'
4.设int a=1,b=2;以下选项中不正确的语句是( )。
A.a/=1 B.a+=3 C.a*3=3 D.a=a+b
5.在C语言中,要求运算数必须是整型的运算符是( )。
A./ B.+ C.% D.-
6.78%10的结果是( )。
A.7 B.10 C.8 D.78
7.设int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为( )。
A.1 B.0 C.3 D.2
8.能正确表示逻辑关系x<=y<=z的C语言表达式为( )。
A.(x<=y)&&(y<=z)
B.(x<=y)AND(y<=z)
C.(x<=y)&(y<=z)
D.(x<=y<=z)
9.语法不正确的语句是( )。
A.if (x!=y) scanf ("%d", &x);
B.if (x==y) && (x!=0) x++;
C.if (x=y) x++;y++;
D.if (x>y);
10.设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是( )。
A.0 B.9 C.3 D.-12
11.在C程序中如果要使用数学函数,如sin(x),log(x)等,需要在程序中加入的语句是( )。
A.#define <math.h> B.#include <stdio.h>
C.#define <stdio.h> D.#include <math.h>
12.设int k=7, x=12;则以下能使值为3的表达式是( )。
A.(x%=k)-(k%=5) B.x%=(k%=5) C.x%= k-k%5 D.x%=(k-k%5)
13.若给定条件表达式(m)?(a++):(a--),则其中表达式m()。
A.和(m!=1)等价 B.和(m!=0)等价 C.和(m==1)等价 D.和(m==0)等价
14.设整型变量x、y、z的值分别为3、2、1,则下列程序段的输出是( )。
if(x>y) x=y;
if(x>z) x=z;
printf("%d,%d,%d\\n",x,y,z);
A.1,1,1 B.3,2,1 C.1,2,1 D.1,2,3
15.下列说法错误的是()。
A.每个case后的常量只起语句标号的作用,所以case常量的值必须互不相同,而且在每个case的语句序列后都有break的情况下,改变case常量出现的次序,不影响程序的运行结果。
B.case后面的表达式不能是含有变量的关系表达式和逻辑表达式,它不能像if语句那样起到判断表达式真假的作用。
C.switch语句中的break和default可有可无。
D.若所有的case常量都不能与表达式的值相匹配,那么就执行default后面的语句。通常用于处理不在合理区间内的非法数据。
16.以下正确的描述是( )。
A.continue语句可以写在循环体之外
B. continue语句的作用是结束整个循环的执行
C.只能在循环体内和switch语句体内使用break语句
D.在循环体内使用break语句或continue语句的作用相同
17.设已定义i和k为int类型变量,则以下for循环语句
for(i=0,k=-1;k=1; i++,k++)
printf( "* * * *\\n");
A.是无限循环 B.循环只执行一次
C.判断循环结束的条件不合法 D.循环一次也不执行
18.程序运行后的输出结果是
int main()
int i;
for(i=0;i<3;i++)
switch(i)
case 0: printf("%d",i);
case 2: printf("%d",i);
default: printf("%d",i);
return 0;
A.012 B.022111 C.021021 D.000122
19.以下程序运行后的输出结果是
int main()
int i=0,s=0;
for (;;)
if(i==3||i==5) continue;
if (i==6) break;
i++;
s+=i;
printf("%d\\n",s);
A.程序进入死循环 B.10 C.21 D.13
20.程序执行后的输出结果是
int main( )
int i,s=0;
for(i=1;i<10;i+=2)
s+=i+1;
printf("%d\\n",s);
A.自然数1~9中的奇数之和 B.自然数1~10的累加和
C.自然数1~10中的偶数之和 D.自然数1~9的累加和
21.若有定义:
int a[5]=1,2,3,4,5;
char b='c',c;
则下面表达式中数值为 2 的是( )。
A.a[b] B.a[2] C.a[c-b] D.a[b-'b']
22.关于int a[2][4]=1,2,3,4,5,6 ; 说法不正确的是( )
A.它的等价形式之一是int a[][4]=1,2,3,4,5,6
B.它的等价形式之一是int a[][4]=1,2,3,4,5,6,0,0
C.它的等价形式之一是int a[2][]=1,2,3,4,5,6,0,0
D.它的等价形式之一是int a[][4]=1,2,3,4,5,6,0
23.假设 array 是一个已定义好的,有 10 个元素的整型数组, 则下列写法中正确的是( )。
A.array[0]=10; B.array[10]=0; C.array=0; D.array[-1]=0;
24.对以下说明语句的正确理解是 ( )
int a[10]=6,7,8,9,10;
A.将5个初值依次赋给a[6]至a[10]
B.将5个初值依次赋给a[1]至a[5]
C.因为数组长度与初值的个数不相同,所以此语句不正确
D.将5个初值依次赋给a[0]至a[4]
25.定义int b[6];
下面( )可以输出数组的所有元素的值。
A.for(i=0;i<6;i++) printf("%d",b[i]);
B.for(i=1;i<=6;i++) printf("%d",b[i]);
C.printf("%d",b[5]);
D.printf("%d",b);
二、填空题:(本题共6小题,每空3分,共30分)
1.在C语言程序中,用关键字 定义基本整型变量,用关键字 定义单精度实型变量,用关键字 定义双精度实型变量。
2.下列程序段当a的值为014和0x14时的执行结果分别是__________。
if ( a=0xA | a >12 )
if ( 011&10==a ) printf (”%d!\\n”,a);
else printf (”Right!%d\\n”,a);
else printf (”Wrong!%d\\n”,a);
- 下面程序段的输出结果是__________。
void main()
int n=4;
while(n)
printf("%d",--n);
- 若int A[5]=1,2,3;则A[2]的值是__________。
5.鸡兔同笼,共有98个头,386只脚,编程求鸡、兔各多少只。
代码如下,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。
int main()
int x, y;
for (x=1; x<98; x++)
_____(1)____
if ( __ (2) ___ )
printf("x = %d, y = %d", x, y);
6.已知int a,b;并且有a=-5%3;以及b=5%-3;,则a和b的值分别是__________。
7.若int类型变量占4个字节,定义int x[10]=0,2,4;,则数组x在内存中所占的字节数是__________。
以上是关于C语言考试题目的主要内容,如果未能解决你的问题,请参考以下文章