自考“C语言程序设计”模拟试题一

一、填空题

自考“C语言程序设计”模拟试题、填空题自考“C语言程序设计”模拟试题、填空题


自考“C语言程序设计”模拟试题、填空题


1、C语言中基本的数据类型有:______、______ 、______ .

2、C语言中普通整型变量的类型说明符为______,在内存中占______字节,有符号普通整型的数据范围是______ .

3、整数-35在机内的补码表示为______.

4、执行下列语句int a=8; a+=a-=aa; 后,a的值是______.

5、有如下语句:char A[ ]={“I am a student”}; 该字符串的长度是______,A[3]=______.

6、符号“a”和‘a’的区别是______.

7、所谓“指针”就是______.“&”运算符的作用是______.“”运算符的作用是______.

8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是______.

二、选择题

1、设整型变量a为5,使b不为2的表达式是( )。

A. b=a/2 B. b=6-(——a) C. b=a%2 D. b=a>3?2:1

2、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( )组成配对关系。

A. 缩排位置相同的if B. 在其之前未配对的if

C. 在其之前未配对的近的if D.同一行上的if

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

int x=10,y=10;

printf(“%d %dn”,x——,——y);

A. 10 10 B. 9 9 C. 9 10 D. 10 9

4、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为( )。

A.P+i2 B. P+(i-1)2 C. P+(i-1) D. P+i

5、选出下列标识符中不是合法的标识符的是( )。

A. hot_do B. cat1 C. _pri D. 2ab

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

int a=5;

float x=3.14;

a=x(‘E’ - ‘A’);

printf(“%fn”,(float)a);

A. 62.000000 B. 62.800000 C. 63.000000 D. 62

7、设有说明double(p1)[N];其中标识符p1是( )。

A. N个指向double型变量的指针。

B. 指向N个double型变量的函数指针。

C. 一个指向由N个double型元素组成的一维数组的指针。

D.具有N个指针元素的一维指针数组,每个元素都只能指向double型量。

8、在C程序中有如下语句:char func(int x,int y);它是( )。

A. 对函数func的定义。 B. 对函数func的调用。

C.对函数func的原型说明。 D. 不合法的。

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

char str[15]=“hello!”;

printf(“%dn”,strlen(str));

A. 15 B. 14 C. 7 D. 6

10、分析以下程序的输出结果是( )。

main()

{int a=5,b=-1,c;

c=adds(a,b);

printf(“%d”,c);

c=adds(a,b);

printf(“%dn”,c); }

int adds(int x,int y)

{static int m=0,n=3;

n=++m;

m=n%x+y++;

return(m); }

A. 2,3 B. 2,2 C. 3,2 D. 2,4

11、下列描述中不正确的是( )。

A. 字符型数组中可能存放字符串。

B. 可以对字符型数组进行整体输入、输出。

C. 可以对整型数组进行整体输入、输出。

D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。

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

#define f(x) xx

main()

{int a=6,b=2,c;

c=f(a)/f(b);

printf(“%dn”,c);

}A. 9 B. 6 C. 36 D. 18

13、设有如下定义: int x=10,y=3,z;

则语句printf(“%dn”,z=(x%y,x/y)); 的输出结果是( )。

A. 1 B. 0 C. 4 D. 3

14、定义如下变量和数组:int i;int x[3][3]={1,2,3,4,5,6,7,8,9};

则语句for(i=0;i<3;i++) printf(“%d ”,x[i][2-i]); 的输出结果是( )。

A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9

15、以下对二维数组a进行正确初始化的是( )

A. int a[2][3]={{1,2},{3,4},{5,6}}; B. int a[ ][3]={1,2,3,4,5,6};

C. int a[2][ ]={1,2,3,4,5,6}; D. int a[2][ ]={{1,2},{3,4}};

16、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是( )。

int x;

scanf(“%d”,&x);

if(x++>5) printf(“%d”,x);

else printf(“%dn”,x - -);

A. 7和5 B. 6和3 C. 7和4 D. 6和4

17、设有如下定义: char aa[2]={“abcd”,“ABCD”}; 则以下说法中正确的是( )。

A)aa数组成元素的值分别是“abcd”和ABCD“

B)aa是指针变量,它指向含有两个数组元素的字符型一维数组

C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址

D)aa数组的两个元素中各自存放了字符‘a’和‘A’的地址

18、下列程序的输出结果是( )。

char p1=“abcd”, p2=“ABCD”, str[50]=“xyz”;

strcpy(str+2,strcat(p1+2,p2+1));

printf(“%s”,str);

A. xyabcAB B. abcABz C. ABabcz D. xycdBCD

19、下列程序的输出结果是( )。

int a[5]={2,4,6,8,10},P, k;

p=a; k=&p;

printf(“%d”,(p++));

printf(“%dn”, k);

A. 4 4 B. 2 2 C. 2 4 D. 4 6

20、不能把字符串:Hello!赋给数组b的语句是( )。

A. char b[10]={‘H’,‘e’,‘l’,‘l’,‘o’,‘!’};

B. char b[10]; b=“Hello!”;

C. char b[10]; strcpy(b,“Hello!”);

D. char b[10]=“Hello!”;

三、读程序题

1、float f=3.1415927;

printf(“%f,%5.4f,%3.3f”,f,f,f);

则程序的输出结果是 .

2、int x=6, y=7;

printf(“%d,”,x++);

printf(“%dn”,++y);

程序的输出结果是 .

3、a=3;

a+=(a<1)?a:1;

printf(“%d”,a);

结果是.

4、for (a=1,b=1;a<=100;a++)

{ if(b>=20) break;

if(b%3==1)

{b+=3; continue;}

b-=5; }

程序的输出结果a的值为 .

5、int y=1, x, p, a[ ]={2,4,6,8,10};

p=&a[1];

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

y + = (p + x);

printf(“%dn”,y);

程序的输出结果y的值是 .

四、程序填空题

1、从键盘上输入10个数,求其平均值。

main()

{int i;

float f,sum;

for(i=1,sum=0.0;i<11;i++)

{ ;

; }

printf(“erage=%fn”,sum/10); }

2、以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件。

#include

main()

{ FILE fp;

char c;

fp= ;

do{

c=getchar();

fputs(c,fp);

}while(c!=EOF);

}3、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出成绩和成绩,当输入负数时结束输入。请填空。

main()

{ float x,amax,amin;

scanf(“%f”,&x);

amax=x; amin=x;

while( )

{ if(x>amax) amax=x;

if( ) amin=x;

scanf(“%f”,&x); }

printf(“namax=%fnamin=%fn”,amax,amin); }

五、编程题

1. 三个整数a、b、c,由键盘输入,输出其中的一个数。

2.输出1900~2000年中所有的闰年。每输出3个年号换一行。(判断闰年的条件为下面二者之一:能被4整除,但不能被100整除。或者能被400整除。)

3.请编一个函数int fun(int a),它的功能是:判断a是否是素数,若a是素数,返回1;若不是素数,返回0.A的值由主函数从键盘读入。

4.有N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N个学生的信息,要求输出总平均成绩的学生信息,包括学号、性别、姓名和平均成绩。

c语言程序设计试题输入一 个整数,打印出它是奇数还是偶数

#include "stdio.h"

int main()

{int a;

printf("Please input:n");

scanf("%d",&a);

if(a%2)

{printf("%d是奇数",a);

}else

printf("%d是偶数",a);

return 0;

}

#include"stdio.h"

void main()

{int a;

printf("请输入一个整数:");

scanf("%d",&a);

if(a%2==0) printf("%d是一个偶数",a);

if(a%2==1) printf("%d是一个奇数",a);

}

main()

{int a;

scanf("d%",a)

if(a%2==0)

printf("a是偶数");

else

printf("a是奇数");

}好好看看书吧

#include

main()

{int n;

scanf("%d",&n);

if(n%2==0)

printf("%d偶数",n);

else

printf("%d奇数",n);

}

求:C语言程序设计试卷及一份

一、选择题(1~40题每题1分,41~50题每题2分,共60分)下列各题A、B、C、D四个选项中,只有一个选项是正确的。请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

1.计算机的运算器、及内存储器组合在一起,称之为()(本题分值:1分)

【正确】D

A.ALU

B.CPU

C.MPU

D.主机

2.下列存储器中,存取速度快的是()(本题分值:1分)

【正确】D

A.软盘

B.硬盘

C.光盘

D.内存

3.系统软件中重要的是()(本题分值:1分)

【正确】A

A.作系统

B.语言处理程序

C.工具软件

D.数据库管理系统

4、CPU处理的数据基本单位为字,一个字的字长()(本题分值:1分)

【正确】D

A.为8个二进制位

B.为16个二进制位

C.为32个二进制位

D.与CPU芯片的型号有关

5.打印当前屏幕内容应使用的控制键是()(本题分值:1分)

【正确】D

A.Scroll-Lock

B.Num-Lock

C.PgDn

D.PrtSc(Print Screen)

6.能将高级语言源程序转换成目标程序的是()(本题分值:1分)

【正确】C

A.调试程序

B.解释程序

C.编译程序

D.编辑程序

7.二进制数1110111.11转换成十进制数是()(本题分值:1分)

【正确】B

A.119.375

B.119.75

C.119.125

D.119.3

8.十六进制数FF.1转换成十进制数是()(本题分值:1分)

【正确】A

A.255.0625

B.255.125

C.127.0625

D.127.125

9.计算机网络设施是()(本题分值:1分)

【正确】A

A.NCFC

B.CERNET

C.ISDN

D.Internet

10.控制键^C的功能为()(本题分值:1分)

【正确】A

A.终止当前作

B.系统复位

C.暂停标准输出设备的输出

D.结束命令行

11.COMMAND.COM为命令处理程序,DOS系统启动后,它()(本题分值:1分)

【正确】B

A.驻留在外存,需要时装入内存

B.常驻内存,包含所有内部命令

C.不能处理外部命令

D.不能处理后缀为.EXE的可执行文件

12.为了将所有扩展名为.PAS的文件改成扩展名为.P,应使用命令()(本题分值:1分)

【正确】C

A.REN .PAS .?AS

B.REN PAS P

C.REN .PAS .P

D.REN .PAS .P??

13.设当前盘中文件XY.C的路径为ABXU,当前目录为AB。为了查看文件XY.C的内容,应使用命令()(本题分值:1分)

【正确】A

A.TYPE XUXY.C

B.TYPE XUXY.C

C.DIR XUXY.C

D.DIR ABXUXY.C

14.要将提示符改成当前盘当前目录后加一个大于号“>”,应使用命令()(本题分值:1分)

【正确】B

A.PROMPT

B.PROMPT $ p $ g

C.PROMPT $ $

D.PROMPT C>

15.在多媒体计算机系统中,CD-ROM属于()(本题分值:1分)

【正确】D

A.感觉媒体

B.表示媒体

C.表现媒体

D.存储媒体

16.设当前盘为C盘,将A盘根目录下的文件目录信息存放到当前盘当前目录下的文件AB中,应使用命令()(本题分值:1分)

【正确】C

A.TYPE A:>AB

B.DIR >AB

C.DIR A:>AB

D.DIR >AB

17.在位运算中,作数每右移一位,其结果相当于()(本题分值:1分)

【正确】B

A.作数乘以2

B.作数除以2

C.作数除以16

D.作数乘以16

18.在当前盘当前目录下有一个文件A.BAT,其内容为

CD

MD XYZABBC

CD XYZABB

在正确执行上述文件后,接着执行下列命令时,不会发生错误的是()(本题分值:1分)

【正确】C

A.MD C

B.RD XYZ

C.RD C

D.RD B

19.下列命令组中两个DOS命令互相等价的是()(本题分值:1分)

【正确】D

A.TYPE AB.TXT与DIR AB.TXT

B.DISKCOMP A:B:与COMP A:. B:.

C.TYPE AB.TXT>>XY.TXT与COPY AB.TXT XY.TXT

D.TYPE AB.TXT>XY.TXT与COPY AB.TXT XY.TXT

20.设A盘为启动盘,其目录结构为

根目录

DOS子目录 COMAND.COM

USER子目录 AUTOEXEC.BAT

其文件AUTOEXEC.BAT的内容如下:

MD XYZ

CD DOSUSER

则由A盘启动成功后,A盘的当前目录是()(本题分值:2分)

【正确】C

A.DOSUSER

B.XYZ

C.根目录

D.DOS

21.C语言提供的合法关键字是()(本题分值:1分)

【正确】C

A.switch

B.cher

C.case

D.default

22.在C语言中,合法的字符常量是()(本题分值:1分)

【正确】B

A.′084′

B.′x43′

C.′ab′

D.′0′

23.若已定义x和y为double类型,则表达式: x=1,y=x+3/2的值是()(本题分值:1分)

【正确】C

A.1

B.2

C.2.0

D.2.5

24.合法的数组定义是()(本题分值:1分)

【正确】D

A.int a[]=〃string〃;

B.int a[5]={0,1,2,3,4,5};

C.char a=〃string〃;

D.char a[]={0,1,2,3,4,5};

25.设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是()(本题分值:1分)

【正确】A

A.10<a<15

B.a==11||a==12||a==13||a==14

C.a>10&&a<15

D.!(a<=10)&&!(a>=15)

26.若t为double类型,表达式t=1,t+5,t++的值是()(本题分值:1分)

【正确】C

A.1

B.6.0

C.2.0

D.1.0

27.若有定义和语句:

char s[10];s=〃abcd〃;printf(〃%sn〃,s);

则结果是(以下μ代表空格)()(本题分值:1分)

【正确】D

A.输出abcd

B.输出a

C.输出abcdμμμμμ

D.编译不通过

28.若有定义和语句:

int pp,p,a=10,b=20;

pp=&p;p=&a;p=&b;printf(〃%d,%dn〃,p,pp);

则输出结果是()(本题分值:1分)

【正确】D

A.10,10

B.10,20

C.20,10

D.20,20

29.若有以下定义和语句:

int u=010,v=0x10,w=10;

printf(〃%d,%d,%dn〃,u,v,w);

则输出结果是()(本题分值:1分)

【正确】A

A.8,16,10

B.10,10,10

C.8,8,10

D.8,10,10

30.若有以下定义和语句:

char c1=′b′,c2=′e′;

printf(〃%d,%cn〃,c2-c1,c2-′a′+′A′);

则输出结果是()(本题分值:1分)

【正确】B

A.2,M

B.3,E

C.2,E

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

31.若有定义:int a[3][4];,()不能表示数组元素a[1][1]。(本题分值:1分)

【正确】D

A.(a[1]+1)

B.(&a[1][1])

C.((a+1))[1]

D.(a+5)

32.若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是()(本题分值:1分)

for(i=5;i>0;i--)

for(j=0;j<4;j++){…}

【正确】A

A.20

B.24

C.25

D.30

33.若有以下定义和语句:

char s1=〃12345〃,s2=〃1234〃;

printf(〃%dn〃,strlen(strcpy(s1,s2)));

则输出结果是()(本题分值:1分)

【正确】A

A.4

B.5

C.9

D.10

34.若有以下定义和语句:

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

则不能表示a数组元素的表达式是()(本题分值:1分)

【正确】B

A.p

B.a[10]

C.a

D.a[p-a]

35.下面程序的输出结果是()(本题分值:2分)

【正确】C

A.k=3 a=2 b=3

B.k=3 a=3 b=2

C.k=2 a=3 b=2

D.k=2 a=2 b=3

36.下面程序的输出结果是()(本题分值:1分)

main()

{unsigned a=32768;

printf(〃a=%dn〃,a);}

【正确】C

A.a=32768

B.a=32767

C.a=-32768

D.a=-1

37.执行下面语句后的输出结果为()(本题分值:1分)

int i=-1;

if(i<=0) printf(〃n〃);

else printf(〃%%%%n〃)

【正确】D

A.

B.%%%%

C.%%%%c

D.有语法错误,不能正确执行

38.对于条件表达式(M)?(a++):(a--),其中的表达式M等价于()(本题分值:1分)

【正确】C

A.M==0

B.M==1

C.M!=0

D.M!=1

39.下述程序段的输出结果是()(本题分值:1分)

int x=10;

int7nbspy=x++;

printf(〃%d,%d〃,(x++,y),y++);

【正确】A

A.11,10

B.11,11

C.10,10

D.10,11

40.若有以下的定义:

int a[]={1,2,3,4,5,6,7,8,9,10},p=a

则值为3的表达式是()(本题分值:1分)

【正确】A

A.p+=2,(p++)

B.p+=2,++p

C.p+=3,p++

D.p+=2,++p

41.定所有变量均已正确说明,下列是程序段运行后x的值是()(本题分值:2分)

a=b=c=0;x=35;

if(!a) x--;

else if(b);

if(c) x=3;

else x=4;

【正确】B

A.34

B.4

C.35

D.3

42.在以下一组运算中,优先级的运算符是()(本题分值:2分)

【正确】C

A.<=

B.=

C.%

D.&&

43.若有以下定义和语句:

int w[2][3],(pw)[3];pw=w;

则对w数组元素的非法引用是()(本题分值:2分)

【正确】A

A.(w[0]+2)

B.(pw+1)[2]

C.pw[0][0]

D.(pw[1]+2)

44.若有以下程序片段: char str[ ]=〃abn012〃; printf(〃%d〃,strlen(str));

上面程序片段的输出结果是()(本题分值:2分)

【正确】C

A.3

B.4

C.6

D.12

45.函数调用:strcat(strcpy(str1,str2),str3)的功能是()(本题分值:2分)

【正确】C

A.将串str1到串str2中后再连接到串str3之后

B.将串str1连接到串str2之后再到串str3之后

C.将串str2到串str1中后再将串str3连接到串str1之后

D.将串str2连接到串str1之后再将串str1到串str3中

46.以下对C语言函数的有关描述中,正确的是()(本题分值:2分)

【正确】A

A.在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

B.C函数既可以嵌套定义又可以递归调用

C.函数必须有返回值,否则不能使用函数

D.C程序中有调用关系的所有函数必须放在同一个源程序文件中

47.以下叙述中不正确的是()(本题分值:2分)

【正确】C

A.在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值

B.在C中,在调用函数时,实参和对应形参在类型上只需赋值兼容

C.在C中,外部变量的隐含类别是自动存储类别

D.在C中,函数形参可以说明为register变量

48.设有以下定义或语句,则输出的结果是(用all模式编译,指针变量占2个字节)()(本题分值:2分)

struct date

{long cat;

struct date next;

double dog;

}too;

printf(〃%d〃,sizeof(too));

【正确】D

A.20

B.16

C.14

D.12

49.设有定义:struct sk

{int a;float b;}data,p;

若有p=&data;,则对data中的a域的正确引用是()(本题分值:2分)

【正确】B

A.(p).data.a

B.(p).a

C.p->data.a

D.p.data.a

50.以下对枚举类型名的定义中正确的是()(本题分值:2分)

【正确】B

A.enum a={one,two,three};

B.enum a{one=9,two=-1,three};

C.enum a={〃one〃,〃two〃,〃three〃};

D.enum a{〃one〃,〃two〃,〃three〃};

二、填空题(每空2分,共40分)请将分别写在答题卡中序号【1】至【20】的横线上,答在试卷上不得分。

1、与十进制数101等值的二进制数为。(本题分值:2分)

【正确】

【1】1100101

2、DOS命令分为内部命令与外部命令,XCOPY命令属于命令。(本题分值:2分)

【正确】

【2】外部

3、设当前盘为A盘,当前系统提示符为“>”,在不改变当前盘的情况下,显示C盘的当前目录路径,应使用命令。 (本题分值:2分)

【正确】

【3】CD C:

4、自动批处理文件名必须是。(本题分值:2分)

【正确】

【4】AUTOEXEC.BAT

5、设在当前盘当前目录下有两个文件W.TXT与P.TXT,现要将文件P.TXT连接到文件W.TXT的后面,若使用COPY命令,则完整的命令为。(本题分值:2分)

【正确】

【5】COPY W.TXT+P.TXT W.TXT

6、表示条件10<x<100或x<0的C语言表达式是。(本题分值:2分)

【正确】

【6】(x>10&& x<100)||x<0

或(10<x&&x<100)||x<0

或x<0 ||(x>10&&x<100)

或0>x ||(10<x&&x<100)

7、以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的笾怠G胩羁铡?br> #define N 3

#define M 4

void LineMax(int x[N][M])

{ int i,j,p;

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

{p=0;

for(j=1;j<M;j++)

if(x[i][p]<x[i][j]) ;

printf(〃The max value in line is %dn〃,);

}}

main()

{ int x[N][M]={1,5,7,4,2,6,4,3,8,2,3,1};

;}

(本题分值:6分)

【正确】

【7】p=j

【8】x[i][p]

【9】LineMax(x)

8、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空。

main()

{float x[1000],sum=0.0,e,a;

int n=0,i;

printf(〃Enter mark:n〃);scanf(〃%f〃,&a);

while(a>= 0.0 && n<1000)

{sum+=;x[n]=;

n++; scanf(〃%f〃,&a);

}e= ;

printf(〃Output:n〃);

printf(〃e=%fn〃,e);

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

if() printf(〃%fn〃,x[i]);

}(本题分值:8分)

【正确】

【10】a

【11】a

【12】sum/n或sum/(float)n或sum/(double)n

【13】x[i]<e或!(x[i]>=e)或e>x[i]

9、执行以下程序,输入-10的结果是,输入5的结果是,输入10的结果是,输入30的结果是。

(本题分值:8分)

【正确】

【14】0

【15】5

【16】10

【17】5

10、以下程序的功能是。

main()

{int num[10]={10,1,-20,-203,-21,2,-2,-2,11,-21};

int sum=0,i;

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

if(num[i]>0)

sum=num[i]+sum;

printf(〃sum=%6d〃,sum);

}(本题分值:2分)

【正确】

【18】计算数组num中大于零的数据之和

11、以下程序可以把从键盘上输入十进制数(long型)以二到十六进制数的形式输出,请填空。

#include

main()

{char

b[16]={′0′,′1′,′2′,′3′,′4′,′5′,′6′,′7′,′8′,′9′,′A′,′B′,′C′,′D′,′E′,′F′};

int c[64],d,i=0,base;

long n;

printf(〃Enter a number:n〃); scanf(〃%1d〃,&n);

printf(〃Enter new base:n〃); scanf(〃%1d〃,&base);

do

{c[i]=;

i++;

n=n/base;

}while(n!=0);

printf(〃The result is:n〃);

for(--i;i>=0;--i)

{?d=c[i];

printf(〃%c〃,b);

}}

(本题分值:4分)

【正确】

【19】n%base

【20】 [d]

求一份C语言程序设计的期末考试试题!!!谢谢了

我的是编程问题的题目:

1.有一条河流,原有8000万条鱼,由于受到污染,每年减少一半,求第几年减少到为原来的1/16,16年后为多少条?(注意int的取值范围)

2.求该班有多少个学生,和多少名学生要补考。设该班不超过50名学生,每名学生有5科科目,有三科超过80分(100分制),为,5科中有一科低于60分,就要重考!(用一维数组)

3.亲密数对(要求要调用一个自定义的函数);

4.任意两个日期间的相隔天数(1900<=x<=3000)(要求调用自己定义的函数!)

你哪里的?我有一份.

2018年自学考试《C语言程序设计》模拟试题【四篇】

【 #自考# 导语】“一分耕耘一分收获”,十载寒窗铸直了你挺拔的身姿,丰富的知识拉远你睿智的目光,岁月的流逝反衬出你娇美的容颜,奋斗的道路上,你的身影显得无比的昂扬。你与每一个成功拥抱,你的汗水在七彩的生活里闪光!祝愿你考试一帆风顺!以下是 为大家整理的《2018年自学考试《C语言程序设计》模拟试题【四篇】》供您查阅。

【篇】

一、选择题((1)-(40)题每小题1分,

(41)-(50)题每小题2分,共60分)

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)在32位计算机中,一个字长所占的字节数为______。

A) 1 B) 2 C) 4 D) 8

(2)与十进制511等值的十六进制数为______。

A) 1FF B) 2FF C) 1FE D) 2FE

(3)能将高级语言编写的源程序转换成目标程序的是______。

A) 我程序 B) 编译程序 C) 解释程序 D) 链接程序

(4)在计算机系统中,存储一个汉字的国标码所需要的字节数为______。

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

(5)下列带有通配符的文件名,能表示文件ABC.TXT的是______。

A) BC.? B) A?. C) ?BC. D) ?.?

(6)在多媒体计算机系统中,不能用以存储多媒体信息的是______。

A) 光缆 B) 软盘 C) 硬盘 D) 光盘

(7)DOS命令“COPY/?”的功能是______。

A) 将当前盘当前目录中的所有文件到当前盘的根目录下

B) 将当前盘当前目录中所有以单个字符命名的文件到当前盘的根目录下

C) 以提示方式文件

D) 显示COPY命令的帮助信息

(8)在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按______。

A) Ctrl+PrintScreen键

B) Shift+PrintScreen键

C) PrintScreen键

D) Alt+PrintScreen键

(9)在Windows环境下,单击当前应用程序窗口的“关闭”按钮,其功能是______。

A) 将当前应用程序转为后台运行

B) 退出Windows后再关机

C) 退出Windows后重新启动计算机

D) 终止当前应用程序的运行

(10)在Windows环境下,粘贴快捷键是______。

A) Ctrl+Z B) Ctrl+X C) Ctrl+C D) Ctrl+V

(11)以下叙述中正确的是______。

A) 构成C程序的基本单位是函数

B) 可以在一个函数中定义另一个函数

C) main()函数必须放在其它函数之前

D) 所有被调用的函数一定要在调用之前进行定义

(12)以下选项中合法的实型常数是______。

A) 5E2.0 B) E-3 C) .2E0 D) 1.3E

(13)以下选项中合法的用户标识符是______。

A) long B) _2Test C) 3Dmax D) A.dat

(14)已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量’101’是______。

A) 字符A B) 字符a C) 字符e D) 非法的常量

(15)以下非法的赋值语句是______。

A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0;

(16)设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是______。

A) 6.500000 B) 6 C) 5.500000 D) 6.000000

(17)已知i、j、k为int型变量,若从键盘输入:1,2,3回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。

A) scanf("%2d%2d%2d",&i,&j,&k);

B) scanf(""%d %d %d",&i,&j,&k);

C) scanf("%d,%d,%d",&i,&j,&k);

D) scanf("i=%d,j=%d,k=%d",&i,&j,&k);

(18)与数学式子3乘以x的n次方/(2x-1)对应的C语言表达式是______。

A) 3x^n/(2x-1)

B) 3xn/(2x-1)

C) ow(x,n)(1/(2x-1))

D) ow(n,x)/(2x-1)

(19)设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是______。

A) printf("x=%d ",x);

B) printf("x=%ld ",x);

C) printf("x=%8dL ",x);

D) printf("x=%LD ",x);

(20)若有以下程序:

main()

{int k=2,i=2,m;

m=(k+=i=k); printf("%d,%d ",m,i);

}执行后的输出结果是______。

A) 8,6 B) 8,3 C) 6,4 D) 7,4

【第二篇】

(21)已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是______。

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

(22)有一函数

1 x>0

y= 0 x=0

-1 x0) y=1;else if(x==0) y=0;else y=-1;

B) y=0;if(x>0) y=1;else if(x=0)if(x>0) y=1;else y=-1;

D) if(x>=0) if(x>0) y=1;else y=0;else y=-1;

(23)以下选项中,与k=n++完全等价的表达式是_______。

A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1

(24)以下程序的功能是:按顺序读入10名学生4门课程的成绩,

计算出每位学生的平均分并输出,程序如下:

main()

{int n,k;

float score,sum,e;

sum=0.0;

for(n=1;nnum+q->next->num);

}程序运行后的输出结果是______。

A) 10 B) 20 C) 30 D) 40

(47)若有以下说明和定义

typedef int INTEGER

INTEGER p,q;

以下叙述正确的是______。

A) p是int型变量

B) p是基类型为int的指针变量

C) q是基类

型为int的指针变量

D) 程序中可用INTEGER代替int类型名

(48)有以下程序

main()

{unsigned char a,b,c;

a=0x3; b=a|0x8; c=b