C试题及答案一
计算机一级C类试题及答案

计算机一级C类试题及答案一、选择题1. 下列哪个不是计算机内部的存储器?A. 内存B. 硬盘C. 高速缓存D. 寄存器2. 在计算机内部,数据的表示方式用二进制数表示,是因为A. 二进制只有0和1两个表示状态,简单易懂B. 二进制可以直接和硬件电路对应C. 二进制可以进行更高效的运算D. 二进制可以在不同计算机之间兼容3. 在计算机中,CPU的主要功能是A. 存储数据B. 执行程序指令C. 输入和输出数据D. 控制硬件设备4. 下列哪个不属于计算机网络的设备?A. 路由器B. 集线器C. 打印机D. 交换机5. 计算机系统的存储层次结构中,从上到下依次是A. 寄存器、高速缓存、内存、硬盘B. 寄存器、高速缓存、硬盘、内存C. 寄存器、内存、硬盘、高速缓存D. 内存、硬盘、高速缓存、寄存器二、填空题1. 程序的基本执行单位是______。
2. 计算机中的内存单元被编号,每个单元都有一个唯一的______。
3. IP地址是计算机在网络中的______。
4. 在二进制中,8个位的组合称为一个______。
5. 常用的操作系统有Windows、______和Linux。
三、简答题1. 简述冯·诺依曼体系结构。
答:冯·诺依曼体系结构是计算机系统中最基本的体系结构之一。
它包括主存储器、中央处理器(CPU)、输入/输出设备和控制器等组成部分。
其中,主存储器用于存储程序和数据,中央处理器负责执行程序指令和进行运算,输入/输出设备用于与外部环境进行数据的输入和输出,控制器则协调各个部件的工作。
冯·诺依曼体系结构的特点是程序和数据存储在同一内存中,以二进制形式表示,通过读取指令执行程序。
这种体系结构的优点是结构简单、易于理解和实现,易于扩展和维护。
2. 什么是计算机网络?答:计算机网络是指将多台计算机互连起来,通过通信设备和传输介质实现数据和信息的传输和共享的系统。
计算机网络的作用是实现不同计算机之间的数据通信和资源共享,使得用户可以方便地在不同计算机之间传输文件、共享打印机等。
c语言基础试题及答案

c语言基础试题及答案一、选择题1、在C语言中,引用数组元素时,其数组下标的数据类型允许是。
A、整型常量B、整型表达式C、整形常量或整形表达式D、任何类型的表达式2、以下对一维整型数组a的正确说明是____A、int a(10) ;B、int n=10,a[n];C、int n;scanf(“%d”,&n);int a[n];D、#define SIZE 10int a[SIZE];3、若有定义:int a[10],则对数组a元素的正确引用是A、a[10]B、a[3.5]C、a(5)D、a[10-10]4、以下能对一维数组a进行正确初始化的语句是。
A、int a[10]={0,0,0,0,0};B、int a[10]={} ;C、int a[ ] = {0} ;D、int a[10]={10*1} ;5、若有定义:int a[3][4],则对数组a元素的正确引用是________A、a[2][4]B、a[1,3]C、a(5)D、a[10-10]6、以下能对二维数组a进行正确初始化的语句是_______A、int a[2][]={{1,0,1},{5,2,3}} ;B、int a[][3]={{1,2,3},{4,5,6}} ;C、int a[2][4]={{1,2,3},{4,5},{6}} ;D、int a[][3]={{1,0,1},{},{1,1}} ;7、若有说明:int a[3][4]={0};则下面正确的叙述是_______A、只有元素a[0][0]可得到初值0B、此说明语句不正确C、数组a中各元素都可得到初值,但其值不一定为0D、数组a中每个元素均可得到初值08、下面是对s的初始化,其中不正确的`是_____A、char s[5]={“abc”};B、char s[5]={‘a’,’b’,’c’,’d’,’e’,’0’};C、char s[5]=””;D、char s[5]=”abcdef”;二、程序填空1、以下程序把一个由小到大的有序数列放在a[1]到a[n]中,a[0]用作工作单元,程序把读入的x值插入到a数组中,插入后,数组中的数仍然的序。
C语言试题及答案解析

C语言试题及答案解析C语言一、选择题(第题2分,共20分)1.一个C程序的执行是从A。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序文件的第一个函数开始,到本程序main 函数结束D)本程序的main函数开始,到本程序文件的最后一个函数结束2.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为C。
x=(i=4,j=16,k=32)A) 4 B) 16 C) 32 D) 523.设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为C。
A) 0~255 B) 0~C) 0~ D) 0~.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为D。
A) float B) char C) int D) double 5.putchar函数可以向终端输出一个D。
A)整型变量表达式B)实型变量值C)字符串D)字符或字符型变量值6.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式B;如果字符串长度小于5,则输出按方式C。
A)从左起输出该字符串,右补空格B)按原字符长从左向右全部输出C)右对齐输出该字符串,左补空格D)输出错误信息7.判断char型变量ch是否为大写字母的正确表达式是C。
A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)8.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是B。
if(x>y) z=x; x=y; y=z;A) x=10, y=20, z=30 B) x=20, y=30, z=30C) x=20, y=30, z=10 D) x=20, y=30, z=209.以下步伐段______C__.x=-1;do{x=x*x;}while(!x);A)是死轮回B)轮回履行二次C)循环执行一次D)有语法错误10.以下正确的描绘是___B____.A)continue语句的感化是竣事全部轮回的履行B)只能在循环体内和switch语句体内使用break语句C)在循环体内使用break语句或continue语句的作用相同D)从多层循环嵌套中退出时,只能使用goto语句二、填空题(每空2分,共20分)3.复合语句是将多个语句用花括号括起来构成一个语句。
c语言入门试题及答案

c语言入门试题及答案一、选择题1. 下列哪个是C语言的关键字?A) mainB) outputC) printD) if答案:D2. 在C语言中,用来声明整型变量的关键字是?A) intB) charC) floatD) double答案:A3. 下列哪个符号用于表示“等于”?A) ==B) !=C) >答案:A4. 在C语言中,用来表示字符类型的关键字是?A) intB) charC) floatD) double答案:B5. 下列哪个函数可以输出文本到屏幕上?A) scanfB) getcharC) printfD) gets答案:C二、填空题1. C语言中,整型变量的大小为________个字节。
答案:42. 下列代码的运行结果是什么?int x = 5;int y = 2;printf("%d", x % y);```答案:13. C语言中,用于标识单行注释的符号是________。
答案://4. 下列代码的运行结果是什么?```char name[10] = "John";printf("%s", name);```答案:John三、编程题1. 编写一个程序,接收用户输入的两个整数,并计算它们的和。
```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;printf("它们的和为:%d\n", sum);return 0;}```2. 编写一个程序,判断一个输入的整数是否为偶数。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d是一个偶数。
c语言试题及答案_百度文库

c语言试题及答案_百度文库1. 选择题- 题目1:以下哪个是C语言中的关键字?- A. int- B. INT- C. Integer- D. int32- 答案:A- 题目2:C语言中,哪个运算符用于比较两个值是否相等?- A. ==- B. =- C. !=- D. <=- 答案:A2. 填空题- 题目3:在C语言中,用于定义一个整型变量的关键字是____。
- 答案:int- 题目4:C语言中,用于执行条件判断的关键字是____。
- 答案:if3. 简答题- 题目5:请简述C语言中函数的定义格式。
- 答案:函数定义的格式通常为:`返回类型函数名(参数列表) { 函数体; }`。
- 题目6:编写一个C语言程序,计算并输出1到100的和。
- 答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("Sum of 1 to 100 is: %d\n", sum);return 0;}```5. 判断题- 题目7:C语言中,数组的索引是从0开始的。
- 答案:正确- 题目8:在C语言中,`char`类型可以存储一个汉字。
- 答案:错误6. 多选题- 题目9:以下哪些是C语言的标准库函数?- A. printf- B. scanf- C. malloc- D. strcpy- 答案:A, B, C, D- 题目10:给定一个整数数组`int arr[] = {1, 2, 3, 4, 5};`,请计算数组中所有元素的和。
- 答案:158. 论述题- 题目11:请论述C语言中指针的概念及其重要性。
- 答案:指针是C语言中一个非常重要的概念,它存储了变量的内存地址。
通过指针,可以访问和操作内存地址指向的变量,实现动态内存分配、函数参数传递等高级功能。
C语言试题库(含答案)

D、print f("%c\n",class[2].name[0]);
标准答案:D
【5】设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A、f+=g
B、f-=g+5
C、f*=g-5
D、f/=g*5
标准答案:A
if(ch=='/')w=a/b;
B、B)if(ch=='*')w=a*b;
else if(ch=='/')w=a/b;
if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
C、if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
if(ch=='*')w=a*b;
A、15
B、10
C、25
D、20
标准答案:A
【15】程序段的基本结构中,不包含()。
A、函数结构
B、循环结构
C、顺序结构
D、分支结构
标准答案:A
【1】执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是。
A、1
B、2
C、1,2
D、12
标准答案:c
【3】若用数组名作为函数调用的实参,传递给形参的是()。
#include<stdio.h>
main()
{int i=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)可以实现对单元格Al到A5内数值求和的功能。
答案:SUM
试题四:判断题
4.CPU是计算机的核心组件,用于执行计算机指令和处理数据。
答案:正确
试题五:编程题
5.请编写一个C语言程序,实现从1到10的累加,并输出结果。
答案:
、、、C
#include<stdio.h>
intmain(){
intsum=0;
for(inti=1;i<=10;i++){
sum+=i;
)
Printf("累加结果为:%d∖nπ,sum);
return0;
试题六:简答题
6.简述什么是操作系统,并列举出几个常见的操作系统。
答案:操作系统是一种管理和控制计算机硬件与软件资源的系统软件。
常见的操作系统有WindoWs、macOS、LinUX等。
通过以上一级C计算机考试试题及答案,我们可以了解一些计算机基础知识和编程能力要求。
希望以上内容能帮助到您。
C语言程序设计基础试题一及答案

C语⾔程序设计基础试题⼀及答案《程序设计基础》考试试卷⼀班级姓名学号____________⼀、选择题(20分)1.算法具有五个特性,以下选项中不属于算法特性的是(A)有穷性(B)简洁性(C)可⾏性(D)确定性2.以下选项中可作为C语⾔合法常量的是(A)-80. (B)-080 (C) (D)3.以下叙述中正确的是(A)⽤C语⾔实现的算法必须要有输⼊和输出操作(B)⽤C语⾔实现的算法可以没有输出但必须要有输⼊(C)⽤C程序实现的算法可以没有输⼊但必须要有输出(D)⽤C程序实现的算法可以既没有输⼊也没有输出4.以下不能定义为⽤户标识符是(A)Main (B) _0 (C) _int (D) sizeof5.以下选项中,不能作为合法常量的是(A) (B) (C)+4 (D)6.数字字符0的ASCII值为48,若有以下程序main(){char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);} 程序运⾏后的输出结果是(A)3,2 (B)50,2 (C)2,2 (D)2,507.有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运⾏后的输出结果是(A) (B) (C) (D)8.有以下语句:int b;char c[10];,则正确的输⼊语句是A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);(C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);9.有以下程序main(){int m,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p); } 若想从键盘上输⼊数据,使变量M中的值为123,N中的值为456,P中的值为789,则正确的输⼊是A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 78910.有以下程序main(){int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b); }程序运⾏后的输出结果是A)6,1 B)2,1 C)6,0 D)2,011.有以下程序main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);}程序运⾏后的输出结果是(A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 312.若整型变量a、b、c、d中的值依次为:1、4、3、2。
c语言试题及答案

一、单选题1.在C语言中,下列类型属于构造类型的是( D )A.整型 B.字符型 C.实型 D.数组类型2.下列字符串不是标识符的是( D )3. 在C语言中,回车换行符是( A )A. nB. tC. vD. b4. 在C语言中,语句和数据定义是用( C )作为结束标记的A.句号 B.逗号 C.分号 D.括号5. 设有如下定义:int x=10,y=5,z;则语句printf(“%dn”,z=(x+=y,x/y));的输出结果是( C )A.0 B.1 C.3 D.46. 10.以下程序的输出结果是( B )main( ){char c1=’8’,c2=’2’;printf(“%c,%c,%d,%dn”,c1,c2,c1-c2,c1+c2);}A.因输出格式不合法,输出出错信息B.8,2,6,106 C.8,2,6,10 D.8,2,5,97.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是( A )main( ){int x;scanf(“%d”,&x);if(x++>5) printf(“%dn”,x);else printf(“%dn”,x--);}A.7和5 B.7和4 C.6和48.表达式(int)2.1416的值时( A )A. 2B. 2.1C. 0D. 39.下列运算符优先级最高的是( B )A. >B. +C. &&D. !=10. C语言容许函数值类型缺省定义,此时该函数值隐含的类型时( B )A. float型B. Int型C. Long 型D. Double型11、C程序的基本构成单位是( C)A、子程序B、过程C、函数D、文件12、C语言中要求操作数都为整型数据的算术符是(C )A、/B、!C、%D、= =13、若int x=1,y=1;则表达式(!x||y--)的值是(B )。
A、0B、1C、2D、-114、能正确表示逻辑关系:a≥10或a≤0的C语言表达式(D )A、a>=10 or a<=0B、a>=0|a<=10C、a>=10 && a<=0D、a>=10||a<=015、double x,y;表达式x=1,y=x+3/2的值是(C )。
C语言试题-1(含答案)

C语言试题2019.03一、单项选择题(共30分,每题1分)1.在PC机中,‘\n’在内存占用的字节数是()A.1 B.2 C. 3 D.42.字符串“ABC”在内存占用的字节数是()A.3 B. 4 C.6 D.83.在C语言中,合法的长整型常数是()A.0L B.4962710 C.0.054838743 D.2.1869 e104.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次是()A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,25.设有语句int a=3;,则执行了语句a+=a-=a*a后,变量a的值是()A.3 B.0 C.9 D.-126.设int k=32767;执行k=k+1;后k值为()最大值与最小值首尾相连A.32768 B.-32768 C.0 D.-17.下列正确的标识符是()A.hot_do B.a+b C.test! D.%y8.设int a=5,使b不为2的表达式是()A.b=6-(--a) B.b=a%2 C.b=a/2 D.b=a>3?2:19.执行x=(6*7%8+9)/5;后,x的值为()A.1 B.2 C.3 D.410.执行语句x=(a=3,b=a--)后,x,a,b的值依次为()A.3,2,3 B.2,3,2 C.3,3,2 D.3,2,211.设a=-3;执行(a>0)?a:-a;后,a的值为()A.3 B.1 C.0 D.-312.设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为()A.7 B.8 C.9 D.213.下面正确的字符常量是()A.”c” B.’\\’’ C.’W’ D. ‘’14.若有代数式3ae/bc,则不正确的c语言表达式是()A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/c*315.在C语言中,要求运算数必须是整型的运算符是()书中55页A./ B.++ C.!= D.%16.若有说明语句:char c=’\72’;则变量c ( )A.包含1个字符 B.包含2个字符C.包含3个字符 D.说明不合法,c值不确定17.sizeof (float)是()返回值为4。
C 试题及答案

C++程序设计模拟试卷(一)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 编写C++程序一般需经过的几个步骤依次是()A. 编辑、调试、编译、连接B. 编辑、编译、连接、运行C. 编译、调试、编辑、连接D. 编译、编辑、连接、运行答案:B解析:(P21)经过编辑、编译、连接和运行四个步骤。
编辑是将C++源程序输入计算机的过程,保存文件名为cpp。
编译是使用系统提供的编译器将源程序cpp生成机器语言的过程,目标文件为obj,由于没有得到系统分配的绝对地址,还不能直接运行。
连接是将目标文件obj转换为可执行程序的过程,结果为exe。
运行是执行exe,在屏幕上显示结果的过程。
2. 决定C++语言中函数的返回值类型的是()A. return语句中的表达式类型B. 调用该函数时系统随机产生的类型C. 调用该函数时的主调用函数类型D. 在定义该函数时所指定的数据类型答案:D解析:(P51)函数的返回值类型由定义函数时的指定的数据类型决定的。
A项的表达式的值要转换成函数的定义时的返回类型。
3. 下面叙述不正确的是()A. 派生类一般都用公有派生B. 对基类成员的访问必须是无二义性的C. 赋值兼容规则也适用于多重继承的组合D. 基类的公有成员在派生类中仍然是公有的答案:D解析:(P136)继承方式有三种:公有、私有和保护。
多继承中,多个基类具有同名成员,在它们的子类中访问这些成员,就产生了二义性,但进行访问时,不能存在二义性。
赋值兼容规则是指派生类对象可以当作基类对象使用,只要存在继承关系,所以单继承或多继承都适用。
基类中的公有成员采用私有继承时,在派生类中变成了私有成员,所以D项错误。
4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()A. 类B. 对象C. 函数体D. 数据块答案:A解析:(P39)类即数据和操作的组合体,数据是类的静态特征,操作是类具有的动作。
C语言 程序设计基础试题一及答案

《程序设计基础》考试试卷一班级姓名学号____________一、选择题(20分)1.算法具有五个特性,以下选项中不属于算法特性的是(A)有穷性(B)简洁性(C)可行性(D)确定性2.以下选项中可作为C语言合法常量的是(A)-80. (B)-080 (C) (D)3.以下叙述中正确的是(A)用C语言实现的算法必须要有输入和输出操作(B)用C语言实现的算法可以没有输出但必须要有输入(C)用C程序实现的算法可以没有输入但必须要有输出(D)用C程序实现的算法可以既没有输入也没有输出4.以下不能定义为用户标识符是(A)Main (B) _0 (C) _int (D) sizeof5.以下选项中,不能作为合法常量的是(A) (B) (C)+4 (D)6.数字字符0的ASCII值为48,若有以下程序main(){char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);} 程序运行后的输出结果是(A)3,2 (B)50,2 (C)2,2 (D)2,507.有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运行后的输出结果是(A) (B) (C) (D)8.有以下语句:int b;char c[10];,则正确的输入语句是A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);(C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);9.有以下程序main(){int m,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p); } 若想从键盘上输入数据,使变量M中的值为123,N中的值为456,P中的值为789,则正确的输入是A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 78910.有以下程序main(){int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b); }程序运行后的输出结果是A)6,1 B)2,1 C)6,0 D)2,011.有以下程序main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);}程序运行后的输出结果是(A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 312.若整型变量a、b、c、d中的值依次为:1、4、3、2。
c语言试题及答案

第1章C语言概述习题1. 单项选择题(1) C 语言是在 B 语言的基础上产生的。
A. 回车符B. 冒号C. 逗号D. 分号(2) 在C 语言中,每个语句必须以 D 结束。
A. 回车符B. 冒号C. 逗号D. 分号(3) 标识符和关键字间,要用 C 隔开。
A. 回车符B. 冒号C. 空格D. 分号(4) 用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。
A. 生成可执行目标文件B. 生成目标文件C. 输出运行结果D.自动保存源文件(5) 下列说法中正确的是( B )。
A. 由于C 源程序是高级语言程序,因此一定要在TC 软件中输入B. 由C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入C. 由于C 程序是高级语言程序,因此输入后即可执行D. 由于C 程序是高级语言程序,因此它由命令组成(6) 下列说法中正确的是( A )。
A. C 语言程序由主函数和0 个或多个函数组成B. C 语言程序由主程序和子程序组成C. C 语言程序由子程序组成D. C 语言程序由过程组成(7) 下列说法中错误的是( D )。
A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行2. 填空题(1) C 语言只有37 个关键字和9 种控制语句。
(2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。
(3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。
(4) 在C 语言程序中允许出现的字符集是ASCII码字符集。
(5) C 语言的程序中有特殊含义的英语单词称为保留字。
(6) C 语言标识符的长度是前8 位有效。
(7) C 语言中,标识符的定义规则是以字母或下划线为开头。
(8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以*/ 符号作为结束标记。
本科c语言试题及答案

本科c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. intC. voidD. return答案:B2. 下列关于C语言中数组的描述,正确的是:A. 数组必须初始化B. 数组的大小在编译时确定C. 数组可以是二维的D. 数组不能赋值答案:B3. C语言中,以下哪个运算符用于逻辑与操作?A. &&B. ||C. !D. %答案:A4. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcat()B. strcmp()C. strcpy()D. strlen()答案:C5. 下列关于C语言中指针的描述,错误的是:A. 指针可以存储变量的地址B. 指针可以进行算术运算C. 指针可以存储字符串D. 指针不能存储数组的地址答案:D6. C语言中,以下哪个函数用于打开文件?A. fopen()B. fclose()C. freopen()D. fgetc()答案:A7. 在C语言中,以下哪个关键字用于定义结构体?A. intB. structC. unionD. enum答案:B8. 下列关于C语言中函数的描述,正确的是:A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 函数不能嵌套定义答案:C9. C语言中,以下哪个关键字用于定义枚举?A. structB. enumC. unionD. typedef答案:B10. 下列关于C语言中宏定义的描述,正确的是:A. 宏定义可以带参数B. 宏定义可以定义函数C. 宏定义可以定义变量D. 宏定义可以定义数组答案:A二、填空题(每题2分,共20分)1. 在C语言中,用____关键字定义的函数可以没有返回值。
答案:void2. 当需要在C语言中定义一个具有固定大小的数组时,可以使用____关键字。
答案:static3. 在C语言中,使用____运算符可以交换两个变量的值。
c语言试卷1及答案

1.有以下程序 main() { int i; for(i=0;i<3;i++) switch(i) { case 1:printf("%d",i); case 2:printf("%d",i); default:printf("%d",i); } }
执行后输出结果是 2.有以下程序
A. 5.5
B. 5.0
C. 6
D. 6.0
13. 在 C 语言中,5 种基本数据类型的存储空间长度的排列顺序为( )。
A.char < int < long <= float < double
B. char = int < long <= float < double
C. char < int < long = float = double
main() { int i=1,j=1,k=2;
if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k); } 执行后输出结果是
3.有以下程序
main() { int a=5,b=4,c=3,d=2;
if(a>b>c) printf("%d\n",d);
else if((c-1>=d)==1) printf("%d\n",d+1);
班级:
姓名:
诸城市技工学校 2014―2015 学年第二学期期末考试
《C 程序设计》试题
命题:郭霞 审核:卢桂强
c语言试题1有答案

一、单项选择题(每题2分,15小题,共30分)1.C语言源程序是由组成的。
A) 过程B) 函数C) 子程序D) 主程序和子程序2.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是。
A) 有零个或多个输入B) 有零个或多个输出C) 有穷性D) 可行性3.以下选项中合法的C语言标识符是。
A) long B) _2Test C) 3Dmax D) A.dat4.下列转义字符中错误的是。
A) '\000'B) '\14'C) '\x111'D) '\2'5.对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中,是正确的。
A) 语法错误B) f为5.0C) f为0.0D) f为2.06.若变量a,b已经正确定义并赋值,符合C语言语法的表达式是。
A) a2+b B) a*a+b C) a×a+b D) a·a+b7.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c 的值为2,则正确的数据输入方式是。
A) 132↙B) 1,3,2↙C) a=1b=3c=2↙D) a=1,b=3,c=2↙8.若 w=1,x=2,y=3,z=4,则条件表达式w<x ?w : y<z ?y : z的值是。
A) 4B) 3C) 2D) 19.设int a=0,b=0,m=0,n=0;则执行(m = a==b)||(n = b==a)后m和n的值分别是。
A) 0,0 B) 0,1 C) 1,0 D) 1,110.以下for循环的执行次数是。
for (x=0,y=0; (y=123)&&(x<4);x++) ;A) 无限循环B) 循环次数不定C) 4次D) 3次11.下面程序段的输出结果是。
一级c类计算机试题及答案

一级c类计算机试题及答案试题一:1. 在C语言中,下列声明中哪个是正确的?A. int* arr;B. char arr[];C. double arr[];D. float* arr;答案:A. int* arr;解析:选项A中声明了一个指针变量arr,指向int类型的数据;选项B中声明了一个字符数组arr,但没有指定数组的大小;选项C和D 中声明了数组arr,但无法确定数组大小,因此不正确。
2. 以下哪个不是C语言的基本数据类型?A. intB. doubleC. voidD. string答案:D. string解析:C语言的基本数据类型包括整型(int)、字符型(char)、浮点型(float和double)以及空类型(void)等,而string并不是C语言的基本数据类型,它需要使用字符数组来表示。
3. 下列哪个选择正确地将变量x的值交换给变量y?A. int temp = x; x = y; y = temp;B. y = x; x = y;C. int temp = x; y = x; x = temp;D. y = temp; temp = x; x = y;答案:A. int temp = x; x = y; y = temp;解析:选项A通过引入一个临时变量temp,将x的值保存起来,然后先将x的值赋给y,再将temp的值赋给x,从而成功地交换x和y 的值。
试题二:1. 在C语言中,以下不是循环结构的是:A. for循环B. while循环C. do-while循环D. if条件语句答案:D. if条件语句解析:选项A、B和C都是C语言中的循环结构,用于重复执行一段代码;选项D是条件语句,用于根据条件执行不同的代码块,不属于循环结构。
2. 下列代码段的输出结果是什么?```c#include <stdio.h>int main() {int i = 0;while (i < 5) {printf("%d ", i);i++;}return 0;}```A. 0 1 2 3 4B. 1 2 3 4 5C. 0 1 2 3 4 5D. 1 2 3 4答案:A. 0 1 2 3 4解析:代码段中使用了while循环,当i小于5时,输出i的值并将i加1,直到i达到5时,循环结束。
计算机一级c考试试题及答案

计算机一级c考试试题及答案一、选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _2variableD. variable-2答案:B2. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. all of the above答案:D3. 在C语言中,以下哪个选项是正确的字符串定义?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"[5]D. 'Hello, World!'[5]答案:A4. 下列哪个选项是C语言中的正确注释方式?A. // This is a commentB. /* This is a comment */C. // This is a comment/* This is a comment */D. all of the above答案:D5. 在C语言中,以下哪个选项是正确的二进制表示?A. 0b1010B. 0x10C. 0101D. all of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的内存空间通常是______位。
答案:322. 以下代码段的输出结果是______。
```c#include <stdio.h>int main() {int a = 5;printf("%d", a++);return 0;}```答案:53. 在C语言中,使用______函数可以将字符串转换为浮点数。
答案:atof4. 以下代码段的输出结果是______。
```c#include <stdio.h>int main() {char c = 'A';printf("%d", c);return 0;}```答案:655. 在C语言中,使用______关键字可以定义一个函数。
国家开放大学C语言试题及答案

1.C语言中的循环类语句有3条,它们是()。
选择一项:A. for,if,whileB. for,while,doC. while,do,switchD. for,break,do正确答案是:for,while,do2.C语言中的跳转类语句有四条,它们是goto,return和()。
A. break,constB. static,continueC. break,continueD. while,extern正确答案是:break,continue3.当不需要函数返回任何值时,则所使用的返回类型为()。
A. IntB. unionC. voidD. Void 正确答案是:void4.在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。
选择一项:A. 表达式B. 语句C. 函数体D. 参数表正确答案是:参数表5.在一个程序文件的开始,若需要使用一个包含命令包含一个头文件时,则命令标识符为A. #cludeB. #constC. #includeD. #defile正确答案是:#include6.在#include预处理命令中,不可以包含()。
A. 系统头文件B. 程序文件C. 用户头文件D. 目标文件正确答案是:目标文件7.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据占用的字符位置个数为()。
选择一项:A. 5B. 6C. 4D. 2正确答案是:68.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其小数部分占用的字符位置个数为()。
选择一项:A. 5B. 6C. 4D. 2正确答案是:29.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其整数部分占用的字符位置个数为()。
A. 6B. 4C. 3D. 2正确答案是:310.在scanf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输入的数据类型为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C + + 程序设计模拟试卷(一)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 编写C++程序一般需经过的几个步骤依次是()A. 编辑、调试、编译、连接B. 编辑、编译、连接、运行C. 编译、调试、编辑、连接D. 编译、编辑、连接、运行答案:B解析:经过编辑、编译、连接和运行四个步骤。
编辑是将C++源程序输入计算机的过程,保存文件名为cpp。
编译是使用系统提供的编译器将源程序cpp生成机器语言的过程,目标文件为obj,由于没有得到系统分配的绝对地址,还不能直接运行。
连接是将目标文件obj转换为可执行程序的过程,结果为exe。
运行是执行exe,在屏幕上显示结果的过程。
2. 决定C++语言中函数的返回值类型的是()A. return 语句中的表达式类型B. 调用该函数时系统随机产生的类型C. 调用该函数时的主调用函数类型D. 在定义该函数时所指定的数据类型答案:D解析:函数的返回值类型由定义函数时的指定的数据类型决定的。
A项的表达式的值要转换成函数的定义时的返回类型。
3. 下面叙述不正确的是()A. 派生类一般都用公有派生B. 对基类成员的访问必须是无二义性的C. 赋值兼容规则也适用于多重继承的组合D. 基类的公有成员在派生类中仍然是公有的答案: D 解析:继承方式有三种:公有、私有和保护。
多继承中,多个基类具有同名成员,在它们的子类中访问这些成员,就产生了二义性,但进行访问时,不能存在二义性。
赋值兼容规则是指派生类对象可以当作基类对象使用,只要存在继承关系,所以单继承或多继承都适用。
基类中的公有成员采用私有继承时,在派生类中变成了私有成员,所以D项错误。
4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()A. 类B. 对象C. 函数体D. 数据块答案:A解析:类即数据和操作的组合体,数据是类的静态特征,操作是类具有的动作。
5. 在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的()A. 私有成员B. 公有成员C. 保护成员D. 保护成员或私有成员答案:A解析:在派生类中基类的保护或者基类公有都可以直接访问,基类的私有成员只能是基类的成员函数来访问。
所以选择A项。
6. 对基类和派生类的关系描述中,错误的是()A. 派生类是基类的具体化B. 基类继承了派生类的属性C. 派生类是基类定义的延续D. 派生类是基类的特殊化答案:B解析:派生类的成员一个是来自基类,一个来自本身,所以派生类是基类的扩展,也是基类的具体化和特殊化,派生类是对基类扩展。
B项基类不能继承派生类成员,所以错误。
7. 关于this 指针使用说法正确的是()A. 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码B. 保证基类私有成员在子类中可以被访问。
C. 保证基类保护成员在子类中可以被访问。
D. 保证基类公有成员在子类中可以被访问。
答案:A解析:this 指针是隐藏的,可以使用该指针来访问调用对象中的数据。
基类的成员在派生类中能否访问,与继承方式有关,与this没有关系。
所以选择A项。
8. 所谓多态性是指()A. 不同的对象调用不同名称的函数B. 不同的对象调用相同名称的函数C. 一个对象调用不同名称的函数D. 一个对象调用不同名称的对象答案:B 解析:多态性有两种静态多态性和动态多态性,静态多态性是指调用同名函数,由于参数的不同调用不同的同名函数;动态多态性是指不同对象调用同名函数时,由于对象不同调用不同的同名函数。
多态性肯定具有相同的函数名,所以选择B 项。
9. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为()A. 内联函数B. 重载函数C. 递归函数D. 嵌套函数答案: A 解析:内联函数特征代码少,频繁调用,执行效率高。
重载函数解决统一接口的问题;递归是子程序调用,程序调用要耗费很多空间和时间,循环/ 迭代都比递归有效率得多,递归只是从形式上,逻辑比较简洁。
嵌套函数即反复调用,速度较慢。
所以选择A®o10. 下面函数模板定义中不正确的是()A. AB. BC. CD. D 答案:A 解析:A项中F是一个返回Q类型的值,而return中用返回类型作为返回值错误。
所以选择A项。
11. 假设ClassY:publicX ,即类丫是类X的派生类,则说明一个丫类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为()A. X,Y;Y,XB. X,Y;X,YC. Y,X;X,YD. Y,X;Y,X 答案:A 解析:派生类构造函数必须对这三类成员进行初始化,其执行顺序:调用基类构造函数;调用子对象的构造函数;派生类的构造函数体。
析构函数在执行过程中也要对基类和成员对象进行操作,但它的执行过程与构造函数正好相反,即对派生类新增普通成员进行清理;调用成员对象析构函数,对派生类新增的成员对象进行清理;调用基类析构函数,对基类进行清理,所以选择A项。
12. 适宜采用inline 定义函数情况是()A. 函数体含有循环语句B. 函数体含有递归语句C. 函数代码少、频繁调用D. 函数代码多、不常调用答案:C解析:内联函数具有程序代码少、频繁调用和执行效率高的特征,所以选择(项。
13. 假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;}, 则执行A x(4,5);语句后,和的值分别为()A. 3和15B. 5和4C. 4和20D. 20和5答案:C解析:a=4,因为后减,b的值与a、bb相关,b= 4*5=20,而与aa没有任何关系。
14. 在类中说明的成员可以使用关键字的是()A. publicB. externC. cpuD. register答案:A解析:extern用于声明外部变量的。
register声明寄存器类型变量。
无cpu类型。
它们都不能声明类成员。
public声明为公有访问权限,所以选择A项。
15. 下列不能作为类的成员的是()A. 自身类对象的指针B. 自身类对象C. 自身类对象的引用D. 另一个类的对象答案:B解析:类的定义,如果有自身类对象,使得循环定义,B项错误。
在类中具有自身类的指针,可以实现链表的操作,当然也可以使用对象的引用。
类中可以有另一个类的对象,即成员对象。
所以选择B 选项。
16. 使用地址作为实参传给形参,下列说法正确的是()A. 实参是形参的备份B. 实参与形参无联系C. 形参是实参的备份D. 实参与形参是同一对象答案: D 解析:地址作为实参,表示实参与形参代表同一个对象。
如果实参是数值,形参也是普通变量,此时形参是实参的备份。
所以选择D项。
17. 下列程序的输出结果是()#include <>void main(){int n [][ 3]={10,20,30,40,50,60};int (*p)[3];p=n;cout<<p[ 0] [ 0]<<","<<*(p [0]+1)<<" ,"<<(*p) [2]<<endl;}A. 10,30,50B. 10,20,30C. 20,40,60D. 10,30,60答案:B解析:如果数组元素都是相同类型的指针,则称这个数组为指针数组。
指针数组一般用于处理二维数组。
声明的格式为:<数据类型><(*变量名)>< [元素个数] >。
p表示指向数组n的行指针。
如果将指针的初始化(*p) :3] =b;地址的等价形式:p+i p : i ] *(p+i)都表示b数组第i+1行的第1个元素的首地址。
*(p+i)+jp [i ] +j &p [i ][j ]都表示b数组第i+1行、第j+1列元素的地址。
值的等价形式:*(*(p+i)+j) *(p [ i ] +j) p [ i ][ j ]都表示b数组第i+1、第j+1列元素的值。
所以题目分别访问p[0][ 0],p[0][ 1],p[0][ 2]。
18. 在C++中,使用流进行输入输出,其中用于屏幕输入()A. cinB. cerrC. coutD. clog 答案:A解析:(1)标准输入流cin : istream类的对象。
(2)标准输出流cout : ostream类的对象。
⑶非缓冲型标准出错流cerr : ostream类的对象。
(4)缓冲型标准出错流clog : ostream类的对象19. 假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a() 的格式为()A.B. ()C. x->aD. (*x ).a()答案:B解析:对象访问成员的方式为:对象名. 成员。
指针可以有两种:(* 对象指针). 成员或者对象指针->成员。
A选项是访问数据成员,B项是访问成员函数。
20. 关于对象概念的描述中,说法错误的是()A. 对象就是C语言中的结构变量B. 对象代表着正在创建的系统中的一个实体C. 对象是类的一个变量D. 对象之间的信息传递是通过消息进行的答案:A解析:A对象在C+ +中才有,包括数据和操作两项,而C中的变量只有数据,没有操作。
所以A项错误。
二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
1. C++的流库预定义了4个流,它们是cin、cout、clog和 _____ 。
答案:(P193)cerr[解析]cin 、cout 、clog 和cerr 分别用于标准输入、输出、标准错误流(缓冲)和标准错误流 (非缓冲)。
2. 每个对象都是所属类的一个___。
答案:实例[解析]类是对象的抽象,对象是类的一个实例。
3. 在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用语句___。
答案:int *ip=new int [10];[解析]new用来动态开辟空间。
常用来产生动态数组及对象构造函数。
4. 函数模板中紧随template 之后尖括号内的类型参数都要冠以保留字___。
答案:class[解析]类模板的使用。
template <class T>, 也可以引入多参数的如:template <classT1,class T2,... ,class Tn>5. 定义类的动态对象数组时,系统只能够自动调用该类的___构造函数对其进行初始化。
答案:无参[解析]使用new创建对象数组,调用无参构造函数。