1下面说法正确的是

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择题

1下面说法正确的是()

A在C语言中,main函数必须位于文件的开头

B C语言每一行只能写一条语句

C C语言本身没有输入输出语句

D 对于一个C语言进行编译预处理时,可检查宏定义的语法错误

2 下列字符序列中,不可用作C语言标示符的是()

A abc123

B no.1

C -123-

D -ok

3 下面程序的运行结果是()

char*s=“abcde”

s+=2;printf(“%d”,s);

A cde

B 字符‘c’

C 字符c的地址D不确定

4 C语言中合法的字符常量是()

A ‘\\’

B “Hello!”

C …Hello‟

D a

5 putchar函数可以向终端输出一个()

A 整行变量表达式值

B 字符串

C 实行变量值

D 字符或字符行变量值

6若有说明语句:char s=…\72‟;则变量s()

A 包括一个字符

B包括两个字符

C 包括三个字符

D 说明不合法,s的值不确定

7 当执行以下程序段时()

x=1

do

{x=x*x;}

While (!x);

A 循环执行一次

B 循环执行两次

C 循环执行无数次

D 系统将提示语法有错误

8 选择出合法的if语句(设int x,a,b,c;)( )

A if(a=b)c++

B if(a=

C if(a<>b)c++

D if(a=>b)c++

9 以下叙述正确的是()

A do-while语句构成的循环不能用其他语句构成的循环来代替

B do-while语句构成的循环只能用break语句退出

C do-while语句构成的循环,在while后的表达式为非零时结束循环

D do-while语句构成的循环,在while后的表达式为零时结束循环

10 执行语句for(i=10;i>0;i--);后,变量i的值为( )

A 10

B 9

C 0

D 1

11 下列各语句定义了数组,其中不正确的一个是()

A static int a[5],b[2][3];

B char no[30],rec[30,6]

C int x[ ]={2,4,6,8,10};

D int x[10]={1,2,3,4,5};

12 若有以下定义,则不正确的赋值语句是()

int x,y;

float z ;

A x=1,y=2

B x=y=100

Cx++; D x=int (z);

13数组定义为int a[4][5]; 下列哪一个引用是错误的()

A *a

B *(*(a+2)+3)

C &a[2][3]

D ++a

14 下列运算符中优先级最高的是()

A <

B && C+ D!=

15 C语言的一个源程序中定义外部变量(全局变量)的作用域为()

A 本文件的全部范围

B 本程序的全部范围

C 本函数的全部范围

D从定义该变量的位置开始至本文件结束

16 已知int a=1,b=2,c=3; 以下语句执行后a,b,c 的值是

18 设有如下定义int (*ptr) (); 则以下叙述正确的是()

A ptr是指向一维数组的指针变量

B ptr是指向int型数据指针变量

C ptr是指向是指向函数的指针,该函数返回一个int型数据

D ptr是一个函数名,该函数的返回值是指向int 型数据的指针

19 若已定义int a=5; 对以下1,2两个语句的正确解释是()

1 int *p=&a;

2 *p=a

A 语句1和2的执行结果都是把变量a的地址给指针变量p

B 语句1是在对p进行定义的同时,使进行初始化,使p指向a语句2是将变量a的值赋给指针变量p

C 语句1是在对p定义的同时,使p指向a;语句2是将变量a的值赋给指针变量所指的变量

D 以上说法均不对

20 若有定义语句“int x,*px=&x,**ppx=&px;” ,则下列说法中错误的是()

A x=*px

B x=**ppx Cpx=*ppx Dppx=&x

21 设有以下宏定义

#define N 3

#define Y(n) ((N+1)*n)

则执行语句:z=2*(N+Y(5+1));后,z的值为()

A 出错

B 42

C 48

D 54

填空题

1,设有变量说明语句

int x=1,y=2;

则执行下述printf语句的输出结果是()printf(“%.1f\n”,1.0+x/y); 2,从变量的作用域来分,可将变量分为()和()

3,若执行printf(“%d\n”,strlen(“a\n\”\x41))语句其输出结果是()

4定义int x,y; 执行y=(x=1,++x,x+2);后,y的值是()

程序阅读题

1 当输入19,2,21 时下列程序运行的结果是()

main()

{int a,b,c,max;

printf(“please scan three number a,b,c;\n);

scanf(“%d,%d,%d,&a,&b,%c);

max=a;

if(max

if(max

printf(“max is:%d”,max);

}

2 以下程序的输出结果是

int a=7,b=10;

max(int a,int b)

{return(a>b?,a:b);}

main()

{

int a=15;

printf(“%d”,max(a,b));

}

3 若从键盘输入58,则输出结果是

#include“stdio.h”

main()

{

int a;

scanf(“%d”,&a)

if(a>50) printf(“%d”,a);

if(a>40) printf(“%d”,a);

if(a>30) printf(“%d”,a);

}

4 写出下面程序的运行结果()

main()

相关文档
最新文档