C语言模拟试题.docx

上传人:b****2 文档编号:2774905 上传时间:2023-05-04 格式:DOCX 页数:16 大小:21.59KB
下载 相关 举报
C语言模拟试题.docx_第1页
第1页 / 共16页
C语言模拟试题.docx_第2页
第2页 / 共16页
C语言模拟试题.docx_第3页
第3页 / 共16页
C语言模拟试题.docx_第4页
第4页 / 共16页
C语言模拟试题.docx_第5页
第5页 / 共16页
C语言模拟试题.docx_第6页
第6页 / 共16页
C语言模拟试题.docx_第7页
第7页 / 共16页
C语言模拟试题.docx_第8页
第8页 / 共16页
C语言模拟试题.docx_第9页
第9页 / 共16页
C语言模拟试题.docx_第10页
第10页 / 共16页
C语言模拟试题.docx_第11页
第11页 / 共16页
C语言模拟试题.docx_第12页
第12页 / 共16页
C语言模拟试题.docx_第13页
第13页 / 共16页
C语言模拟试题.docx_第14页
第14页 / 共16页
C语言模拟试题.docx_第15页
第15页 / 共16页
C语言模拟试题.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言模拟试题.docx

《C语言模拟试题.docx》由会员分享,可在线阅读,更多相关《C语言模拟试题.docx(16页珍藏版)》请在冰点文库上搜索。

C语言模拟试题.docx

C语言模拟试题

模拟试题一

一、选择题(每题1分共15分)

1.设x,y为float型变量,则下列()为不合适的赋值语句

A++x;By=(float)3;

Cx=y=0;Dx*=y+8;

2.若x为int变量,则执行下列语句x的值为()

x=65535;

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

A65535B1

C无定值D-1

3.下面()不正确的转义符()

A‘\t’B‘\a’

C‘\081’D‘\n’

4.在C语言中,char类数据在内存中是以()形式存储的

A原码B反码

C补码DASCII码

5.以下变量名()是合法的。

AbreakB$123

Clotus_2_3D

6.判断char型变量c1是否为小写字符的最简单且正确的表达式()。

A‘a’<=c1<=’z‘B(c1<=a)&&(c1<=z)

C(‘a’<=c1)&&(‘z’>=c1)D(c1>=’a’)&&(c1<=’z’)

7.在C语言中,int,char,float所占用的内存。

A均为2个字节B由用户自己定义CPC机为2,1,4D2,2,4

8..若有说明intx,y,下面程序()不能实现以下函数关系

y=

-1

x<0

0

x=0

1

x>0

Aif(x<0)y=-1;elseif(x==0)y=0;elsey=1;

By=-1;if(x!

=0)if(x>0)y=1;elsey=0;

Cy=0;if(x>=0){if(x>0)y=1;}elsey=-1;

Dif(x>=0)if(x>0)y=1;elsey=0;elsey=-1;

9.while(!

x)中(!

x)与下面条件()等价

Ax==0Bx==1

Cx!

=1Dx!

=0

10.以下不是无限循环的语句为()。

Afor(y=0,x=1;x>=++y;x++);

Bfor(;;x++);

Cwhile

(1){x++;}

Dfor(i=10;;i--)sum+=i;

11.若有以下语句,则下面()是正确的描述。

Charx[]=”12345”;

Chary[]={‘1’,’2’,’3’,’4’,’5’};

Ax,y完全相同。

Bx,y不相同。

Cx数组长度小于y数组长度。

Dx,y字符串长度相等。

12.为了判断两个字符串s1和s2是否相等,应当使用()。

Aif(s1==s2)Bif(s1=s2)

Cif(strcpy(s1,s2))Dif(strcmp(s1,s2)==0)

13.C程序中函数返回值的类型是由()决定。

Areturn语句中的表达式类型。

B调用该函数的主调函数类型。

C调用函数时临时决定。

D定义函数时所指定的函数类型。

14若intt,a=5,b=6,w=1,x=2,y=3,z=4,则经过t=(a=w>x)&&(b=y>z)计算后变量t,a,b的值分别为()

A0,0,0B0,0,6

C1,0,0D1,0,6

15如果变量grade的值为1,则运行下列程序段后输出结果为()

switch(grade)

{case1:

printf(“a\n”);

case2:

printf(“b\n”);

case3:

printf(“c\n”);

}

AaBa

b

c

CabcDab

二.写出下列程序的运行结果(每题3分,共15分)

1.main()

{

inti,j,k;

charspace=’‘;

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

{

for(j=i;j<=i;j++)

printf(“%c”,space);

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

printf(“%c”,’*’);

printf(“\n”);

}

}

2.main()

{

intn=0;

while(n++<=2)

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

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

}

3.main()

{

inta[3][3]={1,2,3,4,5,6,7,8,9};

inti,j,t;

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

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

{t=a[i][j];

a[i][j]=a[j][i];

a[j][i]=t;}

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

{for(j=0;j<3;j++)

printf(“%4d”,a[i][j]);

printf(“\n”);

}

}

4.#include“string.h”

main()

{

charstring1[20]=”abcd”;

charstring2[]=”\\cd\t”;

strcat(string1,string2);

printf(“%d”,strlen(string1));

}

5.main()

{

intcount,sum,x;

count=sum=0;

do{scanf(“%d”,&x);

if(x%2!

=0)continue;

count++;sum+=x;

}while(count<5);

printf(“sum=%d”,sum);

}

假设输入的数据为:

36-291011812

}

三编程(共70分)

1.编写一个程序,输入一个字符串,按反序存放后再输出该字符串。

(10分)

2.写一个程序,能分别统计出从键盘上输入的字符串中小写字符的个数、数字字符的个数和其他字符的个数。

输入的字符串以“!

”作为结束标记。

(10分)

3.编写一个求4个数中的最大数(要求用函数实现求最大数)。

(10分)

4.青年歌手参加歌曲大奖赛,有5个评委对她的进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。

(13分)

5.编程求3~100之间所有的素数及其个数。

(12分)

6.已知在一个ASCII“stud.dat”中,有10个学生的记录,每条记录有4项数据,第1项为学号(int型),第2、3、4项为成绩(float型),编写一个程序从该文件中将这些学生的数据读出来,计算每个人的平均成绩,然后在将原有数据和计算出的平均成绩写到另外一个ASCII“aver.dat”中。

(15分)

模拟试题二

一、选择题(每题2分共26分)

1.以下几个语句执行后i,j,k的值分别为()

inti,j,k;

i=j=0;

k=1;

if(i>j?

(j--):

(i--))k++;

A1,9,1B1,0,2

C-1,0,1D0,0,2

2.inti=0,j=0;

inta=2,b=4,c=5,d=6;

表达式(i=a-b)&&(j=c-d)的结果是()

A1B0

C-2D-1

3.若给定条件表达式(m)?

(a++):

(a--),则表达式m()

A等价于(m==0)B等价于(m==1)

C等价于(m!

=0)D等价于(m!

=1)

4下列程序运行结束后,n的值为()

n=2;

do{n=n+n;

n--;

}while(n<20);

A21B22

C33D24

5.已知数组a[3][4],若给a[1][2]赋值5,下列操作正确的是()

Aa=5B*a[1]=5

Ca[2]={0,5,3,4}D*(a[1]+2)=5

6.文件包含的含义是指()

A定义常量B定义变量

C引入已说明的函数D引入标准函数

7.以下变量命名合法的是()

AM.johnB$123

Clotus1_2_3D

8.下面关于”A”的说法正确的是()

A它代表一个字符常量B它代表一个字符串常量

C它代表一个字符aD它代表一个变量

9.以下语句执行后变量c的结果是()

inta=7,b=2;

floatc;

c=a/b;

A3.5B3

C3.0D1

10.设定如下变量,则表达式5+’b’+i*f-d/e-‘a’的结果是()

inti;

floatf;

doubled;

longinte;

A浮点型B长整型

C整型D双精型

11.以下不正确的定义语句是()

Adoublex[5]={2.0,4.0,6.0,8.0,9.0};

Binty=[5]={0,1,3,5,7,9};

Ccharc1[]={‘1’,’2’,’3’,’4’,’5’};

Dcharc2[]={‘\x10’,’\x1’,’\x8’};

12.指出哪一个不是C语言的赋值语句()

Ainta=1,b=3;Bi++;

Ca=b=5;Dy=int(i);

13.以下哪一个是无限循环的语句为()。

Afor(y=0,x=0;x>=++y;x++);

Bfor(x=1;;x++);

Ci=15;while(x>10){x--;}

Dfor(i=10;i>5;i--)sum+=i;

二.写出下列程序的运行结果(每题3分,共15分)

1.#include“stdio.h”

main()

{

inti;

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

{if(i%2)printf(“*”);

elsecontinue;

printf(“#”);

}

printf(“$\n”);

}

2.main()

{

inti;

voidfunction(void);

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

function();

}

voidfunction(void)

{

inti=1,j=1;

staticintk=1;

i++;j++;k++;

printf(“%d,%d,%d”,i,j,k);

}

3.floatx=1.0,y=2.0,z;

main()

{

doublefun(void);

z=fun();

printf(“%f,%f,%f\n”,x,y,z);

}

doublefun(void)

{

inty,z;

x=y=z=3.0;

return(x+y+z);

}

4.main()

{

inti=1,k=0;

while(i--)k=k+k;

printf(“k=%d\n”,k);

}

5.main()

{

inti,sum;

i=1;

for(sum=1;i<=5;i++,sum--)

sum*=sum;

printf(“%d”,sum);

}

三编程(共59分)

1.设有一个字符串“Thisisacomputer”,请编程求字符“i”首次出现的位置。

(8分)

2.试编程求3*3二维数组中最大元素及其所在的行、列位置。

(12分)

3.编写程序,计算并输出下面级数在求和过程中第一次出现和数大于999时的奇数项部分和OS2。

(其中^表示幂运算)

1*2-2*3+3*4-4*5+……+(-1)^(n-1)*n*(n+1)+……(13分)

4.有一张由9个学生每人8个数据组成的二维数据表。

编写程序,要求将学生的总成绩按降序(由大到小)排列,计算并输出总分第二名学生的平均成绩。

(13分)

姓名学号年龄政治语文数学计算机体育总分

李明1198189999887

张力2168990958090

王英3179177889578

赵锐4187984959396

周密5159592989993

吴川6177888858680

孙康7149185948288

郑重8159092949095

胡琴9167585879490

5.已知在正文文件da1.dat中,每个记录只有两项数据,第一项为一整数表示学生的学号,第二项为形如xx.x的一个实数,试统计计算并向文件t2.dat输出60分以上(含60分)的人数占总人数的比例R。

(13分)

模拟试题三

一选择题(每题2分共20分)

1.下面关于”A”的说法正确的是()

A一个字符常量B一个字符串常量

C一个字符aD一个字符变量

2.使用字符串函数时,必须将()头文件包含在主程序中

A“stdio.h”B”string.h”

C“math.h”D”stdlib.h”

3.下面关于‘\\’的说法不正确的是()

A转义字符B起换行作用

C能用于输出语句D也能用于打印机

4.C程序是由()构成

A数据文件B文本文件

C函数D主函数和其他函数

5.下列关于函数的说法哪些是错误的()

A可以单独执行

B可以嵌套调用

C可以定义在主函数之前或之后

D数组可以作为函数的参数

6.一般情况下,C语言是以()表示运算结果为逻辑真。

AFBT

C1D0

7.以下变量名()是合法的。

AcontinueB$123

Clotus_2_3D

8.一个C语言程序总是从()开始执行的。

A主过程B主函数

C子函数D按书写顺序

9.PC机中,C语言的int,char,float所占用的内存为()字节。

A1,2,4B2,2,2

C2,1,4D2,2,4

10.若k为float型,则下列程序执行结果为()

k=2.0;

while(k!

=0)

{printf(“%d”,k);

k--;}

printf(“\n”);

A无限多次B0次

C1次D2次

二按题目要求填空完善下列程序(每题6分,共24分)

1.按逆序输出一个字符串

Voidreversr(str)

Charstr[];

{

intlen.i;

charc;

len=①;

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

{c=③;

str[i]=str[len-i-1];

④=c;

}

}

#include

main()

{

charstring[256];

gets(string);

reverse(string);

puts(string);

}

2.输出Fibonacci数列的前15项,要求每行输出5项。

#defineM15

main()

{

intfib[M];

inti,

fib[0]=1;fin[1]=1;

for(i=2;i

①=fib[i-2]+②;

for(i=0;i

{if(③)printf(“\n”);

④;

}

}

3.用起泡法对10个按升序排序

main()

{

inta[10]={2,4,1,6,-1,34,56,78,-23,20};

inti,j,k;

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

for(i=0;②;i++)

if(③)

{k=a[i];

④;

a[i+1]=k;

}

}

3.输出100-200间的所有素数及其个数

main()

{

intm,k,I,n=0

for(m=101;m<=200;m++)

{①

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

if(②)break;

if(③){printf(“%d“,m);n=n+1;}

}

printf(“%d”,n);

}

三编程(共56分)

1.编写程序,求下面级数前n项中偶数项的和ES。

在求和过程中,以第一个绝对值大于9999的项为末项,计算并输出和数ES。

(其中^表示幂运算)

1!

-2!

+3!

-4!

+……+(-1)^(n-1)*n!

+……(10分)

2.设计一个程序,对于从键盘输入的年、月、日,计算并输出相应是星期几。

比如,1998年7月1日是星期三,要求输出形式为7—1—1998:

<3>。

(12分)

[提示]推算公式:

s=yy-1+(yy-1)/4-(yy-1)/100+(yy-1)/400+dd

w=s-7*(s/7)

其中yy是年份数,dd是yy年元旦到日期d的总天数,w是星期序数,w=0,1,2,…

3.编写程序:

有两个正整数a和b,已知a*b=2048,求a、b各为何值时,a+b的值最小。

(11分)

4.编写程序,找出一个4位数的完全平方数,该数减去1111后,结果仍是一个完全平方数。

(完全平方数是一个整数,它是另一个整数的平方。

例如25是5的平方,则25是一个完全平方数。

)(10分)

5.已知在正文文件test.txt中存放有120个记录,每个记录中只有一个数。

在文件中,从第一个数开始,每四个数为一组,第一个数为不同商场的代号(顺序号),其余三个数代表三类商品的营业额(万元)。

编写程序,统计计算并向文件t2.dat输出各商场的总营业额

(13分)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2