搜档网
当前位置:搜档网 › 计算机语言C模拟考试及答案

计算机语言C模拟考试及答案

计算机语言C模拟考试

总分:150分考试时间:120分钟

注意事项:

➢题目包括五大部分, 单项选择题,判断题,填空题,程序分析题,编程题,请按要求在规定时间内作答。

➢考试中途不能无端离场,否则视为放弃。考试过程中如遇问题请及时向监考老师反馈。

一、单项选择题(每小题2 分,共 40分)

1、有以下程序

main()

{

char a1='m', a2='m';

printf("%c\n", (a1, a2) );

}

以下叙述中正确的是________。

A、程序输出大写字母M

B、程序输出小写字母m

C、格式说明符不足,编译出错

D、程序运行时产生出错信息

2、下列数据中,不合法的c语言实型数据的是________。

A、0.123

B、123e3

C、2.1e3.5

D、789.0

3、表达式10!=12的值是________。

A、0

B、1

C、true

D、非零值

4、下述语句中,_____中的if语句语法是错误的。 ( )

A、if(x>y);

B、if(x==y)x+=y;

C、if(x!=y)seanf("%d",&x)else scanf("%d",&y);

D、if(x<y)x++;y++;

5、以下for语句构成的循环执行了______次。

#include <stdio.h>

#define N 2

#define M N+1

#define NUM (M+1)*M/2

main()

{

int i,n=0;

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

{

N++;

printf("%d",n);

}

printf("\n");

}

A、5

B、6

C、8

D、9

6、下列数组说明中,正确的是________。

A、int array[][4];

B、int array[][];

C、int array[][][5];

D、int array[3][];

7、下列选项中不会引起二义性的宏定义是________。

A、#define S(x)X*x

B、#define S(x) (x)*(x)

C、#define S(x) (x*x)

D、#define S(x) ((x)*(x))

8、若数组a定义为int[][]a=new int[3][4],则a是________。

A、一维数组

B、二维数组

C、三维数组

D、四维数组

9、如果用printf()来输出双精度型数据、则正确的格式控制符是________。

A、%-10.2f

B、%lf

C、%e

D、%g

10、在c语言中,不允许有常量的数据类型是________。

A、整型

B、结构型

C、字符型

D、字符串

11、下面程序的运行结果是

#include<stdio.h>

main()

{

char a[]="morning",t;

int i,j=0;

for(i=1;i<7;i++) {

if(a[j]<a[i]) {

j=i;

t=a[j];

a[j]=a[7];

a[7]=a[j];

}

}

printf("%s", a);

}

A、mrgninr

B、m

C、moring

D、morning

12、以下叙述中正确的是________。

A、两个字符串可以用关系运算符进行大小比较

B、函数调用 strlen(s)会返回字符串 s 实际占用内存的大小(以字节为单位)

C、C 语言本身没有提供对字符串进行整体操作的运算符

D、当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和

13、若希望当a的值为奇数时,表达式的值为"真",a的值为偶数时,表达式的值为"假",则下面不能满足要求的表达式是________。

A、A%2==1

B、!(A%2==0)

C、!(A%2)

D、A%2

14、算法指的是________。

A、解决问题的方法、步骤和思路的一种描述

B、计算机程序

C、排序方法

D、数据处理

15、下面程序段的输出结果是________。

#include<stdio.h>

main()

{

float x=1.236547;

printf("%f\n",(int)(x*1000+0.5)/(float)1000);

}

A、1.237000

B、输出格式说明与输出项不匹配,输出无定值

C、1.236000

D、1.24

16、有以下程序

main()

{

int i, j;

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

{

for(j=i;j<4;j++) printf("%d*%d=%d ",i,j,i*j); printf("\n");

}

}

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

A、1*1=1 1*2=2 1*3=3

2*1=2 2*2=4 2*3=6

3*1=3 3*2=6 3*3=9

B、1*1=1 1*2=2 1*3=3

2*2=4 2*3=6

3*3=9

C、1*1=1

D、1*1=1 1*2=2

2*1=2 2*2=4

3*3=9

17、变量a所占的内存字节数是______。

union u{

char st[4];

int i;

long l;

};

struct A {

int c;

union u;

} a;

A、4

B、5

C、6

D、8

18、有以下程序

main()

{

int a[3][2]={0},(*ptr)[2],i,j;

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

{

ptr=a+i;

scanf("%d",*ptr);

}

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

{

for(j=0;j<2;j++) printf("%2d",a[i][j]); printf("\n");

}

}

若运行时输入:1 2 3<回车>,则输出结果是______。

A、产生错误信息

B、1 02 00 0

C、1 23 00 0

D、1 02 03 0

19、若有以下定义,则对a数组元素的正确引用是________。 int a[5],*p=a;

A、*&a[5]

B、*a+1

C、*(p+5)

D、*(a+2)

20、有以下结构体说明和变量的定义,且指针p指向变量a’指针q指向变量b,则不能把结点b连接到结点a之后的语句是________。

struct node

{

char data;

struct node*next;

}

a,b,*p=&a,*q=&b;

A、a.next=q;

B、P.next=&b:

C、p—>next=&b;

D、(*p).next=q;

二、判断题(每小题2 分,共 20分)

()1、在c程序运行过程中,其值不能被改变的量称为常量,其值可以改变的量称为变量。

()2、c 语言规定 : 定义符号常量时必须用大写字母。

()3、对全局指针变量与局部静态指针变量而言,在定义时若未被初始化,则编译系统自动初始化为空指针0

()4、for循环的三个表达式可以任意省略,while,do-while也是如此。

()5、函数strcpy(str1,str2);

的功能是将字符串str2复制到字符串str1中。

()6、c程序函数体是由左右花括号{}括起来的部分。

()7、数组名能与其它变量名相同。数组名后是用方括号括起来的常量表达式,不能用圆括号。

()8、c语言规定,在一个源程序中,main函数的位置必须在最后。( )

()9、若函数体内没有return语句,程序的流程就执行到函数体的末尾,然后返回到调用函数。这时带回一个不确定的函数值。

()10、如果在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量依然起作用。

三、填空题(每小题4 分,共 20分)

1、字符串函数___________用于把一个字符串写入指定的磁盘文件中。

2、若变量x,y已定义为int类型且x的值为99,y的值为9,请将输出语句printf( ________ ,x/y);

补充完整,使其输出的计算结果形式为:x/y=11。

3、在c语言的循环语句for,while,do-while语句中,用于直接中断最内层循环的语句是________。我的答案: break

4、源程序的基本单位是【】。

5、若有定义:double x[3][5];

则x 数组中行下标的下限为【1】,列下标的上限为【2】。

四、程序分析题(每小题5 分,共 20分)

1、#include <stdio.h>

void main()

{

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

for (i=1;i<3;i++) for (j=0;j<i;j++) s+=a[i][j];

printf("%d\n",s);

}

2、以下程序的输出结果是_____________。

main()

{

float x;

printf("%.4f\n",(x=2*4,x+0.5));

}

3、程序结果:

void main()

{

int a,b,sum;

a=123;

b=456;

sum=a+b;

printf("sum is %d\n",sum);

}

4、已知字符a的acsii码值为65,以下语句的输出结果是 ________

char ch=’b’;

printf("%c %d\n",ch,ch);

五、编程题(每小题分,共 50分)

1、已知银行定期存款利率为r=2.25%,输入存款本金x、存款年数n,输出本利之和y=x(1+r)(1+r)...(1+r),共n个(1+r)。(本题12分)

2、判断101-200之间有多少个素数,并输出所有素数。(本题18分)

3、定义一个结构体变量(包括年、月、日)。编写一个函数days,计算该日期在本年中是第几天(注意闰年问题)。由主函数将年月日传递给days函数,计算之后,将结果传回到主函数输出。(本题20分)

【计算机语言C模拟考试参考答案】

一、单项选择题

1、A

2、C

【解析】在C语言中,实数有两种表示形式。即十进制数形式和指数形式,在指数形式中,字母e的前面必须有数字,且e的后面必须是整数。e3,2.1e3.5,e3,e等都是不合法的指数形式,而123e3或123E3都代表123乘以10的3次方。

3、B

4、C

5、C

6、A

7、D

8、B

【解析】二维数组有两种定义方式:①type arrayName[][];②type[][]arrayName;从题目中的语句可以看出,本题定义了一个二维数组。

9、B

10、B

11、B

【解析】本题考查了一维数组元素的引用方法。题中数组a为一字符串数组,通过数组首地址和下标可以引用数组中的每个元素。因为字符数组相当于字符串

12、C

【解析】本题考查字符串处理函数 strlen、 strcat strcmp.b 选项中strlen 返回的是字符串 s 实际占用内存大小加上结尾符 A 选项中不能用关系运算符进行大小比较,可以使用 strcmp D 选项当使用 strcat 连接函数时,内存空间会减少一个字符位置。

13、C

14、A

15、A

【解析】本题中,(int)(x*1000+0.5)的结果为1237,(float)1000是将1000强制转换成float类型;整个表达式(int)(x*1000+0.5)/(float)1000的结果为1.237000,再以实数(6位小数)形式输出。

16、B

【解析】本题考查的是循环嵌套。在一个循环体内又完整地包含了另一个循环,称为循环嵌套。外循环i的值分别为1、2、3,当i=1,内循环j=1时,输出1*1=1;当内循环

j=2时,输出1*2=2;当内循环j=3时,输出1*3=3;当i=2,内循环j=2时,输出

2*2=4;当内循环j=3时,输出2*3=6;当i=3,内循环j=3时,输出3*3=9。

17、C

【解析】结构件变量所占内存长度是各成员占内存长度之和,而共用体变量所占的内存

长度等于最长的成员的长度。本题结构体变量a中成员c为整型占2个字节,共用体变量u最大长度为4个字节,故选C。

18、B

19、D

【解析】本题考查通过指针引用数组元素。选项A)、B),没有这种引用形式;选项C),*(p+5)是引用数组的第6个元素,而数组一共有5个元素,出现越界:选项D),*(a+2)引用数组的第3个元素。

20、B

二、判断题

1、正确

2、正确

3、正确

4、错误

5、正确

6、正确

7、正确

8、错误

9、正确

10、错误

三、填空题

1、fputs#fputs()

2、['"x/y=%d"']

3、填空题|1

4、函数

5、【1】0 【2】4

四、程序分析题

1、14

【解析】该程序即计算a[1][0] + a[2][0] + a[2][1] 的值,对应数组中的数为:3 + 5 + 6 = 14。

2、8.5000

3、sum is 579。

4、['b 66']

五、编程题

1、#include

void main()

{

float x,y,r=0.0225;

int i,n;

printf("请输入存款本金x和存款年数n:");

scanf("%f%d",&x,&n);

y=x;

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

y=y*(1+r);

printf("%f\n",y);

}

2、程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

程序源代码:

#include "math.h"

main()

{

int m,i,k,h=0,leap=1;

printf("\n");

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

{

k=sqrt(m+1);

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

if(m%i==0)

{

leap=0;break;

}

if(leap) {

printf("%-4d",m);

h++;

if(h%10==0)

printf("\n");

}

leap=1;

}

printf("\nThe total is %d",h);

}

3、#include

struct Date

{

int day;

int month;

int year;

};

int main()

{

void days( struct Date date1, int *q );

struct Date date1;

struct Date *p;

int n;

printf( "请输入年份:" );

scanf( "%d", &date1.year );

printf( "请输入月份:" );

scanf( "%d", &date1.month );

printf( "请输入日期:" );

scanf( "%d", &date1.day );

p = &date1;

days( *p, &n ); /* 使指针指向变量n,存放计算的总天数 */

printf( "%d年%d月%d日是该年的第%d天。\n", date1.year, date1.month,

date1.day, n );

return(0);

}

void days( struct Date date1, int *q )

{

int month2;

if ( date1.year % 400 == 0 || (date1.year % 100 != 0 && date1.year % 4 == 0) )

month2 = 29; /* 判断为润年,其该年的二月为29天 */

else month2 = 28;

switch ( date1.month )

{

case 1: *q = date1.day; break;

case 2: *q = 31 + date1.day; break;

case 3: *q = month2 + 31 + date1.day; break;

case 4: *q = 31 * 2 + month2 + date1.day; break;

case 5: *q = 31 * 2 + month2 + 30 + date1.day; break;

case 6: *q = 31 * 3 + month2 + 30 + date1.day; break;

case 7: *q = 31 * 3 + 30 * 2 + month2 + date1.day; break;

case 8: *q = 31 * 4 + 30 * 2 + month2 + date1.day; break;

case 9: *q = 5 * 31 + 30 * 2 + month2 + date1.day; break;

case 10: *q = 5 * 31 + 3 * 30 + month2 + date1.day; break;

case 11: *q = 6 * 31 + 3 * 30 + month2 + date1.day; break;

case 12: *q = 6 * 31 + 4 * 30 + month2 + date1.day;

} /* 把计算的总天数赋值给*p */

}

c语言计算机二级试题及答案

c语言计算机二级试题及答案 一、选择题 1. 在C语言中,以下哪个关键字用于定义函数? A. int B. main C. if D. void 答案:D 2. 下列哪个选项是C语言中合法的变量命名? A. 1_num B. num_1 C. _num D. num$ 答案:C 3. 变量的作用域是指变量在程序中的有效范围。以下哪个作用域是最大的? A. 全局作用域 B. 局部作用域

C. 函数作用域 D. 块作用域 答案:A 4. 下列哪个函数用于输出字符到屏幕上? A. scanf B. printf C. gets D. puts 答案:B 5. 下列哪个符号用于表示逻辑与操作? A. && B. || C. ! D. & 答案:A 二、填空题 1. 以下哪个关键字用于声明常量? 答案:const

2. 在C语言中,用于判断两个变量是否相等的比较运算符是______。 答案:== 3. C语言中的循环结构可以使用哪个关键字来控制循环条件? 答案:while 4. “%d”用于格式化输出哪种类型的数据? 答案:整型 5. 在C语言中,用于定义宏的预处理命令是______。 答案:#define 三、编程题 请编写一个C语言程序,实现一个简单的计算器。用户输入两个数 字和一个运算符,程序会根据运算符进行相应的计算,并将结果输出 到屏幕上。 ```c #include int main() { double num1, num2, result; char operator; printf("请输入第一个数字:");

scanf("%lf", &num1); printf("请输入第二个数字:"); scanf("%lf", &num2); printf("请输入运算符:"); scanf(" %c", &operator); switch(operator) { case '+': result = num1 + num2; break; case '-': result = num1 - num2; break; case '*': result = num1 * num2; break; case '/': result = num1 / num2; break; default:

计算机语言C模拟考试及答案

计算机语言C模拟考试 总分:150分考试时间:120分钟 注意事项: ➢题目包括五大部分, 单项选择题,判断题,填空题,程序分析题,编程题,请按要求在规定时间内作答。 ➢考试中途不能无端离场,否则视为放弃。考试过程中如遇问题请及时向监考老师反馈。 一、单项选择题(每小题2 分,共 40分) 1、有以下程序 main() { char a1='m', a2='m'; printf("%c\n", (a1, a2) ); } 以下叙述中正确的是________。 A、程序输出大写字母M B、程序输出小写字母m C、格式说明符不足,编译出错 D、程序运行时产生出错信息 2、下列数据中,不合法的c语言实型数据的是________。 A、0.123 B、123e3 C、2.1e3.5 D、789.0 3、表达式10!=12的值是________。 A、0 B、1 C、true D、非零值 4、下述语句中,_____中的if语句语法是错误的。 ( ) A、if(x>y); B、if(x==y)x+=y; C、if(x!=y)seanf("%d",&x)else scanf("%d",&y); D、if(x<y)x++;y++; 5、以下for语句构成的循环执行了______次。 #include <stdio.h>

#define N 2 #define M N+1 #define NUM (M+1)*M/2 main() { int i,n=0; for(i=1;i<=NUM;i++) { N++; printf("%d",n); } printf("\n"); } A、5 B、6 C、8 D、9 6、下列数组说明中,正确的是________。 A、int array[][4]; B、int array[][]; C、int array[][][5]; D、int array[3][]; 7、下列选项中不会引起二义性的宏定义是________。 A、#define S(x)X*x B、#define S(x) (x)*(x) C、#define S(x) (x*x) D、#define S(x) ((x)*(x)) 8、若数组a定义为int[][]a=new int[3][4],则a是________。 A、一维数组 B、二维数组 C、三维数组 D、四维数组 9、如果用printf()来输出双精度型数据、则正确的格式控制符是________。 A、%-10.2f B、%lf C、%e D、%g

C语言程序设计模拟试题一(含答案)

C语言程序设计模拟试题一(含答案) 1、下列述叙中正确的是 A) 显示器和打印机都是输出设备 B) 显示器只能显示字符 C) 通常的彩色显示器都有7种颜色 D) 打印机只能打印字符和表格 2、微型计算机中运算器的主要功能是进行 A) 算术运算B) 逻辑运算 C) 算术和逻辑运算D) 初等函数运算 3、https://www.sodocs.net/doc/3119228293.html,是DOS系统的最外层模块,通常称之为 A) 引导程序B) 输入输出系统 C) 命令处理系统D) 文件管理系统 4、电子邮件是 A) 网络信息检索服务 B) 通过Web网页发布的公告信息 C) 通过网络实时交互的信息传递方式 D) 一种利用网络交换信息的非交互式服务 5、和十进制数225相等的二进制数是 A) 11101110 B) 11111110 C) 10000000 D) 11111111 6、下列叙述中正确的是 A) 指令由操作数和操作码两部分组成\ B) 常用参数xxMB表示计算机的速度 C) 计算机的一个字长总是等于两个字节

D) 计算机语言是完成某一任务的指令集 7、计算机的内存储器比外存储器 A) 价格便宜B) 存储容量大 C) 读写速度快D) 读写速度慢 8、设当前盘为C盘,执行DOS命令"COPY B:\A.TXT PRN"之后,结果是 A) B盘上的A.TXT文件被复制到C盘的PRN文件 B) 屏幕上显示B盘上的A.TXT文件内容 C) B盘上的A.TXT文件内容在打印机上输出 D) B盘上的A.TXT文件被复制到B盘上的PRN文件 9、要将当前盘当前目录下的两个文件X1.TXT和B1.TXT连接起来之后存入B盘当前目录下并且命名为Z.TXT,无论B 盘当前目录是什么,完成这件任务可以使用的命令是 A) COPY A:X1.TXT+C:B1.TXT Z.TXT B) COPY X1.TXT+C:\\WS\\B1.TXT B:\\Z.TXT C) COPY A:X1.TXT+C:\\WS\\B1.TXT D) COPY X1.TXT+B1.TXT B:Z.TXT 10、下列四组DOS命令中,功能等价的一组是 A) COPY A:*.* B:与DISKCOPY A: B: B) COPY ABC.TXT+XYZ.TXT 与TYPE XYZ.TXT>>ABC.TXT C) COPY ABC.TXT+XYZ.TXT与COPY XYZ.TXT+ABC.TXT D) TYPE *.FOR>CON与COPY *.FOR CON 11、设当前目录为D:\BB,现要把D:\AA目录下首字符是A的文本文件全部删除,应该使用命令 A) DEL A*.TXT B) DEL \\AA\\A.TXT C) DEL \\AA\\A*.TXT D) DEL \\AA\\A?.TXT 12、在Windows中,启动应用程序的正确方法是 A) 用鼠标指向该应用程序图标

全国计算机等级考试二级C语言模拟试题及答案一

全国计算机等级考试二级C语言模拟试题及答案一 一、选择题 1栈和队列的共同特点是 A都是先进先出 B都是先进后出 C只允许在端点处插入和删除元素 D没有共同点 正确答案: C 2已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是 Aacbed Bdecab Cdeabc Dcedba 正确答案: D 3链表不具有的特点是 A不必事先估计存储空间 B可随机访问任一元素 C插入删除不需要移动元素 D所需空间与线性表长度成正比 正确答案: B 4结构化程序设计的3种结构是 A顺序结构、选择结构、转移结构 B分支结构、等价结构、循环结构 C多分支结构、赋值结构、等价结构 D顺序结构、选择结构、循环结构 正确答案: D 5为了提高测试的效率,应该 A随机选取测试数据 B取一切可能的输入数据作为测试数据 C在完成编码以后制定软件的测试计划 D集中对付那些错误群集的程序 正确答案: D 6算法的时间复杂度是指 A执行算法程序所需要的时间 B算法程序的长度 C算法执行过程中所需要的基本运算次数 D算法程序中的指令条数 正确答案: C 7软件生命周期中所花费用最多的阶段是 A详细设计 B软件编码

D软件维护 正确答案: D 8数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为 AC BBasic CDDL DDML 正确答案: C 9下列有关数据库的描述,正确的是 A数据库是一个DBF文件 B数据库是一个关系 C数据库是一个结构化的数据集合 D数据库是一组文件 正确答案: C 10下列有关数据库的描述,正确的是 A数据处理是将信息转化为数据的过程 B数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变 C关系中的每一列称为元组,一个元组就是一个字段 D如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字 正确答案: D 11以下叙述中正确的是 AC语言比其他语言高级 BC语言可以不用编译就能被计算机识别执行 CC语言以接近英语国家的自然语言和数学语言作为语言的表达形式 DC语言出现的最晚,具有其他语言的一切优点 正确答案: C 12C语言中用于结构化程序设计的3种基本结构是 A顺序结构、选择结构、循环结构 Bif,switch,break Cfor,while,do-while Dif,for,continue 正确答案: A 13C语言中最简单的数据类型包括 A整型、实型、逻辑型 B整型、实型、字符型 C整型、字符型、逻辑型 D字符型、实型、逻辑型 正确答案: B 14若变量已正确定义并赋值,以下符合C语言语法的表达式是 Aa:=b+1 Ba=b=c+2 Cint 18.5%3

C语言计算机考试试题及答案

一、单项选择题(每小题2分,共40分) 二、填空题(每空2分,共20分) 三、程序填空题(每小题5分,共20分) 四、编程题(每小题10分,共20分) 1、C 语言源程序文件经过C 编译程序编译连接之后生成一个后缀为(C )的文 件。 A.”.c” B.“.obj” C.“.exe” D.“.bas” 2、以下叙述不正确的是( C )。 A. 一个C 源程序可由一个或多个函数组成 B. 一个C 源程序必须包含一个main 函数 C.在C 程序中,一行只能写一个语句 D.在C 程序中,注释说明对程序功能不产生影响 A.math B.stdio C.main D.abs 6、以下不正确的C 语言标识符是(A )。 A. void B. a3_b3 C. ablexe D. _x 7、以下选项中属于C 语言的数据类型是(C )。 A.复数型 B.逻辑型 C.双精度型 D.集合型 8、若有说明和语句:int a=5; a++; 则此处表达式a++的值是(C )。 A.7 B.6 C.5 D.4 9、在C 语言中,以下叙述不正确的是( A )。 A.在C 程序中,无论是整数还是实数,都能被准确无误的表示 B.在C 程序中,变量名代表存储器中的一个位置 C. C 语言中的变量名只能由字母,数字和下划线三种字符组成 D. C 语言中变量必须先定义后引用 10、设以下变量均为int 类型,则值不等于7的表达式是(C )。 A. (x=y=6,x+y,x+1) B. (x=y=6,x+y,y+1) C. (x=6,x+1,y=6,x+y ) D. (y=6,y+1,x=y,x+1) 3 xn 11、与数学式G 对应的C 语言表达式是(C )。 A. 3*x 八 n/(2*x-1) B. 3*x**n/(2*x-1) C. 3*pow(x,n)*(1/(2*x-1)) 3、一个C 语言程序是由(B )。 A.一个主程序和若干子程序组成 C.若干过程组成 4、用C 语言编写的代码程序(B A.可立即执行 C.经过编译即可执行 5、一个C 语言源程序只有一个函 B. 函数组成 D. 若干子程序组成 )。 B. 是一个源程序 D. 经过编译解释才能执行 那么这个函数的名称为( C )。 D. 3*pow(n,x)/(2*x-1)

大学计算机模拟试题及答案

大学计算机模拟试题及答案 一、选择题 1. C语言中,以下哪个函数用于将一个字符转换为整数? A. atoi() B. itoa() C. atoi() D. atoi() 答案:A 2. 数据库中,以下哪个语句用于删除一张表? A. ALTER TABLE B. DROP TABLE C. DELETE TABLE D. REMOVE TABLE 答案:B 3. 在计算机网络中,以下哪个协议用于将域名转换为对应的IP地址? A. HTTP B. FTP

C. DNS D. TCP 答案:C 4. 在Java中,以下哪个关键字用于定义一个类的继承关系? A. implements B. extends C. implements D. extends 答案:B 5. 在操作系统中,以下哪个调度算法会导致进程饥饿问题? A. 先来先服务(FCFS) B. 最短作业优先(SJF) C. 轮转调度(RR) D. 优先级调度(Priority) 答案:A 二、填空题 1. SQL语句中用于查询数据的关键字是_________。 答案:SELECT

2. 编译型语言将源代码转换成机器码的过程称为_________。答案:编译 3. 以下是一段C语言代码,请填写代码中缺失的部分。 ```c #include int main() { int a = 10; int b = 20; int c = a + b; printf("The sum of %d and %d is %d\n", a, b, c); return 0; } ``` 答案:无 4. IP地址由__个8位二进制数组成。 答案:4 5. HTML是一种用于定义网页结构的_________。 答案:标记语言

计算机二级《C语言》模拟试题及答案3篇

计算机二级《C语言》模拟试题及答案 第一篇:C语言基础知识 1. C语言的发明人是谁?简要介绍一下他的背景。 2. int型变量的取值范围是多少?unsigned int呢? 3. 请问下面这段代码输出的结果是什么? char str1[] = "hello"; char str2[] = "world"; strcat(str1, str2); printf("%s", str1); 4. 以下哪些数据类型可以用来存储浮点数? A. float B. double C. long double D. char 5. 下列代码的输出结果是什么? int a = 1; long b = 2; float c = 3.0; printf("%ld\n", a + b + c); 答案: 1. C语言的发明人是丹尼斯·里奇(Dennis Ritchie)。他于1941年出生在美国,是贝尔实验室研究员和计算机科学家。在20世纪70年代,他和肯·汤普逊(Ken Thompson)合作,发明了UNIX操作系统和C语言。C语言是一种高级计算

机程序语言,在操作系统、编译器、数据库、游戏等领域被广泛使用。丹尼斯·里奇因发明了C语言,被誉为“计算机编程之父”。 2. int型变量的取值范围是-2147483648到2147483647,unsigned int的取值范围是0到4294967295。 3. 输出结果为“helloworld”。strcat是C语言的字符串拼接函数,将两个字符串连接成一个字符串。在拼接之前,需要保证第一个字符串的数组足够大,以容纳两个字符串的内容。如果第一个字符串不够大,程序会出现内存溢出等问题。 4. A、B、C三个数据类型可以用来存储浮点数。 5. 输出结果为“6”。在printf函数中,%ld表示输出 长整型数据,而c是一个float型变量。当printf函数中的 格式字符串和实际参数类型不匹配时,程序会自动进行类型转换。在此例中,a和b自动转换成long类型,而c自动转换 成double类型。所有类型转换后,表达式的值为6.0。在输 出时,%ld会把浮点数的小数部分去掉,只输出整数部分。所 以最终输出6。 第二篇:C语言控制语句 1. 编写一个程序,读入一个数,如果这个数是奇数,输 出“这是个奇数”,否则输出“这是个偶数”。 2. 编写一个程序,读入一个整数n,输出n个星号,每 个星号之间用空格隔开。例如,当n为3时,输出“* * *”。 3. 编写一个程序,读入两个整数a和b,输出它们的最 大公约数。可以使用欧几里德算法实现。最大公约数定义为能够同时整除a和b的最大正整数。 4. 编写一个程序,求解二次方程ax² + bx + c = 0的根。程序应该首先读入三个实数a、b、c,然后根据公式计算

全国计算机等级考试c语言试题及答案

全国计算机等级考试c语言试题及答案 试题一: 1. 下列程序段的输出结果是什么? ``` #include int main() { int a = 3; int b = 4; printf("%d\n", a + b * a / b); return 0; } ``` A. 7 B. 27 C. 5 D. 12 答案:D 解析:根据C语言的运算规则,乘除法的优先级高于加减法,因此先计算b * a得到12,再除以b得到12,最后和a相加得到12。

2. 下列程序段的输出结果是什么? ``` #include #define PI 3.1415 int main() { float radius = 3.5; float area = PI * radius * radius; printf("%.2f\n", area); return 0; } ``` A. 10.36 B. 11.60 C. 38.48 D. 38.48 答案:C 解析:根据定义的宏常量,将PI乘以半径的平方得到面积,结果保留两位小数。 3. 下列程序段的输出结果是什么?

#include int main() { int i = 0; while (i < 5) { printf("%d ", i++); } return 0; } ``` A. 0 1 2 3 4 B. 0 1 2 3 4 5 C. 0 1 2 3 4 4 D. 1 2 3 4 5 答案:A 解析:循环中先执行printf输出i的值,再执行i++,因此输出结果为0 1 2 3 4。 试题二: 1. 下列程序段的输出结果是什么?

一级c计算机考试试题及答案

一级c计算机考试试题及答案试题一:多选题 1. 关于计算机网络的说法,以下选项中正确的是: a. 计算机网络是连接多台计算机的设备和传输介质的系统 b. 计算机网络只能用于连接计算机,而不能连接其他设备 c. 计算机网络的主要作用是传输和存储数据 d. 计算机网络的构成只包括硬件设备 答案:a. 计算机网络是连接多台计算机的设备和传输介质的系统试题二:单选题 2. 在C语言中,下列关键字中表示函数返回类型的是: a. void b. int c. if d. for 答案:b. int 试题三:填空题 3. 在Excel中,使用函数SUM(A1:A5)可以实现对单元格A1到A5内数值求和的功能。

答案:SUM 试题四:判断题 4. CPU是计算机的核心组件,用于执行计算机指令和处理数据。答案:正确 试题五:编程题 5. 请编写一个C语言程序,实现从1到10的累加,并输出结果。答案: ```c #include int main() { int sum = 0; for(int i = 1; i <= 10; i++) { sum += i; } printf("累加结果为:%d\n", sum); return 0; } ```

试题六:简答题 6. 简述什么是操作系统,并列举出几个常见的操作系统。 答案:操作系统是一种管理和控制计算机硬件与软件资源的系统软件。常见的操作系统有Windows、macOS、Linux等。 ... 通过以上一级C计算机考试试题及答案,我们可以了解一些计算机基础知识和编程能力要求。希望以上内容能帮助到您。

c语言模拟考试及答案

c语言模拟考试及答案

————————————————————————————————作者:————————————————————————————————日期:

模拟试题 模拟试卷一 一、选择题 1.逻辑运算符两侧运算对象的数据____ A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 2.下面程序段的输出结果是____ int a=023; printf("%d\n",--a); A.23 B.17 C.18 D.24 3.若有定义:int a[3][4]; 下面不能表示数组a[1][1]的是____。 A. *(a[1]+1) B. *(&a[1][1]) C.(*(a+1))[1] D. *(a+5) 4.设有语句:char str1[]="string",str2[8],*str3,*str4="string";则______不是对库函数strcpy的正确调用。 A. strcpy(str1,"HELLO1"); B. strcpy(str2,"HELLO2"); C. strcpy(str3,"HELLO3"); D. strcpy(str4,"HELLO4"); 5.设有定义: int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3]=a,*p=a[0]; 则下列能够正确表示数组元素a[1][2]的表达式是______。 A. *((*prt+1)[2]) B. *(*(p+5)) C. (*prt+1)+2 D.*(*(a+1)+2) 6.有以下程序 struct abc { int a, b, c; }; main() { struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0].a+s[1].b; printf("%d\n",t); } 程序运行后输出结果是____。 A.5 B.6 C.7 D.8 7.有以下程序: #include union pw { int i; char ch[2]; } a; main()

职高计算机c语言试题及答案

职高计算机c语言试题及答案 一、选择题 1. 下列哪个标识符是合法的? A. 123count B. _count C. count++ D. #count 2. C语言中,用于表示真和假的关键字是: A. true和false B. 常量1和0 C. 真和假 D. 等于和不等于 3. 在C语言中,以下哪个是合法的变量名? A. 2b B. _123abc C. #count D. continue 4. 下列哪个不属于C语言的数据类型?

A. float B. boolean C. int D. char 5. 在C语言中,以下哪个运算符用于从输入流中读取数据? A. & B. * C. % D. # 二、填空题 1. 下面代码的输出结果是:_________________。 int a = 10; int b = 20; printf("%d", a > b ? a : b); 2. 补充代码,将x和y的值互换。 int x = 5; int y = 10; _________________; 3. 在C语言中,用于定义宏的关键字是:_________________。

4. 补充代码,使得循环执行10次。 for (int i = 0; i < _______________; i++) { printf("%d ", i); } 5. 补充代码,将字符串s2的内容拷贝到s1中。 char s1[20]; char s2[] = "Hello"; _________________; 三、编程题 1. 编写一个程序,接受用户输入的两个整数,然后输出它们的和。 2. 编写一个程序,接受用户输入的一个年份,判断该年份是否为闰年。若是闰年,则输出"Yes",否则输出"No"。规定闰年的判断规则为符合以下两个条件之一: - 能被4整除但不能被100整除; - 能被400整除。 3. 编写一个程序,计算从1到n的所有整数的和。 4. 编写一个程序,统计输入的一行字符串中各个字符的个数,并输出结果。

计算机二级C语言上机精选模拟题及答案

计算机二级C语言上机精选模拟题及答案计算机二级C语言上机精选模拟题及答案 导语:勤加练习是通过计算机等级考试的有效方式,以下是我为大家细心整理的计算机二级C语言上机精选模拟题及答案,欢迎大家参考! 给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位同学的编号、姓名和电话号码。班级的人数和同学的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 留意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include #defineN5 typedefstruct

{intnum; charname[10]; chartel[10]; }STYPE; voidcheck(); intfun(___1___*std) { ___2___*fp;inti; if((fp=fopen(myfile5.dat,wb))==NULL) return(0); printf(Outputdatatofile!); for(i=0;i fwrite(std[i],sizeof(STYPE),1,___3___); fclose(fp); return(1); } main()

{STYPEs[10]={{1,aaaaa,111111},{1,bbbbb,222222},{1,ccccc,333 333}, {1,ddddd,444444},{1,eeeee,555555}}; intk; k=fun(s); if(k==1) {printf(Succeed!);check();} else printf(Fail!); } voidcheck() {FILE*fp;inti; STYPEs[10]; if((fp=fopen(myfile5.dat,rb))==NULL) {printf(Fail!!);exit(0);}

计算机二级《C语言》基础模拟题及答案

计算机二级《C语言》基础模拟题及答案 2016年计算机二级《C语言》基础模拟题及答案 应届毕业生网整理“2016年计算机二级《C语言》基础练习题及答案(15)”供考生参考。 1[单选题] 一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。 A.一对一 B.一对多 C.多对一 D.多对多 参考答案:B 参考解析:因为一间宿舍可以住多个学生即多个学生住在一个宿舍中,但一个学生只能住一间宿舍,所以实体宿舍和学生之间是一对多的关系。 2[单选题] 以下选项中合法的常量是( ) A.999 B.2.7e C.OXab D.123E 0.2 参考答案:C 参考解析:A选项中含有非法的空格,所以错误。c语言中十六进制常量以0x开头,所以C正确。实型常量中e的前后必须均有数据,且其后必须为整数,所以B和D错误。 3[单选题] 有以下程序: 以上程序执行后abc.dat文件的内容是( )。 A.China B.Chinang C.ChinaBeijing D.BeijingChina 参考答案:B 参考解析:本题考查文件操作函数,fwrite和rewind函数,题目中先是将s2字符串写入adc.dat中,然后将写指针回到文件开头,然后写入sl字符串,那么sl字符串就将前5个字符覆盖,所以最终结果为Chinan9,选项B正确。 4[单选题]以下关于宏的叙述错误的是 A.宏名必须用大写字母构成 B.宏替换具有计算功能 C.宏替换不具有计算功能

D.宏替换不占用运行时间 参考答案:A 参考解析:宏名习惯采用大写字母,以便与一般变量区别,但是并没有规定一定要用大写字母,因此,答案为A选项。 5[单选题] 有以下程序段: 以下选项中不能正确引用字符串的是( )。 A.3 B.p[3] C.str[2] D.*P 参考答案:A 参考解析:t p[3]一p[3][0]是一个字符,不是字符串,选项A错误。P[3]和str[2]和+P分别代表了ddd,eec,flaa。答案为A选项。 6[单选题] 有以下程序: 程序运行后的输出结果是( )。 A.Beijing! B.toBeijing] C.WelcomeyoutoBeijingI D.youtoBeijing I 参考答案:A 参考解析:for循环的作用是每次遇到空格,将空格后面的移动到数组的最前面。因此数组最后的状态是“Bei-jing!、Og!\0ng!、neijing!、O”,但是pfinff(“%s”)打印遇到、0自动结束。因此,打印Beijing!。故答案为A选项。 7[单选题]下列叙述中错误的是( )。 A.数据结构中的数据元素不能是另一数据结构 B.数据结构中的数据元素可以是另一数据结构 C.空数据结构可以是线性结构也可以是非线性结构 D.非空数据结构可以没有根结点 参考答案:A 参考解析:数据元素是一个含义很广泛的概念,它是数据的“基本单位”,在计算机中通常作为一个整体进行考虑和处理。数据元素可以是一个数据也可以是被抽象出的具有一定结构数据集合,所以数据结构中的数据元素可以是另一数据结构。满足有且只有一个根结点并且每一个结点最多有一个前件,也最多有一个后件的非空的数据结

计算机二级《C语言》模拟试题及答案

计算机二级《C语言》模拟试题及答案 第一部分:选择题 1. 下列哪个不是C语言的关键字? A. switch B. int C. var D. return 答案:C 2. C语言中的字符常量用单引号括起来,字符串常量用双引号括起来。 A. 对 B. 错 答案:A 3. 运算符“++”表示自加一,运算符“--”表示自减一。 A. 对 B. 错 答案:A 4. 下面哪种变量定义方式是合法的? A. int 6_and_7 = 67; B. int ans1 = 1.5; C. float num1 = 3.14; D. char = 'c'; 答案:C 5. 下面关于if语句的描述正确的是?

A. if语句必须有else分支。 B. if语句判断条件可以是字符型变量。 C. if语句可以嵌套使用。 D. if语句不能使用逻辑运算符。 答案:C 6. 下面哪种循环结构可以一次都不执行循环体? A. for循环 B. while循环 C. do-while循环 D. 都不可以 答案:B 7. 下面哪个函数是用来从键盘获取一个字符并输出的? A. printf() B. scanf() C. gets() D. putchar() 答案:D 8. 下面哪个函数是用来比较两个字符串是否相等的? A. strcp() B. strcmp() C. strstr() D. sprintf() 答案:B 9. C语言中的数组下标是从0开始的。 A. 对 B. 错 答案:A

10. 下面哪个运算符有最高的优先级? A. ++ B. + C. * D. = 答案:A 第二部分:填空题 1. 下列标识符是合法的。(多选) () today_is_Friday ()七夕节快乐 () month-1 () NAME () 3+5num 答案:A和D 2. int num = ____; 语句将会把变量num的值赋为10。答案:10 3. 在for循环中,______ 语句用于控制循环条件。 答案:判断 4. int num[5] = {1,2,3,4,5}; 语句定义了一个数组,该数组的元素个数为______。 答案:5 5. 如果知道一个字符变量的ASCII码值,可以用______函数将其转换为字符。 答案:putchar() 6. 在C语言中,常量不能被修改,变量可以被修改。 答案:对 7. 下列代码的输出结果是:2

2022年3月计算机一级C语言模拟练习及参考答案

2022年3月计算机一级C语言模拟练习及参考 答案 2022年3月计算机一级C语言模拟练习及参考答案 1.以下排序方法中,最坏状况下比拟次数最少的是(D)。 A)冒泡排序 B)简洁选择排序 C)直接插入排序 D)堆排序 2.以下数据构造中,属于非线性构造的是(C)。 A)循环队列 B)带链队列 C)二叉树 D)带链栈 3.以下数据构造中,能够根据“先进后出”原则存取数据的是(B)。 A)循环队列 B)栈 C)队列 D)二叉树

4.对于循环队列,以下表达中正确的选项是(D)。 A)队头指针是固定不变的 B)队头指针肯定大于队尾指针 C)队头指针肯定小于队尾指针 D)队头指针可以大于队尾指针,也可以小于队尾指针 5.算法的空间简单度是指(A)。 A)算法在执行过程中所需要的计算机存储空间 B)算法所处理的数据量 C)算法程序中的语句或指令条数 D)算法在执行过程中所需要的临时工作单元数 6.以下表达中正确的选项是(B)。 A)线性表的链式存储构造与挨次存储构造所需要的存储空间是一样的 B)线性表的链式存储构造所需要的存储空间一般要多于挨次存储构造 C)线性表的链式存储构造所需要的存储空间一般要少于挨次存储构造 D)线性表的链式存储构造所需要的存储空间与挨次存储构造没有任何关系 7.以下表达中正确的选项是(D)。

A)栈是一种先进先出的线性表 B)队列是一种后进先出的线性表 C)栈与队列都是非线性构造 D)栈与队列都是线性构造 8.以下表达中正确的选项是(C)。 A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化 B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化 C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化 D)在栈中,栈中元素不会随栈底指针与栈顶指针的变化而动态变化 9.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)(D)。 A)3 B)4 C)6 D)7

2022年9月计算机等级考试二级C语言模拟真题及答案

年9 月全国计算机等级考试二级笔试试卷 C 语言程序设计(附答案) (考试时间90 分钟,满分100 分) 一、选择题((1)—(10)、(21)—(40)每题2 分,(11)—(20)每题1 分,共70 分) 下列各题A)、B)、C)、D)四个选项中,只有一种选项是对旳旳,请将对旳旳选项填涂在答题卡相应位置上,答在试卷上不得分。(1)下列论述中对旳旳是 A)线性表旳链式存储构造与顺序存储构造所需要旳存储空间是相似旳 B)线性表旳链式存储构造所需要旳存储空间一般要多于顺序存储构造 C)线性表旳链式存储构造所需要旳存储空间一般要少于顺序存储构造 D)上述三种说法都不对 (2)下列论述中对旳旳是 A)在栈中,栈中元素随栈底指针与栈顶指针旳变化而动态变化B)在栈中,栈顶指针不变,栈中元素随栈底指针旳变化而动态变化C)在栈中,栈底指针不变,栈中元素随栈顶指针旳变化而动态变化D)上述三种说法都不对 (3)软件测试旳目旳是

A)评估软件可靠性 B)发现并改正程序中旳错误 C)改正程序中旳错误 D)发现程序中旳错误 (4)下面描述中,不属于软件危机体现旳是 A)软件过程不规范B)软件开发生产率低C)软件质量难以控制C)软件成本不断提高 (5)软件生命周期是指 A)软件产品从提出、实现、使用维护到停止使用退役旳过程 B)软件从需求分析、设计、实现到测试完毕旳过程 C)软件旳开发过程 D)软件旳运营维护过程 (6)面向对象措施中,继承是指 A)一组对象所具有旳相似性质 B)一种对象具有另一种对象旳性质 C)各对象之间旳共同性质 D)类之间共享属性和操作旳机制 (7)层次型、网状型和关系型数据库划分原则是 A)记录长度B)文献旳大小B)联系旳复杂限度D)数据之间旳联系方式 (8)一种工作人员可以使用多台计算机,而一台计算机可被多种人使用,则实体工作人员与实体计算机之间旳联系是

2022年湖南省常德市全国计算机等级考试C语言程序设计模拟考试(含答案)

2022年湖南省常德市全国计算机等级考试C语言程序设计模拟考试(含答案) 学校:________ 班级:________ 姓名:________ 考号:________ 一、单选题(12题) 1. 有如下定义:struct person {char name[9];int age;} struct person class[10]={ "John",17,"Paul",19,"Mary",18,"Adam",16};能输出字母M的是( ) A.printf("%c\n",class[3].name); B.printf("%c\n",class[3].name[1]); C.printf("%c\n",class[2].name[1]); D.printf("%c\n",class[2].name[0]); 2. 在以下一组运算中,优先级最高的运算符是( ) A.<= B.= C.% D.& & 3. 4.下列哪一种图的邻接矩阵是对称矩阵()。 A.有向图 B.无向图 C.AOV网 D.AOE网

5.有下列程序: fun(int x,int y) { static int m=0,i=2; i+=m+1;m=i+x+y;return m; } main() { int j=1,m=1,k; k=fun(j,m);print S(”%d,”,k); k=fun(j,m);printf(”%d\n”,k); ) 执行后的输出结果是()。 A.5,5 B.5,11 C.11,11 D.11,5 6.写出a*(b-c*d)+e-f/g*(h+i*j-k)的逆波兰表达式()。 A.a(b-c*d)*+e-(f/g(h+i*j-k)*) B.a(b-(cd*))*+e-(fg/(h+ij*-k)*) C.a(bcd*-)*+e-(fg/hij*+k-*) D.abcd*-*e+fg/hij*+k-*- 7.栈这种数据结构一般应用在()。 A.递归调用 B.子程序调用 C.表达式求值 D.A,B,C 8.算法的效率的分析主要包括两个方面()。 A.时间复杂度和空间复杂度 B.正确性和简单性 C.可读性和文档性 D.数据复杂性和程序复杂性

2021-2022学年江苏省徐州市全国计算机等级考试C语言程序设计模拟考试(含答案)

2021-2022学年江苏省徐州市全国计算机等级考试C语言程序设计模拟考试(含答案) 学校:________ 班级:________ 姓名:________ 考号:________ 一、单选题(12题) 1.设有6个结点的无向图,该图至少应有()条边才能确保是一个连通图。 A.7 B.5 C.8 D.6 2. 3. 4.下列定义数组的语句中正确的是()。 A.#defme N 10 int x[ N]; B.int N=10; int x[N]; C.int x[0..10]; D.int x[ ]; 5.

6.以下有关宏替换的叙述不正确的是()。 A.A.使用宏定义可以嵌套 B.宏定义语句不进行语法检查 C.双引号中出现的宏名不替换 D.宏名必须用大写字母表示 7. fgetc函数的作用是从指定文件读入—个字符,该文件的打开方式必须是______。 A.只读 B.追加 C.读或读写 D.以上均正确 8. 在数据流图(DFD)中,带有名字的箭头表示 A.模块之间的调用关系 B.程序的组成成分 C.控制程序的执行顺序 D.数据的流向 9.有以下程序

main() { union { char ch[2]; int d; }s; s.d=0x4321; printf("%x,%x\n",s.ch[0],s.ch[1]); } 在16位编译系统上,程序执行后的输出结果是______。 A.21,43 B.43,21 C.43,00 D.21,00 10.有以下程序: #include <stdio.h> main() {FILE *f; f=fopen(“fllea. txt”, “w”); fprintf( f,“ abc”); fclose(f); } 若文本文件filea. txt中原有内容为hello,则运行以上程序后,文件filea. txt中的内容为()。 A.abclo B.abc C.helloabc D.abchello 11.数组A中,每个元素的长度为4个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,该数组按行存放时,元素A[8][5]的起始地址为()。 A.SA+292 B.SA+296 C.SA+300 D.304 12.

相关主题