《C程序设计》模拟题1 联系客服

发布时间 : 星期三 文章《C程序设计》模拟题1更新完毕开始阅读f533c3c30740be1e650e9af1

一、 选择题(每题1分,共20分)

1- 5 6-10 11-15 16-20 1.以下叙述正确的是( )。

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

B) C程序每行中只能写一条语句

C) 在对C程序进行编译的过程中,可发现注释中的拼写错误 D) 在C程序中,main函数必须位于程序的最前面

2.下列标识符中不符合C语法规则的是( )。

A) a1 B) 1a C) _a1 D) a_1

3.若有int a=0,b=0; 则,执行语句“a&&(++b);”后,b的结果是( )。

A) 0 B) 1 C) 2 D) 3

4. 以下for循环的执行次数是( )。 for (x=0,y=0;(y=123)&&(x<4);x++);

A)是无限循环 B)循环次数不定 C)执行4次 D)执行3次

5. 以下程序段( )。 x=-1; do

{(x=x*x;}

while(!x);

A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误

6.设m=5, n=4, 则,执行语句“m=m%n;”后,m的值为( )。

A) 0 B) 1 C) 2 D) 3

1

7.C语言中,while 和do-while循环的主要区别是( )。

A) while循环控制条件比do-while循环控制条件严格 B) do-while循环体至少无条件执行一次 C) do-while允许从外部转到循环体内 D) do-while循环体不能是复合语句

8. 若用数组名作为函数调用的实参,则传递给形参的是( )。

A) 数组中全部元素的值 B) 数组的第一个元素的值 C) 数组的首地址 D) 数组元素的个数

9. 若有字符数组a[80]和b[80],则正确的输出形式是( )。

A) puts(a,b); B)printf(\C) putchar(a,b); D)puts(a); puts(b);

10. 若有定义:int a[][3]={1,2,3,4,5,6,7};,则数组a第一维的大小是( )。

A) 2 B) 3 C) 4 D)无确定值

11. 下面程序段的运行结果是( )。

char a[]=\ p=a;

while(*p!=‘u’) { printf(\

A) LANGUAGE B) language C) LANG D) langUAGE

…………………………线………………..………………………….… 学号: 12.以下程序调用scanf函数为变量x输入数据的方法是错误的,其错误

原因是( )。 void main() {float *p,x;

p=&x;

scanf(\在最后一条语句中,

A) *p表示的是变量a的值,而不是变量a的地址 B) *p表示的是指针变量p的地址

2

C) *p表示的是指针变量p的值

D) *p只能用来说明p是一个指针变量

13.若有定义:int a[10];,则对数组元素的正确引用是( )。 A) a[10] B) a[3.5] C) a(5) D)a[10-10]

14.若有定义:char a[]=\

则以下叙述正确的是( )。

A) 数组a和b的长度相同 B) a数组长度小于b数组长度 C) a数组长度大于b数组长度 D) 上述说法都不对

15. 下面不正确的字符串常量是( )。

A) \’12\ B) \abc’ D) \

16.若有以下定义和语句,则输出结果是( )。 char c1='b',c2='e';

printf(\

A) 2,M B) 3,E

C) 2,E D) 输出项与对应的格式控制不一致,输出结果不确定

17.定义一个结构体变量时,系统分配给它的存储空间是( )。

A) 该结构体中占用最大存储空间的成员所需存储空间 B) 该结构体中所有成员所需存储空间的总和 C) 该结构体中第一个成员所需存储空间

D) 该结构体中最后一个成员所需存储空间

18.以下程序段中与语句n=a>b?1:0;功能等价的是( )。

A) if(a>b) n=1; B) if(a>b) n=1;else n=0;

C) if(a>b) a=1;else b=0; D) 语法错误

19.若有定义:int a[10],*p=a;并在以后语句中未改变p的值,则

不能表示a[1]元素地址的表达式是( )。 A) a++ B) p++ C)a+1 D)p+1

3

20.以下程序的输出结果是( )。 void main()

{int i,a[3][3]={1,2,3,4,5,6,7,8,9},*p=&a[1][0]; for(i=0;i<3;i++)

printf(\

A) 1 2 3 B) 4 5 6 C) 7 8 9 D) 1 5 9

二、读程序,写出运行结果(每小题5分,共50分)1.程序的执行结果是:

#include int main() {int n;

for(n=1; n<=10; n++) {if (n%2) continue; if(n%6== 0) break; printf(\return 0; }

2. 程序的执行结果是:

int main()

{ int i,j, m, n; i=1; j=2; …m=i++; n=--j;

.…printf(\……return 0; ……}

…3.程序的执行结果是:

……#define N 15

……void fun(int b[],int n,int m) ..…{int i,j;

…… for(i=m;i>=n;i--) … b[i+1]=b[i]; ……}

线…int main()

……{ int i,a[N]={1,2,3,4,5,6,7,8,9,10};

………… 4

………