c语言试题1 4Word下载.docx

上传人:b****6 文档编号:17245359 上传时间:2022-11-29 格式:DOCX 页数:19 大小:19.85KB
下载 相关 举报
c语言试题1 4Word下载.docx_第1页
第1页 / 共19页
c语言试题1 4Word下载.docx_第2页
第2页 / 共19页
c语言试题1 4Word下载.docx_第3页
第3页 / 共19页
c语言试题1 4Word下载.docx_第4页
第4页 / 共19页
c语言试题1 4Word下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

c语言试题1 4Word下载.docx

《c语言试题1 4Word下载.docx》由会员分享,可在线阅读,更多相关《c语言试题1 4Word下载.docx(19页珍藏版)》请在冰豆网上搜索。

c语言试题1 4Word下载.docx

则++(*p)的值是【1】.

6

二、单项选择共15题(共计30分)

第1题(2.0分)题号:

201

当定义一个结构体变量时,系统分配给它的内存是()。

A:

各成员所需内存量的总和

B:

结构中第一个成员所需内存量

C:

结构中最后一个成员所需内存量

D:

成员中占内存量最大者所需的容量

A

第2题(2.0分)题号:

133

若有以下定义:

chars='

\092'

;

则该语句()。

使s的值包含1个字符

定义不合法,s的值不确定

使s的值包含4个字符

使s的值包含3个字符

B

第3题(2.0分)题号:

712

若有说明:

intn=2,*p=&

n,*q=p;

,则以下非法的赋值语句是()。

p=q;

*p=*q;

n=*q;

p=n;

D

第4题(2.0分)题号:

489

下列标识符中,不合法的C语言用户自定义标识符是()。

printf

enum

_

sin

第5题(2.0分)题号:

579

在C语言中,char型数据在内存中的存储形式是()。

补码

反码

原码

ASCII码

第6题(2.0分)题号:

138

以下程序的输出结果是()。

main()

{inti,j,k,a=3,b=2;

i=(--a==b++)?

--a:

++b;

j=a++;

k=b;

i=%d,j=%d,k=%d\n"

i,j,k);

i=2,j=1,k=3

i=1,j=1,k=2

i=4,j=2,k=4

i=1,j=1,k=3

第7题(2.0分)题号:

674

以下错误的描述是:

函数调用可以()。

出现在执行语句中

出现在一个表达式中

做为一个函数的实参

做为一个函数的形参

第8题(2.0分)题号:

659

凡是函数中未指定存储类别的局部变量,其隐含的存储类别为()。

自动(auto)

静态(static)

外部(extern)

寄存器(register)

第9题(2.0分)题号:

538

位字段数据的单位是()位。

十六进制

八进制

二进制

十进制

C

第10题(2.0分)题号:

498

下列运算符中是C语言关系运算符的是()。

~

!

=

第11题(2.0分)题号:

515

inti,j,a[2][3];

按照数组a的元素在内存的排列次序,不能将数

1,2,3,4,5,6存入a数组的是()。

for(i=0;

i<

2;

i++)for(j=0;

j<

3;

j++)a[i][j]=i*3+j+1;

j++)a[j][i]=j*3+i+1;

6;

i++)a[i/3][i%3]=i+1;

for(i=1;

=6;

i++)a[i][i]=i;

第12题(2.0分)题号:

717

fscanf函数的正确调用形式是()。

fscanf(fp,格式字符串,输出表列);

fscanf(格式字符串,输出表列,fp);

fscanf(格式字符串,文件指针,输出表列);

fscanf(文件指针,格式字符串,输入表列);

第13题(2.0分)题号:

511

求平方根函数的函数名为()。

cos

abs

pow

sqrt

第14题(2.0分)题号:

730

若以"

a+"

方式打开一个已存在的文件,则以下叙述正确的是()。

文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作

文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作

文件打开时,原有文件内容被删除,只可作写操作

以上各种说法皆不正确

第15题(2.0分)题号:

638

设有数组定义:

chararray[]="

China"

则数组array所占的

空间为()。

4个字节

5个字节

6个字节

7个字节

三、程序填空共5题(共计30分)

第1题(6.0分)题号:

479

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

功能:

十个小孩围成一圈分糖果,老师分给第一个小孩10块,第二

个小孩2块,第三个小孩8块,第四个小孩22块,第五个

小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩

6块,第九个小孩14块,第十个小孩20块。

然后所有的小孩

同时将自己手中的糖分一半给左边的小孩;

糖块数为奇数的人

可向老师要一块。

问经过这样几次调整后大家手中的糖的块数

都一样?

每人各有多少块糖?

-------------------------------------------------------*/

#include<

stdio.h>

{

inti,count=0,a[11]={0,10,2,8,22,16,4,10,6,14,20};

/***********SPACE***********/

while(【?

】)

{

for(i=1;

i<

=10;

i++)

a[i-1]=a[i-1]/2+a[i]/2;

a[10]=a[10]/2+a[0];

if(【?

】)a[i]++;

10;

if(a[i]!

=a[i+1])【?

】;

if(i==10)

break;

else

{

a[0]=0;

count++;

}

printf("

count=%dnumber=%d\n"

count,a[1]);

=======(答案2)=======

a[i]%2==1

=======(答案3)=======

break

第2题(6.0分)题号:

488

功能:

有一组基数值(正整数),输入一个正整数(小于100),

问:

如果该数由基数值相加构成(每个基数可以重复使用)

,那么最少可能利用的基数是多少个。

-------------------------------------------------------*/

stdlib.h>

#defineMAXSiZE100

/*#definemin(a,b)((a)<

=(b)?

(a):

(b))*/

voidmain(void)

{

intnum[MAXSiZE+1];

intbase[]={1,3,4};

intk=sizeof(base)/sizeof(int);

intn;

inti,j,MIN;

charline[100];

\n============================"

);

\n\nBaseValues:

"

for(i=0;

i<

k;

%d"

base[i]);

\n\nYourinputplease-->

gets(line);

n=atoi(line);

num[0]=0;

num[1]=1;

for(i=2;

=n;

i++)

【?

for(j=0;

j<

j++)

if(i>

=base[j])

MIN=min(num[i-base[j]]+1,MIN);

}

\n\nMinimum=%d"

【?

】);

MIN=n

num[i]=MIN

num[n]

第3题(6.0分)题号:

以下程序是用选择法对10个整数按升序排序。

/***********SPACE***********/

【?

inti,j,k,t,a[N];

for(i=0;

=N-1;

i++)

scanf("

%d"

&

a[i]);

N-1;

for(j=i+1;

j++)

if(a[j]<

a[k])k=j;

】)

t=a[i];

a[i]=a[k];

a[k]=t;

outputthesortedarray:

\n"

%5d"

a[i]);

#defineN10

k=i

N

=========或=========

N>

j

=N-1

N-1>

=j

=======(答案4)=======

k!

=i

第4题(6.0分)题号:

472

现有两组有序数组(增序),x[i]、y[j]代表数组x、y的

任一元素,问满足x[i]>

y[i]的元素对有多少个?

intdominance_count(intf[],intg[],intm,intn)

intindex_f,index_g;

intcount;

count=index_f=index_g=0;

while(index_f<

m&

index_g<

n)

if(f[index_f]<

=g[index_g])

index_f++;

else

index_g++;

count+=【?

intx[]={1,6,8};

intnx=sizeof(x)/sizeof(int);

inty[]={4,5,7};

intny=sizeof(y)/sizeof(int);

intdominance_count(int[],int[],int,int),i;

\nDominanceCountoftwoincreasingArrays\n"

\n#Array1Array2"

\n----------------"

nx;

\n%3d%10d%10d"

i,x[i],y[i]);

\n\nThereare%dDominancePairs."

m-index_f

returncount

dominance_count(x,y,nx,ny)

第5题(6.0分)题号:

404

从键盘上输入两个复数的实部与虚部,求出并输出它们的

和、差、积、商。

#include<

voidmain()

floata,b,c,d,e,f;

输入第一个复数的实部与虚部:

"

%f,%f"

a,&

b);

输入第二个复数的实部与虚部:

c,&

d);

f=b+d;

相加后复数:

实部:

%f,虚部:

%f\n"

e,f);

e=a*c-b*d;

相乘后复数:

e=(a*c+b*d)/(c*c+d*d);

相除后复数:

e=a+c

e=c+a

f=a*d+b*c

f=a*d+b*c

f=a*d+b*c

f=(b*c-a*d)/(c*c+d*d)

f=(b*c-a*d)/(c*c+d*d)

f=(b*c-a*d)/(c*c+d*d)

四、程序设计共2题(共计20分)

第1题(10.0分)题号:

365

/*------------------------------------------------

【程序设计】

--------------------------------------------------

求1到100之间的偶数之积。

------------------------------------------------*/

voidwwjt();

doublefun(intm)

/**********Program**********/

/**********End**********/

ji=%f\n"

fun(100));

wwjt();

voidwwjt()

FILE*IN,*OUT;

intiIN,i;

doubledOUT;

IN=fopen("

in.dat"

"

r"

if(IN==NULL)

PleaseVerifyTheCurrerntDir..itMayBeChanged"

OUT=fopen("

out.dat"

w"

if(OUT==NULL)

PleaseVerifyTheCurrentDir..itMayBeChanged"

5;

fscanf(IN,"

iIN);

dOUT=fun(iIN);

fprintf(OUT,"

dOUT);

fclose(IN);

fclose(OUT);

----------------------

doubley=1;

inti;

for(i=1;

=m;

if(i%2==0)y*=i;

returny;

第2题(10.0分)题号:

350

请编一个函数voidfun(inttt[M][N],intpp[N]),

tt指向一个M行N列的二维数组,求出二维数组每列

中最小元素,并依次放入pp所指一维数组中。

二维

数组中的数已在主函数中赋予。

conio.h>

#defineM3

#defineN4

voidfun(inttt[M][N],intpp[N])

intt[M][N]={{22,45,56,30},

{19,33,45,38},

{20,22,66,40}};

intp[N],i,j,k;

Theoriginaldatais:

M;

for(j=0;

N;

%6d"

t[i][j]);

fun(t,p);

\nTheresultis:

for(k=0;

k<

k++)printf("

%4d"

p[k]);

voidwwjt()

inti,j,array[3][4],p[4];

FILE*rf,*wf;

rf=fopen("

"

);

wf=fopen("

for(i=0;

3;

for(j=0;

4;

fscanf(rf,"

&

array[i][j]);

fun(array,p);

fprintf(wf,"

%7d"

p[j]);

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

当前位置:首页 > 经管营销 > 人力资源管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1