您好,欢迎来到好走旅游网。
搜索
您的当前位置:首页C语言模拟试题

C语言模拟试题

来源:好走旅游网
一、 选择题(每小题2分,共30分)

1.在程序中可以用来作为变量名的合法的标识符是:________。 A、int B、stu_1t C、2a1 D、#55 2.以下叙述正确的是 。

A、在C程序中main函数必须位于程序的最前面 B、一个C程序只能有一个函数

C、一个C程序有并且只能有一个main函数

D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误 3.已知:char str1, str2[10]; 选择正确的输入语句 :________。 A、scanf (\"%s%c\ B、scanf (\"%s%s\ C、scanf (\"%c%c\ D、scanf (\"%c%s\4.判断char型变量CH是否为小写字母的正确表达式 。 A、‟a‟<=CH<=‟z‟ B、(CH>=‟a‟)&(CH<=‟z‟) C、(CH>=‟a‟)&&(CH<=‟z‟) D、(„a‟<=CH)AND(„z‟>=CH)

5.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值分别是 。

if(x>y)

z=x; x=y; y=z;

A、x=10,y=20,z=30 B、x=20,y=30,z=30 C、x=20,y=30,z=10 D、x=20,y=30,z=20 6.设有程序段 int k = 10 ;

while ( k = 0 ) k = k - 1 ; 以下描述正确的是 。 A、循环体语句一次也不执行。

B、循环是无限循环。

C、while 循环语句执行十次。 D、循环体语句执行一次。

7.以下程序段中与语句k=a>b?1:0;功能等价的是 。 A、if (a>b) k=1; B、if (a>b) k=0;

C、k=0; if (a>b) k=1; D、k=1; if(a>b) k=0; 8. 如果int a=5,b=8则a>b?(a+b):(b-a)的值为( d ) A、5 B、8 C、13 D、3

9. 已知 int b; 则对指针变量正确的说明和初始化是:______ A、int *pb=b; B、int pb=&b; C、int *pb=&b; D、int pb=b;

10.C语言中while和do_while循环的主要区别是 。

A、 do_while的循环至少无条件执行一次

B、 while的循环控制条件比do_while的控制条件严格 C、 do_while允许从外部转到循环体内 D、 do_while的循环体不能是复合语句 11.下列各语句定义了数组,其中哪一个是不正确的( )。 A、char a[2][10]={\"China\ B、int x[2][2]={1,2,3,4}; C、float x[2][]={1,2,4,6,8,10}; D、int m[][3]={1,2,3,4,5,6}; 12.对于以下程序段,运行后i的值为

第 1 页 共 5 页

int i=0,a=2; switch(a) {

case 1: i+=1; break; case 2: i+=2; case 3: i+=3; }

A、2 B、3 C、5 D、6 13. 以下对一维整型数组a的正确说明是 。 A、int a (10) B、int n = 10; a[n ]; C、int n; D、# define SIZE 10 scanf (\"%d\ int a [SIZE]; int a [n];

14.自定义函数中形式参数的作用域是 。

A、本文件 B、本函数 C、main 函数 D、整个程序 15.下面函数定义正确的是__________。

A、double fun(double u,v) B、double fun(double u;double v) {return u+v;} {return u+v;}

C、double fun(float u,float v) D、double fun( u,v)

{return u+v;} { float u,v ;return u+v;}

二、填空题(每空2分,共20分)

1. 一个源程序文件由一个或多个函数组成,C程序的执行从__________函数开始。 2. int i=5, j, k; j=i--; k=i; 则 k的值为__________。

3. 若有代数式x2÷(3x-5y), 则正确的C语言表达式为: ____________________。

4. 设a和b均为double型常量,且a=5.5,b=2,则表达式(int)(a+b)/b的值是 。

5.字符串 \"Hello\" 占用内存_________字节。

6.若已定义 int a[]={5,6,7,8},*p=a; 则*(p+3)的值是 。

7.设a=3,b=4,c=5,则逻辑表达式a+b>c&&b==c的值是___________,a||b+c&&b-c的值是___________。

8.判断整型变量a为奇数的逻辑表达式为 。

三、阅读程序题(每小题3分,共15分) 1.写出以下程序的运行结果。 #include main() { int i=1;

while(i<=12)

{ if ((i%3)) printf(\"%d,\i++; } }

2.写出以下程序的运行结果。 #include

第 2 页 共 5 页

main( )

{ int x=25, y=15;

if( x>y) swap(&x, &y); printf(\"%d\}

swap(int *p1, int *p2) { int temp; temp=*p1; *p1=*p2; *p2=temp; }

3.写出以下程序的运行结果。 #include main( )

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

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

for(j=0;j<=i;j++) s+=a[i][j] printf(“%d\\n”,s); }

4.写出以下程序的运行结果。

#include main()

{ char a[]=“fprogram”,b[]=”fortran”; char *p,*q; p=a; q=b;

while(*p!=‟\\0‟&&*q!=‟\\0‟) { if(*p==*q)

printf(“%c ”,*q);

p++; q++; } }

四、程序填空题(每空2分,共10分)

1.以下函数返回a所指数组中最小的值所在的下标值,请填空。 fun(int *a, int n) { int i,j=0,p;

p=j;

for(i=j;iif(a[i]2.以下程序让用户输入一个整数n,求n!的值,请填空。 #include void main() {

第 3 页 共 5 页

int n,s,i;

s=______; /*第一空*/

printf(\"please input n:\"); scanf(\"%d\ for(i=1;i<=n;i++) {

________________; /*第二空*/ }

printf(\"n!=%d\}

3.以下程序将s2字符串连接到s1后,请填空。 #include void main() {

char s1[30],s2[10]; int i=0,j=0;

printf(\"\\nplease input s1:\"); scanf(\"%s\

printf(\"\\nplease input s2:\"); scanf(\"%s\ while(s1[i]!='\\0') {

i++; }

while(s2[j]!='\\0') {

________________; /*第一空*/ i++; j++; }

________________; /*第二空*/ printf(\"\\ns1:%s\}

五、编程题

1. 输入三个整数,输出其中最大的数。 2. 求3*3矩阵的主对角线元素之和。

3. 编程计算下列表达式:s=1!+2!+3!+4!+……+10!

4. 将数组a中n(n=10)个整数按相反顺序存放,将a[0]与a[n-1]对换,……将a[4]与a[5]

对换。

5. 写一个fun函数用于一个判断整数是否为素数的函数,并使用该函数求1000以内的素数。 6. 编写函数,用冒泡排序对输入的10个字符按照由小到大的顺序排列。 7. 输入3个数a,b,c,要求按由小到大的顺序输出。

第 4 页 共 5 页

8. 用嵌套循环输出以下图形

* ** *** **** *****

第 5 页 共 5 页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- haog.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务