文档库 最新最全的文档下载
当前位置:文档库 › C语言综合练习题

C语言综合练习题

C语言综合练习题
C语言综合练习题

综合练习题

一、从下列四个供选择的答案中选出正确的一个答案

1、语句printf(“%%d%d”, 123); 将输出:

A) %123%d B) %%d123 C) %d123 D)上述语句语法有错

2、执行下列程序段后, a值为:

int a, b;

a=15; b=12;

a=(a-- ==b++)? a%5 : a/5;

A) 0 B) 2.8 C ) 4 D) 2

3、判断字符变量c的值为数字(’0’---’9’)则返回1,否则返回0, 可用表达式:

A) ‘0’<=c<=‘9’ B) ‘0’<=c && c<=‘9’ C) ‘0’<=c || c<= ‘9’ D)以上均不是

4、对于int x, y; 语句 if (x<0) y= -1; else if (!x) y=0; else y=1; 等价于:

A) y=0; if (x>=0) if (x) y=1; else y= -1;

B) if (x!=0) if (x>0) y=1; else y= -1; else y=0;

C) if (x<0) y= -1; if (x!=0) y=1; else y=0;

D) y= -1; if (x!=0) if (x>0) y=1; else y=0;

5、循环 for(i=0, j=5; ++i!=--j; ) printf(“%d %d”, i, j); 将执行

A) 6次 B) 3次 C) 0次 D) 无限次

6、下列程序段执行后s值为:

int i=5, s=0;

do if (i%2) continue; else s+=i; while (--i);

A) 15 B) 9 C) 6 D) 以上均不是

7、对于int a,要使((1<<2>>1)|a)==a; 则a 可以是:

A) 2 B) 6 C) 10 D) 2,6,10均可

8、对于以下宏定义:

#define SQ(x) x*x

#define DD(x,y) SQ(x)-SQ(y)

宏调用DD(2*3, 2+3)执行后值为:

A) 43 B) 11 C) 25 D) 以上均不是

9、对于以下结构定义:

struct { int len;

char *str;

} *p;

*p->str++中的++加在

A) 指针str上 B) 指针p上 C) str所指的容上 D) 以上均不是

10、将s所指节点加到p所指节点之后(如下图), 其语句应为:

A) s->next = p+1; p->next = s;

B) p->next = s; s->next = p->next;

C) s->next=p->next; p->next=s->next;

D) s->next = p->next; p->next = s;

11、语句if (a>b) k=0; else k=1; (int a, b, k) 等价于:

A) k=(a>b)?1:0; B) k=a>b; C) k=a<=b; D) 以上均不是

12、对于int i; char c, s[20];从输入序列123ab45efg中将123读入i; ’ b’读入c; “45efg”

读入s, 则scanf语句应写为:

A) scanf(“%da%c%s”, i, c, s) B) scanf(“%d%*c%c%s”,&i, &c, s);

C) scanf(“%da%c%s”, &i,&c,&s) D) scanf(“%d%c%c%s”, &i, &c, s);

13、若有以下说明和语句, 已知int和double类型分别占2和8个字节,则sizeof(st)的值为:

struct st {

char a[10];

union {

int i;

double y;

}

};

A) 18 B) 20 C) 12 D) 以上均不是

14、对于以下程序段, 运行后i值为:

enum {1,2,3,4,5,6,7} WEEKS;

enum WEEKS a=1;

int i=0;

switch (a) {

case 1: i=1;

case 2: i=2;

default: i=3;

}

A) 1 B) 0 C) 3 D) 上述程序有语法错误

15、对于以下递归函数f, 调用f(4),其返回值为:

int f(int n)

{ return f(n-1)+n; }

A) 10 B) 11 C) 0 D) 以上均不是

16、某一程序TEST.C,编译后运行:TEST 123 456 ABC 则相应的argc及argv[3]分别为:

A) 3 “456” B) 3 “ABC” C) 4 “456” D) 4 “ ABC”

17、如下程序段:

int c[]={1, 7, 12};

int *k;

k=c;

printf("%d",*++k);

其输出应为:

A) 2 B) 7 C) 1 D)以上均不对

18、如果变量xx有如下类型:

struct {

char a1;

int a2;

} xx;

如果sizeof(xx)的值为3, 则:

union {

char a1;

int a2;

int a3;

} yy;

做sizeof(yy)函数的返回值应为:

A) 2 B) 4 C) 5 D)定义有错

19、对于enum { RAIN, CLOUD, CLEAR } weather;做如下操作:

⑴ weather=1;

⑵ weather=CLOUD; 下列哪个说法是对的。

A) ⑴是错的 B) ⑵是错的 C) ⑴与⑵是一样的 D)以上都错

20、设 int a1=7, a2=1, xx; 进行如下操作xx = ( a1<< 1 )&~( a2<<2 )后 xx 的值为:

A) 0 B) 1 C) 10 D) 以上都错

21、执行 i=3; if(i>3) if ( i<4 ) i=1 else i=2; 后i的值应为:

A) 1 B) 2 C) 3 D) 语句错误

22、执行下列程序:

#define MA(x, y) ( (x)*(y) )

i=5;

i=MA(i,i+1)-7;

后变量i的值应为:

A) 30 B) 19 C) 23 D) 1

23、执行下列程序:

int i, j;

i = 3/2 + 7/2 == 5;

j = 45 % 11 + (((7>8) ? 14:21) == 14);

后变量i,j的值应为:

A) i=0 j=1 B) i=1 j=1

C) i=0 j=2 D) i=1 j=2

24、如果char cc[]="12345",做sizeof(cc)后的返回值应为

A) 2 B) 5 C) 6 D) 1

25、如果 int i=16, j=23 ; 执行 printf("%x--%o",i, j)后输出为:

A) 10--23 B) 10--27 C) 16--23 D) 16--27

26、执行下列程序:

#define MA(x, y) (x)*(y)

int i = 2;

i = 3/MA(i, i+1)+5;

printf(“%d\n”, i);

其输出应为:

A) 5 B) 8 C) 0 D) 以上都错

27、有一函数:

int f(int a) {

auto int b = 0;

static int c = 3;

b = b+1;

c = c+1;

return(a+b+c);

}

如果有int i, j; 则执行两次调用:i=f(2); j=f(2) 后, i, j值为: A) i = 7, j = 7 B) i = 7, j = 8

C) i = 8, j = 7 D) i = 8, j = 8

28、有一函数:

int f(char *s) {

int k = 0;

while (*s) k = k*10+*s++-’0’;

return(k);

}

调用f(“1234”)的返回结果是:

A) “1234” B) 1234 C) “4321” D) 4321

29、static int a[] = {1,2,3}, *p, *q;

p = a+1;

q = p++;

执行该程序段后, p和q所指向的单元的容分别为:

A) (*p) = 1, (*q) = 2 B) (*p) = 2, (*q) = 3 C) (*p) = 3, (*q) = 2 D) 以上都错

30、static struct {

int x, y[3];

} a[3] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}}, *p;

p = a;

则*((int *)(p+1)+2) = ?

A) 3 B) 7 C) 10 D) 以上都错

二、填空题

1、用for循环打印 1 4 7 10 13 16 19 22 25 , 其语句应为:

for (i=1; i<=9; i++) printf(“%3d”, _______);

2、执行完下列语句段后, i,j值分别为:_________

int i, j;

j=10*(i=5);

i+=j*=i+2;

3、执行完下列语句段后, i值为:_______

static int a[3][4]={{1,2,3},{4,5,6}}, i;

i= a[0][5];

4、执行完下列语句段后, i值为:________

int i;

int f(int x)

{ static int k = 0;

x+=k++;

return x;

}

i=f(2);

i=f(3);

5、执行完下列语句段后, i值为:________

int i;

int f(int x)

{ return ((x>0)? x*f(x-1):3); }

i=f(f(1));

6、执行完下列语句段后, s和f值分别为: _________

char s[20];

double f;

sscanf(“%s%lf 12.4%s%f12.5”, “%s %lf”, s, &f);

7、对于char c; 若已知其值为小写字母, 将其转换为相应大写字母的表达式为

_________

8、对于如下类型定义A:

typedef int (*A[10])();

也可以用以下方式分开定义:

typedef ______________; /*先定义PT*/

typedef PT A[10] ;

9、将p说明为字符数组指针,数组大小为10,可写为:_________________

10、如下函数

void f(char *s, char *t)

{ int i;

i=0;

while (s[i]=t[i]) i++;

}

等价于:

void f(char *s, char *t)

{ while (_______ = *t++);

}

11、int i=0, s=0;

while (i

等价于

int i, s;

for(____________________);

12、head为指向以下结构的链表指针, 统计链表中所有inf域值之和(s)的程序段为:

struct nlist {

int inf;

struct nlist *next;

} *head, *p;

long s;

for (p=head, s=0; _________ ; p = p->next)

s += ____________;

13、下列程序判断字符串s是否对称,对称则返回1,否则返回0; 如f(“abcba”)返回1, f(“abab”)返

回0;

int f(___________)

{ int i=0,j=0;

while(s[j]) j++;

for ( j--; i

return _________;

}

14、下面是用二分法从数组v[n]中查找数x的函数,返回值为x所在下标(若找到)或-1(没找到):

binsearch(int x, int v[], int n)

{ int low, high, mid;

low=0; high=n-1;

while (low<=high) {

mid = __________;

if (x

else if (x>v[mid]) low = mid +1;

else return _________;

}

return -1;

}

15、下面程序验证哥德巴赫猜想, 即寻找2到1000间满足“偶数=素数1+素数2”(如10=3+7)的所有偶数。素数指只能被1和自身整除的正整数,如1,2,3,17等。

#include

#define MAX 500

int prime(int n) /* 判断n是否为素数 */

{ int i;

for (i=2; i<=n-1; i++)

if (!(n%i)) break;

return ______;

}

main()

{ int i, j;

for (i=1 ; i<=500; i++)

for (j=1; j<2*i; j+=2)

if (_____________) {

printf(“%d = %d +%d\n”, 2*i, j, 2*i-j); /*若2*i为两个素数之和 */

break;

}

}

16、对于整型变量i,j执行scanf("%d%*d%d",&i, &j);当输入2 3 4 5 6后

i=______ j= ________

17、对于 int *p, *q, i=5, j=6;执行:

p = &i;

q = p;

p = &j;后 (*p)=____ __ , (*q)= _______

18、f( int m )

{

int i, j;

for( i=0; i

for( j=m-1; j>=0; j--)

printf(“%1d%c",i+j, j?'*':'#');

}

如果调用f(3)将输出____________

19、void f( int *a, int b )

{

static int k=0;

*a += ++k;

b +=2;

}

若执行 i=2; j=4;

f( &i, j );

f( &j, i ) 后 i= _______, j= _________

20、用for循环打印 0 1 2 0 1 2 0 1 2;

for( i=1; i<=9; i++ ) printf("%2d", __________);

21、定义一个返回整型的函数指针p,应写为 ________

22、定义字符指针数组arr, 数组大小为20,应写为 _________

23、程序A

void f( char cc[] )

{

char ch;

int i=0,j=0;

while ( cc[i]!=NULL ) i++;

i --;

for( ;j

ch = cc[j];

c c[j] = cc[i];

c c[i] = ch;

}

}

等价于程序B

void f( char *cc )

{

char *p1, *p2, ch;

p1=p2=cc;

while(______)

p2++;

p2 - -;

while( p1

ch = *p2;

____ = *p1;

____ = ch;

____;

p2 - -;

}

}

24、程序A:

int f( int n )

{

if(n<=1)

return n;

else

return f(n-1)+f(n-2);

}

等价于程序B:

int f( int n )

{

_______;

t0=0; t1=1; t=n;

while (______) {

t = ______;

t0 = t1;

t1 = t;

n - -;

}

return ______;

}

25、下列函数strcmp(s1, s2)是字符串比较, 根据s1,s2大小分别返回负数(s1

(s1>s2). 请将缺少的部分补上。

strcmp(___________)

{

for(; *s1!=_______; ++s1, ++s2)

if (*s1!= *s2) break;

return (_______);

}

26、下列函数f(A, n, x)将正整数x插入已从小到大排序好的数组A中. 数组A当前分量个数为

n. 例如, 当A的前5个分量为(2,3,9,12,15), n=5时, 调用f(A,n,10)后, n 变为6, A的前6个

量为:(2,3,9,10,12,15)。

void f(________)

{

int t, i;

i=n; A[n+1]=______;

while ((i>=0) && (______)) {

t=A[i];

A[i]=A[i+1];

A[i+1]=t;

i - -;

}

n++;

}

27、本程序从一个文件中from.txt读出容,除去其中的数字后写入另一文件to.txt。请将程序

中所缺的部分补上。

#include

int main()

{

FILE *fr, *to;

int cc;

if (______) {

printf( " Can not open file--> form.txt " );

return 1;

}

if (______) {

printf( " Can not open file--> to.txt " );

return 1;

}

while ( ( cc = getc( fr ) ) != EOF )

if ( cc<'0' || cc>'9' ) _______;

______;

}

三、程序阅读理解,并回答相应问题

1、#include

int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

main()

{ int s, i;

for(s=0, i=0; i<3; i++)

s+= *(*a+i);

printf(“%d ”, s);

for(s=0, i=0; i<3; i++)

s+= **(a+i);

printf(“%d ”, s);

}

问题: 上述程序运行后, 将输出_______________

2、#include

int x,y,z,w;

void p(int x, int *y)

{ int z;

++x;

++*y;

z=x+*y;

w+=x;

printf(“%3d%3d%3d%3d\n”, x,*y,z,w);

}

main()

{ x=y=z=w=2;

p(y, &x);

printf(“%3d%3d%3d%3d\n”, x,y,z,w);

}

问题: 上述程序运行后, 第一行将输出_______________

第二行将输出_______________

3、#include

int a[2][5];

void p1(int v[])

{ int i, j, temp;

for (i=1; i<5; i++)

for(j=i-1; j>=0 && v[j]

temp=v[j]; v[j]=v[j+1]; v[j+1]=temp;

}

}

void p2(int v1[], int v2[])

{ int i=0, j=0;

while (i<5 && j<5)

if (v1[i]>v2[j]) printf("%d ", v1[i++]);

else printf("%d ", v2[j++]);

while (i<5) printf("%d ", v1[i++]);

while (j<5) printf("%d ", v1[j++]);

printf("\n");

}

main()

{ int i,j;

for (i=0; i<2; i++)

for(j=0; j<5; j++)

scanf("%d", &a[i][j]);

p1(a[0]);

p1(a[1]);

for (i=0; i<2; i++)

for(j=0; j<5; j++)

printf("%d ", a[i][j]);

printf("\n");

p2(a[0], a[1]);

}

问题: 当输入5 9 1 12 10 7 3 11 4 10时, 上述程序运行后, 第一行将输出_______________ 第二行将输出______________ 4、#include

void p( int r[], int s, int t )

{

int i,j,x;

i=s; j=t; x=r[s];

while( i < j ) {

while ( ( i < j ) && ( r[j] >= x ) ) /* NOTE 1*/ j--;

r[i]=r[j];

while ( ( i < j ) && ( r[i] <= x ) ) /* NOTE 2*/ i++;

r[j]=r[i];

}

r[i]=x;

}

main()

{

int i,n,a[100];

scanf("%d",&n);

for( i=1; i<=n ; i++ )

scanf( "%d", &a[i] );

p( a, 1, n );

for( i=1; i<=n; i++ )

printf( "%3d", a[i] );

}

问题:⒈当输入 6 49 38 65 97 13 27 时,

将输出_______

⒉若将作NOTE 1标记的一行中的r[j]>=x改为r[j]<=x,同时将作NOTE 2

标记的一行中的r[i]<=x改为r[i]>=x 对于问题一中的相同输入,将输出

______

5、 #include

int x,y,z;

const C = 5; /* const 定义“常”变量,即只能对其进行初始化赋值,

以后不能改变其值 */

void p( int *x, int y)

{

/* 标注 */

++*x;

y--;

z= *x+y;

printf("%3d %3d %3d", *x, y, z );

}

void main()

{

x=1; y=C; z=2;

p(&y, x);

printf("%3d %3d %3d", x, y, z );

}

问题:⒈上述程序运行后,第一行将输出_______第二行将输出_______

⒉若在函数p中/* 标注 */ 处改成 int z;则

程序运行后,第一行将输出_______第二行将输出_______ 6、#include

#define F(k) k+3.14

#define P(a) printf("a=%d\n", (int)(a))

#define P1(a) P(a);putchar('\n');

#define P2(a, b) P(a);p1(b);

main()

{

int x = 1;

{

int x = 2;

P(x*F(2));

}

{

for (; x < 10; x += 50)

P2(x, 9.15*x+32);

}

}

请写出该程序中有关宏定义的展开式,并给出该程序的运行结果。

7、 struct student {

int num;

char name[20];

char sex;

int age;

};

struct student stu[3] = {

{1001, “Li Lin”, ‘M’, 18},

{1002, “Zhang Fun”, ‘M’, 19},

{1004, “Wang Min”, ‘F’, 20}

};

main() {

struct student *p;

p = &stu[1];

printf(“%d\n”,(p++)->num); /* Note */

}

请回答下列问题:

1)画出数组stu在存中的存放示意图;

2)执行该程序后,将输出:

————————————————

3)若将Note标记一行中的(p++)->num改为(++p)->num,

则程序将输出:

————————————————

四、请按下列要求编程

请编写一个带命令行参数的程序prog.c. 当运行prog filename时将文本文件filename按原样在标准输出(终端)上输出;当运行prog -n filename时将文本文件按原样在标准输出(终端)上输出,并在各行开头显示当前行行号(从1:开始, 如

1:XXXXXXXX);其它运行方式均显示出错信息.

C语言基础知识_测试题

C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2]下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3.] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4]. 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6]. C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8]. 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处

c语言期末测试题附答案

c语言期末测试题附答 案 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第一 部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答 案,答对一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标 识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】

C语言程序设计基础试题及答案

第一部分C语言基础 一、选择题 1、以下正确得C语言标识符就是() A。%X B。a+b?C.a123 D.test! 2、已定义int a,b;则以下不正确得C语句就是() A.a*=5;??B。b/=2;? C.a+=1、75;?D.b&&=a; 3、若x、i、j与k都就是整型变量,则执行下面表达式后x得值为( ) x=(i=4,j=16,k=32) A.4?B.16 ?C.32 D.52 4、C语言中得标识符只能由字母、数字与下划线三种字符组成,且第一个字符( ) A.必须就是字母???B.必须为下划线? C.必须为字母或下划线D.可以就是字母、数字、下划线中得任一字符 5、下面正确得字符常量就是( ) A.“c”? B。’\\”? C.‘w’??D.” 6、设int a=2,b=0,c;则执行语句c+=b&&a--后, c得结果为( )。 A.0,1B.1,0 ?C.2,0 D.不确定 7、以下不正确得C语言标识符就是()?A) int B)a_1_2?C)ab1exe D)_x 8、以下就是正确得C语言标识符就是( )。?A)#define?B)_123 C) %d D) \n 9、下列四组字符串中都可以用作C语言程序标识符得一组就是() 。?A) prin tB)i\am C)Pxq D)str_l ???oodbs tart$it line# _3d one_half My-〉bookCpp ? pow 10、下面各选项组中,均就是C语言关键字得组就是()。?A)auto,enu

m,include B)switch,typedef,continue?C)signed,union,scanf?D)if,s truct,type 11、下列不属于C语言关键字得就是( ) 。 A)default?B)register C)enum ?D)external 12、C语言程序从main()函数开始执行,所以这个函数要写在( )。?A) 程序文件得开始?B)程序文件得最后?C)它所调用得函数得前面 D) 程序文件得任何位置 13、下列关于C语言得叙述错误得就是( ) A)大写字母与小写字母得意义相同?B) 不同类型得变量可以在一个表达式中 C)在赋值表达式中等号(=)左边得变量与右边得值可以就是不同类型?D) 同一个运算符号在不同得场合可以有不同得含义 14、在C语言中,错误得int类型得常数就是( ) 。?A)32768?B)0 C)037?D) 0xAF 15、将字符g赋给字符变量c,正确得表达式就是( )。 A) c=\147 ?B)c="\147" ?C)c='\147' 16、下列转义字符中错误得一个就是( )。 A) ’\000’ B)'\0014' ?C) ’\x111’ D) ’\2’ 17、将空格符赋给字符变量c,正确得赋值语句就是( )。 A) c=’\0’ B) c=NULL C)c=0 D)c=32 18、已知:char a=’\70’;则变量a中()。 A)包含1个字符?B)包含2个字符?C) 包含3个字符?D) 说明非法 19、字符串"\”EOF\n=-\61\””得长度就是( )。 A)8 ?B) 9?C)14?D)非法字符串

c语言期末考试试题

一、单项选择题。(每题1分,共20分) 1. C程序的基本单位是:() A.子程序 B.程序 C.子过程 D.函数 2.在C语言中,非法的八进制是:() A.016 B.018 C.017 D.02 3. 不是C语言实型常量的是:() A.55.0 B.0.0 C.55.5 D.55e2.5 4 .字符串“xyzw”在内存中占用的字节数是:() A.6 B.5 C.4 D.3 5. 若已定义f,g为double类型,则表达式:f=1,g=f+5/4的值是:() A.2.0 B.2.25 C.2.1 D.1.5 D.1.5 D.1.5 D.1.5 6. 若有语句char c1=`d`,c2=`g`;printf(“%c,%d\n”,c2- `a`,c2-c1);则输出结果为:() (a的ASCII码值为97) A.M,2 B.G,3 C.G,2 D.D,g 7. 使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据 输入是:() A.a=2.2,b=3 B.a=2.2 b=3 C.2.2 3 D.2.2,3 8.表示关系12<=x<=y的C语言表达式为:() A.(12<=x)&(x<=y) B. (12<=x)&&(x<=y) C. (12<=x)|(x<=y) D.(12<=x)||(x<=y) 9.设x=1,y=2,m=4,n=3,则表达式x>y?x:mc4)后,s,t的值为:() A.1,2 B.1,1 C.0,1 D.1,0 12. 语句for(a=0,b=0;b!=100&&a<5;a++)scanf(“%d”,&b); scanf最多可执行次数为:() A.4 B.6 C.5 D.1 13. 对于for(s=2;;s++)可以理解为:()

年C语言程序设计基础期末考试试卷‘B’及答案

年C语言程序设计基础期 末考试试卷‘B’及答案 The following text is amended on 12 November 2020.

一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、 B. C. D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错 误的是( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语 句为( )。

变量说明:float x1,x2; 数据的输入方式:<回车> <回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%,%”,&x1,&x2); D、scanf(“%%”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围

7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次 9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、 x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式

C语言试题及答案

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

精选-C语言期末考试题(含答案)

《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是( ) A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中( ) A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是( ) A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是( ) A )x1=26.8%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:float a=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(2 1 的计算结果不. 相符的是( ) A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是( ) A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue 7.在while (!x )语句中的!x 与下面条件表达式等价的是( ) A) x!=0 B) x==1 C) x!=1 D) x==0 8、有以下程序: #include void main(){ int i=1,j=1,k=2; if( (j++||k++)&&i++ ) printf(“%d,%d,%d\n ”,i,j,k);} 执行后的输出结果是( ) A )1,1,2 B )2,2,1 C )2,2,2 D )2,2,3 9、有以下程序: #include void 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语言期末上机考试题及答案

C语言上机考试题—01 1. //#include #include double fun( int n ) { double sum=0,a=1; for(;n>0;n--,a++) sum=sum+1/(a*(a+1)); return sum; } main() { // clrscr(); printf("%f\n", fun(10)); } 2. #include main() { int k,m,s=0,i,b=0; for(k=10000;k<=20000;k++ ) { if(k%10==7) { for(i=2,b=0;i main() { int a; printf("请输入一个需要判 断的年份:\n"); scanf("%d",&a); if(a%4==0&&a%100!=0) printf("是闰年\n"); else if(a%400==0) printf("是闰年 \n"); else printf("不是闰 年\n"); } C语言上机考试题—02 1. //#include #include double fun( int n ) { double sum=0,a=1; for(;n>0;n--,a++) sum=sum+1/(a*(a+1)); return sum; } main() { // clrscr(); printf("%f\n", fun(10)); } 2. #include fun(int n) { int i,j=0; for(i=2;i #include main() { char str[81]; int i,j=0,w=1,s=0; printf("请输入一串字符: \n"); gets(str); for(i=0;i

C语言考试试题基础版

一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy ,,list ,*jer if (x>y) {z=x; s=z*z;} else {z=y;s=1/(z*z);} if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);

C语言期末考试复习题及答案

C语言期末考试复习题及答案 一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正 确的,请将正确的选项涂写在答案纸上。答在试卷上不得分。 (1)C语言规定:在一个源程序中,main函数的位置 D 。 A)必须在最后B)必须在系统调用的库函数的后面。 C)必须在最开始。。D)可以任意 (2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A 。 A)必须为字母或下划线。。B)必须为下划线。 C)必须为字母D)可以是字母、数字和下划线中的任一种字符。 (3)下面四个选项中,均是正确的八进制数或十六进制数的选项是 B 。 A)-10 0x8f -011 B) 010 -0x11 0xf1 C) 0abc -017 0xc D) 0a12 -0x123 -0xa (4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是 A 。 A)0 ~ 65535 B)0 ~ 32767 C)-32767 ~ 32768 D)-32768 ~ 327687 (5) 若有定义:int a = 7; floa x = , y = ; 则表达式x + a % 3 * (int) (x + y) % 2/4 的值是 D 。 A) B) 0.00000 C) D) (6)已知ch是字符型变量,下面不正确的赋值语句是 B 。 A)ch = 5 + 9 ; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6' ; (7) 设x , y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的

C语言编程基础考试试题

C语言编程基础考试试题 文档名称文档密级 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C 语言的标 准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐, X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main()

{ char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数 中的成对括号构成的代码) 4、设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) 1 文档名称文档密级 pulPtr = pulArray; *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10

c语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

国家二级C语言机试(C语言基础知识)模拟试卷8

国家二级C语言机试(C语言基础知识)模拟试卷8 (总分:60.00,做题时间:90分钟) 一、选择题(总题数:30,分数:60.00) 1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是 (分数:2.00) A.一条C语句可能会被转换成多条机器指令 B.一条C语句对应转换成一条机器指令√ C.一条C语句可能会被转换成零条机器指令 D.某种类型和格式的C语句被转换成机器指令的条数是固定的 解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。 2.以下选项中不属于C语言程序运算符的是 (分数:2.00) A.sizeof B.() C.<> √ D.&& 解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。而<>不是C语言的运算符,C语言中!=表示不等于。 3.若变量已正确定义并赋值,以下不能构成C语句的选项是 (分数:2.00) A.A=a+b: B.B++; C.a=a+b √ D.A?a:b; 解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。 4.以下叙述中正确的是 (分数:2.00) A.程序必须包含所有三种基本结构才能成为一种算法 B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达 C.只有简单算法才能在有限的操作步骤之后结束 D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令√ 解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来捕述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。 5.下列选项中,不能用作标识符的是 (分数:2.00) A._1234 B._1_2 C.int_2_ D.2_int_ √ 解析:解析:C语言中标以符必须以字母或者下划线开始,选项D)中是以数字开始的不能作为标识符。6.以下选项中作为C语言合法常量的是 (分数:2.00) A.-80.√ B.-080

C语言考试题库--综合

试卷编号:10183 所属语言:Turbo C 试卷方案:fny-13 试卷总分:110分 共有题型:7种 ━━━━━━━━━━━━━━ 一、填空共5题(共计15分) ━━━━━━━━━━━━━━ 第1题(3.0分) int x=4,y=z=2;z=x==(y=z); 则z的值为【1】。 答案: 1). 0 第2题(3.0分) 设a,b,t 为整型变量,初值为a=7,b=9,执行完语句t=(a>b)?a:b后,t 的值是【1】。 答案: 1). 9

第3题(3.0分) 设x=72,表达式x=(x>=60)的值为【1】。答案: 1). 1 第4题(3.0分) sqrt()函数的原型在头文件【1】中。 答案: 1). math.h 第5题(3.0分) int x=2;z=-x+++1; 则z的值为【1】。 答案: 1). -1 ━━━━━━━━━━━━━━ 二、判断共5题(共计10分) ━━━━━━━━━━━━━━

第1题(2.0分) 若有说明int c;则while(c=getchar());是正确的C语句。 答案:Y 第2题(2.0分) 结构体类型只有一种。 答案:N 第3题(2.0分) 若有宏定义:#define S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。 答案:N 第4题(2.0分) 参加位运算的数据可以是任何类型的数据。 答案:N 第5题(2.0分) 若有int i=10,j=2;则执行完i*=j+8;后ⅰ的值为28。 答案:N

━━━━━━━━━━━━━━━━━ 三、单项选择共10题(共计10分) ━━━━━━━━━━━━━━━━━ 第1题(1.0分) 若有下列定义,则对a数组元素地址的正确引用是()。int a[5],*p=a; A:*(p+5) B:*p+2 C:*(a+2) D:*&a[5] 答案:C 第2题(1.0分) 在C语言的函数中,下列正确的说法是()。 A:必须有形参 B:形参必须是变量名 C:可以有也可以没有形参 D:数组名不能作形参 答案:C

C语言基础测试题

C语言基础测试题 一选择题(每题2分) 1. C语言程序的基本单位是( A )。 A. 函数 B. 过程 C. 语句 D. 子程序 2. 对于whil e语句,错误的说法是( C )。 A.用条件控制循环体的执行次数 B.循环体至少要执行一次 C.循环体有可能一次也不执行 D.循环体中可以包含若干条语句 3. 定义语句int a=3;则执行语句a+=a-=a*a后,变量a的值是(C)。 A.3 B.0 C.9 D.-12 4. 关于局部变量和全局变量的叙述中,错误的是(A)。 A.全局变量的重复赋值不会影响局部变量的使用。 B.主函数中定义的变量在整个程序中都是有效的 C.形式参数也是局部变量。 D.不论是局部变量还是全局变量,都以最近的一次赋值为准。 5. 已知:int a=13;那么:printf("%02d",a)结果是(A)。 A.13 B.013 C.01 D.03 6. 在main函数中调用scanf给变量a赋值的方法是错误的,原因是()。 int *p,a; p=&a; printf("input a:"); scanf("%d",*p); A. *p表示的是指针变量p的地址 B. *p表示的是变量a 的值,而不是变量a的地址 C. *p表示的是指针变量p的值 D. *p只能用来说明p是一个指针变量 7.若有以下定义,则对a数组元素地址的正确引用是()。 A.a+5 B.*a+1 C.&a+1 D.&a[0] 8. 若int k=4,a=3,b=2,c=1;则kb); A. 1,3 B. 1,4 C. 2,3 D. 2,4 二.填空题。(每空3分) 1.写一个宏MIN,这个宏输入两个参数并返回较小的一个_________。2.main函数中:for(int i=0; i<3; i++){printf("%d",i);}输出结果是_________。3.设int a=9,b=20;则printf("%d,%d",a--,--b);的输出结果是_________。

C语言基础选择试题(一)

C语言基础选择试题(一) 2123 答案 :C 所谓“裸机”是指( )。 a:没有安装机箱 b:没有安装应用软件 c:没有安装任何软件的计算机 c:只安装操作系统的计算机 2145 答案 :D 可用于大小写字母转换的键是( )。 a:Esc b:CapsLock c:Shift c:CapsLock或Shift 1068 答案 :D 计算机病毒的主要特征是()。 a:只会感染不会致病 b:造成计算机器件永久失效 c:格式化磁盘 c:传染性、隐蔽性、破坏性和潜伏性 1054 答案 :D 个人计算机属于( ) 。 a:小型计算机 b:中型计算机 c:巨型计算机 d:微型计算机 1080 答案 :B 用汉语拼音输入“长沙”两个汉字,输入“changsha”8个字符,那么,“长沙”两字的内码所占用的字节数是()。 a:2 b:4 c:8 c:16 1053 答案 :A 操作系统的功能是( )。 a:提高系统资源的利用率,方便用户使用计算机 b:负责给程序和数据分配内存空间 c:负责各种文件的管理 c:管理磁盘文件和I/O设备管理 1055 答案 :C 组建以太网时,通常都是用双绞线把若干台计算机连到一个中心的设备上,这个设备叫做()。 a:网络适配器 b:服务器 c:集线器 c:总线 1057 答案 :D

应用软件是指( )。 a:所有能够使用的软件 b:能被各应用单位共同使用的某种软件 c:所有微机上都应用的基本软件 c:专门为某一应用目的而编制的软件 1078 答案 :B 为网络提供共享资源并对这些资源进行管理的计算机称之为()。 a:网卡 b:服务器 c:工作站 c:网桥 1082 答案 :B 在Windows98中运行应用程序时,下列哪个操作调不出帮助信息()。 a:按F1键 b:按F10键 c:单击“帮助”菜单 c:单击窗口右上角“”按钮 1068 答案 :A ISO/ OSI参考模型七层协议中第一层是()。 a:物理层 b:数据链路层 c:网络层 c:传输层 2083 答案 :A 解释程序的功能是()。 a:解释执行高级语言程序 b:解释执行汇编语言程序 c:将汇编语言程序翻译成目标程序 c:将高级语言程序翻译成目标程序 1071 答案 :B 在计算机网络术语中,WAN的中文意义是()。 a:以太网 b:广域网 c:互联网 c:局域网 1055 答案 :C 主存储器又称为()。 a:RAM b:ROM c:内存 c:外存 1056 答案 :D 把同种或异种类型的网络相互连接起来称为()。 a:广域网 b:万维网(WWW c:城域网 c:互联网

c语言期末测试题(附答案)

** 课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个 正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。A)’a’&&’b’ B)a<=b C)((a>b)||(b

【】 A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 计算机技术基础试题第2页(共11页)

相关文档
相关文档 最新文档