C++语言程序设计期末复习题
C语言程序设计期末复习题及答案(1)

5. n为整型,表达式n=1,n+2,n*5 的值是__5_______。
6. 已知:float x=8.53; 整形变量i=(int)x;则i=__8_____。
7. 已知:int x=5;语句y=x++*x++;执行完成后x=___7__,y=_25____。
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
for (j=0;j<n-1-i;j++)
if (a[j]>a[j+1])
{c=a[j];a[j]=a[j+1];a[j+1]=c;}
}
2. 本题20分.总体程序完整性3分,结构体定义正确3分,结构体数组定义以及初始化正确6分,指针定义正确3分,输出判断正确3分,输出姓名地址2分。以下代码为参考代码,答案不唯一。
(B)在指针操作中,运算符“&”是取指针指向的对象的值。
(C)在指针操作中,运算符“*”的操作对象是一个地址。
(D)语句int *ip;定义了指针变量只能存放整型变量的地址。
14.判断字符串str1是否大于字符串str2,应当使用___d________。
(A)if (str1>str2)
C语言程序设计期末考试复习题及答案[]
![C语言程序设计期末考试复习题及答案[]](https://img.taocdn.com/s3/m/1af47aac6137ee06eef91860.png)
C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。
switch(i+1){ case 10: i++。
break。
case 11: ++i。
case 12: ++i。
break。
default : i=i+1。
}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。
中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。
对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。
则语句printf(“%c”,*(p+2))运行结果是 ( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。
函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。
C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述中,正确的是?A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 函数必须有参数答案:C3. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B4. 下列关于数组的描述中,错误的是?A. 数组可以是多维的B. 数组的下标从0开始C. 数组的大小在编译时确定D. 数组可以动态分配答案:D5. C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. *D. void答案:C6. 在C语言中,以下哪个关键字用于定义一个静态变量?A. staticB. externC. registerD. auto答案:A7. 下列关于C语言中文件操作的描述中,正确的是?A. 文件操作只能使用标准库函数B. 文件指针必须使用FILE类型C. 文件操作必须使用fclose函数关闭文件D. 文件操作不能使用缓冲区答案:B8. 在C语言中,以下哪个关键字用于定义一个宏?A. defineB. typedefC. enumD. struct答案:A9. 下列关于C语言中位运算的描述中,错误的是?A. & 表示按位与B. | 表示按位或C. ^ 表示按位异或D. ~ 表示按位取反答案:B10. 在C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的内存空间通常是______个字节。
答案:42. C语言中,使用______关键字可以定义一个无限循环。
答案:while3. C语言中,数组的元素默认初始化为______。
大一c程序设计期末考试题及答案

大一c程序设计期末考试题及答案在本次大一C程序设计的期末考试中,我们精心准备了以下题目,旨在考察同学们对C语言基础知识的掌握程度以及编程能力。
以下是考试题目及参考答案。
一、选择题(每题2分,共20分)1. C语言中,哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable-nameC. _variableD. variable$name答案:C3. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 若有以下代码片段:```cint a = 5;int b = 10;a = b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 0答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D6. C语言中,哪个函数用于输入字符?A. scanf()B. printf()C. getchar()D. getc()答案:C7. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. do-while8. 在C语言中,哪个关键字用于定义数组?A. arrayB. listC. vectorD. int[]答案:D9. 下列哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'Hello' 'World'答案:A10. 在C语言中,哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. sprintf()D. fprintf()答案:A二、填空题(每空2分,共20分)1. 在C语言中,使用____关键字可以定义一个函数。
完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。
中国石油大学《C语言程序的设计》期末复习试题与答案

《C语言程序设计》期末复习题一、选择题1.能将高级语言编写的源程序转换成目标程序的是()A.程序 B. 解释程序 C. 编译程序 D.编辑程序2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是()。
A. 10<a<15B. a==11||a==12||a==13||a==14C. a>10&&a<15D.!(a<=10)&&!(a>=15)3.当调用函数时,实参是一个数组名,则向函数传送的是( )。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值4.执行下面的程序段后,k的值是()int k=1,n=325;do { k*=n%10;n/=10;}while(n);A. 3B. 30C. 523D. 3255.若有以下数组说明,则i=6;a[a[i]]元素数值是()。
int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.3B.8C.6D.56.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()A. for(i=1,p=1;i<=5;i++) p*=i;B. for(i=1;i<=5;i++){ p=1; p*=i;}C. i=1;p=1;while(i<=5){p*=i; i++;}D. i=1;p=1;do{p*=i; i++; }while(i<=5);7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( ) A. 12 B. 3 C. 4 D.无确定值8.设有如下程序段,则执行p=s;语句后,以下叙述正确的是( )。
char s[20]= “Bejing”,*p;p=s;A.可以用*p表示s[0]B.s数组中元素的个数和p所指字符串长度相等C.s和p都是指针变量D.数组s中的容和指针变量p中的容相等9.以下正确的函数定义是( )。
c语言程序期末考试试题及答案

c语言程序期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. staticC. voidD. function答案:C2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 下列哪个选项是正确的C语言注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释 */答案:B5. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. 在C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. floatD. *答案:D7. 在C语言中,以下哪个选项是正确的数组声明方式?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3};答案:A8. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. if (condition) { }C. if (condition) { } else { }D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. while (condition)C. do { } while (condition);D. All of the above答案:D10. 在C语言中,以下哪个函数用于计算两个数的和?A. printf()B. scanf()C. sum()D. None of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确方式是:`int ____;`答案:变量名2. 要输出一个字符串,应该使用函数:`____`答案:printf3. 要读取一个字符,应该使用函数:`____`答案:scanf4. 在C语言中,数组的索引从____开始。
C语言程序设计期末考试复习题及答案

C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。
switch(i+1){ case 10: i++。
break。
case 11: ++i。
case 12: ++i。
break。
default : i=i+1。
}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。
中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。
对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1 D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。
则语句printf(“%c”,*(p+2))运行结果是( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。
函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。
C语言程序设计期末考试卷及答案

C 语言程序设计期末考试卷及答案一、单项选择题。
从A 、B 、C 、D 四个选项中,选择一个最佳答案填入括号内(每小题1分,共计30分)。
1.一个C 语言程序的执行是从()。
A )本程序文件的第一个函数开始,到本程序文件的最后一个函数结束B )本程序的main 函数开始,到main函数结束C )本程序的main 函数开始,到本程序文件的最后一个函数结束D )本程序文件的第一个函数开始,到本程序的main 函数结束2.下列选项中不属于...C 语言关键字的是()。
A )switchB )printfC)default D )case3.设有语句inta=4;,则执行了语句a+=a-=a*a;后,变量a 的值是()。
A )24B )-24C )4D )164.已知inti;floatd;,则正确的表达式是()。
A )(intd)B )int(d)%iC )(int)d%iD )int(d%i) 5.已知inti,a;,执行语句i=(a=3*9,a/5),a+11;后,变量i 的值是()。
A )5 B )16C )27D )386.下列选项中合法的字符型常量是()。
A )"a"B )'\n'C )7.下面程序的运行结果是()。
#include<stdio.h> voidmain() {intk=15;printf("k=%d,k=%o,k=%x\n",k,k,k);}A )k=15,k=15,k=15B )k=15,k=17,k=17C )k=15,k=017,k=0xfD )k=15,k=17,k=f 8.已知a,b,c 为int 类型,执行语句:scanf ("%d%d%d",&a,&b,&c );使得a 为10,b 为20,c 为30,以下不正确...的输入形式是()。
A )10B )10C )10,20,30D )102020203030 309.已知intx=1,y=2,z=3;,执行下列程序段后,输出的结果是()。
c程序设计期末考试试题及答案

c程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. 下面哪个选项是C语言中的关键字?A. intB. floatC. stringD. array答案:A2. C语言中,下列哪个运算符用于比较两个值是否相等?A. ==B. =C. !=D. %答案:A3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoi()B. atof()C. itoa()D. sprintf()答案:B4. 下列哪个选项是正确的C语言变量声明?A. int num = 10;B. int num = "10";C. int num = '10';D. int num = 10.0;答案:A5. C语言中,以下哪个语句用于循环执行代码块?A. forB. whileC. ifD. switch答案:A6. 在C语言中,以下哪个函数用于计算数组中元素的总和?A. sum()B. count()C. average()D. max()答案:A7. 下列哪个选项是C语言中正确的注释格式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释 */D. /* 这是注释答案:A8. 在C语言中,如何定义一个指向整数的指针?A. int *p;B. int *p = 0;C. int *p = 10;D. int p = 10;答案:A9. 在C语言中,以下哪个选项是正确的函数定义?A. int function() {}B. int function() { return 0; }C. int function() { return; }D. int function() { return 1; }答案:B10. 下列哪个选项是C语言中正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, WorldD. 'Hello, World'答案:A二、填空题(每题3分,共15分)1. 在C语言中,使用________运算符可以交换两个变量的值。
C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC classD char答案:C解析:在 C 语言中,class 不是关键字,int、float 和 char 都是常见的数据类型关键字。
2、以下变量定义中,正确的是()A int a=b=5;B char a='A';C float a=55, b=66;D double a; b;答案:C解析:A 选项中不能在定义时连续赋值;B 选项应该是 char a ='A';注意单引号;D 选项应该是 double a, b; 中间用逗号分隔。
3、以下程序段的输出结果是()```cint a = 5, b = 4, c = 6;if (a > b && a > c)printf("a 最大\n");else if (b > a && b > c)printf("b 最大\n");elseprintf("c 最大\n");```A a 最大B b 最大C c 最大D 编译错误答案:C解析:因为 5 不大于 6,所以执行 else 部分,输出“c 最大”。
4、以下循环语句执行的次数是()```cfor (int i = 0; i < 5; i++){printf("%d ", i);}```A 4 次B 5 次C 6 次D 无限次答案:B解析:从 0 到 4 ,一共 5 次。
5、以下数组定义中,正确的是()A int a5 ={1, 2, 3, 4, 5, 6};B int a ={1, 2, 3};C int a5 ={1, 2};D int a3 =(1, 2, 3);答案:B解析:A 选项数组长度为 5,却初始化了 6 个元素;C 选项只初始化了前两个元素,后面三个元素默认为 0;D 选项初始化方式错误,应该用花括号。
c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案1. 题目:编写一个C语言程序,实现一个简单的学生成绩管理系统,要求能够添加学生信息、查询学生信息、修改学生信息和删除学生信息。
答案:```c#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct {int id;char name[50];float score;} Student;Student students[100];int studentCount = 0;void addStudent(int id, char* name, float score) {if (studentCount < 100) {students[studentCount].id = id;strcpy(students[studentCount].name, name);students[studentCount].score = score;studentCount++;} else {printf("学生信息已满。
\n");}}void queryStudent(int id) {for (int i = 0; i < studentCount; i++) {if (students[i].id == id) {printf("学生ID:%d, 姓名:%s, 成绩:%.2f\n", students[i].id, students[i].name, students[i].score);return;}}printf("未找到该学生信息。
\n");}void modifyStudent(int id, char* name, float score) {for (int i = 0; i < studentCount; i++) {if (students[i].id == id) {strcpy(students[i].name, name);students[i].score = score;printf("学生信息已更新。
C语言程序设计期末考试试题及参考答案

一、单项选择题(每题1分,共20分)(1)()是构成C语言程序的基本单位。
A)子例程B)过程C)子程序D)函数(2)下面标识符中正确的是()。
A) d&ef B) 6a C) z4x5c D) a3/b4(3)C语言规定,函数返回值的类型是由()。
A) return语句中的表达式类型所决定B)调用该函数时的主调函数类型所决定C)调用该函数时系统临时决定D)在定义该函数时所指定的函数类型所决定(4)以下选项中非法的表达式是()。
A) 0<=x<100 B) x+l=x+l C) (char)(65+3) D) i=j=0(5)表达式3.6-5/2+1.2+5%2 的值是()。
A) 3.8 B) 4.8 C) 3.3 D) 4.3(6)设int a=12,则执行完语句a+=a-=a*a后,a的值是()。
A) 552 B) -264 C) 144 D) 264(7)对if语句中表达式的类型,下面正确的描述是()。
A)必须是关系表达式B)必须是关系表达式或逻辑表达式C)必须是关系表达式或算术表达式D)可以是任意表达式⑻设有定义:intnl=0,n2,*p=&n2,*q=&nl;,以下赋值语句中与n2=nl;语句等价的是.A) *p=*q; B) p=q; C) *p=&nl; D) p=*q;(9)有以下程序#include <stdio.h>void main()( char cl,c2;cl='A'+'8'*4';c2='A'+'8'-'5‘;printf("%c,%d\n”,cl,c2); }已知字母A的ASCII码为65,程序运行后的输出结果是()。
A) E,D B) D,69 C) E,68 D)输出无定值(10)下列叙述中正确的是()。
A) break语句只能用于switch语句B)在switch语句中必须使用defaultC) break语句必须与switch语句中的case配对使用D)在switch语句中,不一定使用break语句(11)设a、b和c是int型变量,且a=2,b=4,c=6,则下面表达式中值为0的是()。
C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,下列哪个选项是合法的数据类型?A. intB. floatC. characterD. string2. 关于C语言中的变量,以下哪个说法是正确的?A. 变量可以在程序中的任何位置声明B. 变量在使用前必须先声明C. 变量不能重复声明D. 变量的作用域可以是全局的,但不能是局部的3. 在C语言中,以下哪个操作符用于取模?A. %B. /C.D. &4. 下面哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()5. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. class二、填空题(每题2分,共20分)6. 在C语言中,标准输入输出头文件是_________。
7. 一个整型变量占用_________个字节。
8. 如果一个整型变量声明为`int a = 5;`,那么`printf("%d", a++);`的输出是_________。
9. 在C语言中,函数返回值的类型默认是_________。
10. 指针是一种特殊类型的变量,用于存储_________的地址。
三、编程题(共40分)11. 编写一个C程序,实现一个简单的计算器,包括加、减、乘、除四种运算。
12. 编写一个C程序,实现一个函数,该函数接受一个整数数组和一个整数n,返回数组中与n相等的元素个数。
13. 编写一个C程序,实现一个结构体`Student`,包含学生的姓名、学号和成绩。
编写一个函数,输入学生的信息并打印出来。
### 答案一、选择题答案1. A. int2. B. 变量在使用前必须先声明3. A. %4. A. malloc()5. A. struct二、填空题答案6. stdio.h7. 48. 59. int10. 变量三、编程题答案11. 计算器程序示例:```c#include <stdio.h>int main() {char operator;double firstNumber, secondNumber;printf("Enter an operator (+, -, , /): ");scanf("%c", &operator);printf("Enter two operands: ");scanf("%lf %lf", &firstNumber, &secondNumber);switch(operator) {case '+':printf("%.1lf + %.1lf = %.1lf", firstNumber, secondNumber, firstNumber + secondNumber);break;case '-':printf("%.1lf - %.1lf = %.1lf", firstNumber, secondNumber, firstNumber - secondNumber);break;case '':printf("%.1lf %.1lf = %.1lf", firstNumber, secondNumber, firstNumber secondNumber);break;case '/':if(secondNumber != 0.0)printf("%.1lf / %.1lf = %.1lf", firstNumber, secondNumber, firstNumber / secondNumber);elseprintf("Divide by zero situation.");break;default:printf("Error! operator is not correct");}return 0;}```12. 数组中与n相等的元素个数函数示例:```c#include <stdio.h>int countOccurrences(int arr[], int n, int size) {int count = 0;for (int i = 0; i < size; i++) {if (arr[i] == n) {count++;}}return count;}int main() {int arr[] = {1, 2, 3, 4, 5, 2, 2};int n = 2;int size = sizeof(arr) / sizeof(arr[0]);int count = countOccurrences(arr, n, size);printf("Number of occurrences of %d is %d", n, count);return 0;}```13. 学生信息结构体及打印函数示例:```c#include <stdio.h>typedef struct {char name[50];int studentID;float grade;} Student;void printStudentInfo(Student student) {printf("Name: %s\n", );printf("Student ID: %d\n", student.studentID); printf("Grade: %.2f\n", student.grade);}int main() {Student student;printf("Enter name: ");scanf("%s", );printf("Enter student ID: ");scanf("%d", &student.studentID); printf("Enter grade: ");scanf("%f", &student.grade);printStudentInfo(student);return 0;}```。
在c语言期末考试题库及详解答案

在c语言期末考试题库及详解答案在C语言期末考试题库及详解答案C语言作为一门广泛应用的编程语言,其期末考试通常包括对基础语法、数据结构、算法设计、程序调试等方面的考察。
以下是一些典型的C语言期末考试题库题目及其详解答案,供同学们复习参考。
1. 题目:编写一个程序,实现两个整数的加法运算,并输出结果。
答案:```c#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数的和是:%d\n", sum);return 0;}```2. 题目:使用循环结构实现1到100的累加,并输出结果。
答案:```c#include <stdio.h>int main() {int i, sum = 0;for (i = 1; i <= 100; i++) {sum += i;}printf("1到100的累加和是:%d\n", sum);return 0;}```3. 题目:编写一个程序,实现字符串的逆序输出。
答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("请输入一个字符串:");fgets(str, sizeof(str), stdin); // 使用fgets读取一行输入,包括空格int len = strlen(str) - 1; // 计算字符串长度,减去最后的换行符for (int i = len; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```4. 题目:使用函数实现求一个数的阶乘。
c语言程序设计期末试题A(含答案)

c语言程序设计期末试题A(含答案)一、单项选择题(选择一个最佳答案,每题2分,共20分)1.一个C程序的执行是从(A )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2.下列选项中,不能用作标识符的是(D )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_3.以下定义语句中正确的是( C)。
A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4.设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是(B)。
A) a++; B) b++ C) c++; D) d++;5.以下4个选项中,不能作为一条C语句的是(D)。
A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;6.有以下定义语句 double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( C)。
A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b;7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是(D)。
A) p=1; B) *q=2; C) q=p; D) *p=5; 选D.A.p是一个指针,不能给它赋一个整型的值1B.*q仍然是一个指针,*q就是p.所以也不能给它赋一个整型的值.C.q=p;q是个二级指针,p是一级指针,不能把一级指针赋给二级指针.*p=5,即给n赋值为5,正确.8.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( A)。
C语言程序设计期末考试复习题及答案

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); }
A)_1234_ B)_1_2 C) int_2_ D)2_int_
5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 ( B )
A)称为函数的直接递归调用 B)称为函数的间接递归调用
C)称为函数的循环调用 D)C语言中不允许这样的递归调用
函数fun1参数的个数为 ( B )
A) 8 B) 4
C) 5 D) 编译出错
(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )
A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间
C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和
printf(“%d”,sum);
}
程序的运行结果是:
(3) #include<stdio.h>
main()
{ char str[ ]=”1a2b3c”;
int i;
for(i=0;str[i]!=’\0’;i++)
3. 以下定义语句中正确的是( C )
大一c程序设计期末考试题及答案

大一c程序设计期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的描述,错误的是:A. 变量名必须以字母开头B. 变量名中可以包含下划线C. 变量名区分大小写D. 变量名可以包含数字答案:D2. C语言中,用于定义字符常量的是:A. 单引号B. 双引号C. 反引号D. 尖括号答案:A3. 下列哪个选项不是C语言中的运算符?A. 赋值运算符B. 关系运算符C. 逻辑运算符D. 条件运算符答案:D4. 在C语言中,用于定义一个整型数组的语句是:A. int array[5];B. int array[];C. int array[5]={0};D. int array[5]={0,1,2,3,4};答案:A5. 下列关于C语言函数的描述,正确的是:A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 所有选项都是正确的答案:D6. C语言中,用于输入输出的库函数是:A. printfB. scanfC. printf和scanfD. 以上都不是答案:C7. 下列关于C语言中指针的描述,错误的是:A. 指针可以存储地址B. 指针可以存储值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B8. 在C语言中,用于定义结构体的关键字是:A. structB. unionC. enumD. typedef答案:A9. 下列关于C语言中循环的描述,错误的是:A. for循环可以没有初始化部分B. while循环可以嵌套使用C. do-while循环至少执行一次D. 循环体内可以包含break语句答案:A10. C语言中,用于定义枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义整型变量的关键字是____。
答案:int2. 在C语言中,表示逻辑与的运算符是____。
c语言程序设计期末复习题库

第二章基本数据类型及运算一、选择题1. 若以下选项中的变量已正确定义,则正确的赋值语句是。
A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3;答案:C2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是。
A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0答案:C3. 下列C语言中运算对象必须是整型的运算符是。
A) %= B) / C) = D) *=答案:A4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是。
A) 0 B) 0.5 C) 1 D) 2答案:A5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是。
A) 把x和y按从大到小排列 B) 把x和y按从小到大排列C) 无确定结果 D) 交换x和y中的值答案:D6. 下列变量定义中合法的是。
A)short_a=1-.le-1; B)double b=1+5e2.5;C)long do=0xfdaL; D)float 2_and=1-e-3;答案:A7. 以下4个选项中,不能被看作是一条语句的是。
A) {;} B) a=0,b=0,c=0;C) if (a>0); D) if (b==0)m=1;n=2;答案:D8. 设x=1,y=-1,下列表达式中解为8的是。
A)x&y B)~x│x C)x^x D)x<<=3答案:D9. 在C语言中不合法的整数是。
A)20 B)0x4001 C)08 D)0x12ed答案: C10. 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e0.2 C)-77.77 D)456e –2答案:B)11.若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7 B)a=7+b+c,a++C)int(12.3%4) D)a=a+7=c+b答案:B)12.以下十六进制数中不合法的是A)oxff B)0Xabc C)0x11 D)0x19答案:A)13. 设int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=i<j)&&(b=j>k)&&(c=i,j,k)后,c值是。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++语言程序设计期末复习题一、单项选择题1. C++源程序文件的默认扩展名为( A )。
A. cppB. exeC. objD. lik2. 由C++源程序文件编译而成的目标文件的默认扩展名为( C )。
A. cppB. exeC. objD. lik3. 由C++目标文件连接而成的可执行文件的默认扩展名为( B )。
A. cppB. exeC. objD. lik4. C++程序从上机到得到结果的几个操作步骤依次是( B )。
A. 编译、编辑、连接、运行B. 编辑、编译、连接、运行C. 编译、运行、编辑、连接D. 编辑、运行、编辑、连接5. 以下标识符中不全是保留字的是( B )。
A. case for intB. default then whileC. bool class longD. goto return char6. 能作为C++程序的基本单位是( C )。
A. 字符B. 语句C. 函数D. 源程序文件7. 程序中主函数的名字为( A )。
A. mainB. MAINC. MainD. 任意标识符8. C++程序的基本模块为( D )。
A. 表达式B. 标识符C. 语句D. 函数9. 可用作C++语言用户标识符的一组标识符是( B )。
A. void define +WORDB. a3_b3 _123 YNC. for -abc CaseD. 2a DO sizeof10. 存储以下数据,占用存储字节最多的是(D )。
A. 0B. ‘0’C. “0”D. 0.011. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。
A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车12. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( C )。
A. 12B. 144C. 156D. 28813. 假设在程序中a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式的表达式是( D )。
A. 1.0/a*b*cB. 1/(a*b*c)C. 1/a/b/(float)cD. 1.0/a/b/c14. 设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是( D )。
A. 15B. 26,15C. 15,26D. 2615. 设x是一个bool型的逻辑量,y的值为10,则表达式x && y的值为(C )。
A. 1B. 0C. 与x值相同D. 与x值相反16. x>0 && x<=10的相反表达式为( A )。
A. x<=0 || x>10B. x<=0 && x>10C. x<=0 || x<=10D. x>0 && x>1017. x>0 || y==5的相反表达式为(B )。
A. x<=0 || y!=5B. x<=0 && y!=5C. x>0 || y!=5D. x>0 && y==518.设x和y均为bool量,则x && y为真的条件是( A )。
A. 它们均为真B. 其中一个为真C. 它们均为假D. 其中一个为假19.设x和y均为bool量,则x || y为假的条件是( C )。
A. 它们均为真B. 其中一个为真C. 它们均为假D. 其中一个为假20. 字符串”a+b=12\n”的长度为( B )。
长度算的不是字节,“12”算为2A. 6B. 7C. 8D. 921. 假定下列x和y均为int型变量,则不正确的赋值为( B )。
X++没有意义A. x+=y++B. x++=y++C. x=++yD. ++x=++y22 下列的符号常量定义中,错误的定义是( C )。
A. const M=10;B. const int M=20;C. const char ch;D. const bool mark=true;23. 循环语句“for(int i=0; i<n; i++) cout<<i*i<<’’;”中循环体执行的次数为( C )。
A. 1B. n-1C. nD. n+124. 在下面循环语句中循环体执行的次数为( B )。
for(int i=0; i<n; i++)if(i>n/2) break;A. n/2B. n/2+1C. n/2-1D. n-125. 在下面循环语句中层循环体S语句的执行总次数为( D )。
for(int i=0; i<n; i++)for(int j=i; j<n; j++) S;A. n2B. (n+1)/2C. n(n-1)/2D. n(n+1)/226. 在下面循环语句中循环体执行的次数为(C )。
int i=0,s=0; while(s<20) {i++; s+=i;}A. 4B. 5C. 6D. 727. 在下面循环语句中循环体执行的次数为(B )。
int i=0; do i++; while(i*i<10);A. 4B. 3C. 5D. 228. 当处理特定问题时的循环次数已知时,通常采用( A )来解决。
A. for循环B. while循环C. do循环D. switch语句29. 循环体至少被执行一次的语句为( C )。
A. for循环B. while循环C. do循环D. 任一种循环30. switch语句能够改写为( B )语句。
A. forB. ifC. doD. while31. do语句能够改写为( D )语句。
A. 复合B. ifC. switchD. while32. 在下面的一维数组定义中,哪一个有语法错误。
(C )A. int a[]={1,2,3};B. int a[10]={0};C. int a[];D. int a[5];33. 在下面的字符数组定义中,哪一个有语法错误。
( D )。
A. char a[20]=”abcdefg”;B. char a[]=”x+y=55.”;C. char a[15];D. char a[10]=’5’;34. 在下面的二维数组定义中,正确的是( C )。
A. int a[5][];B. int a[][5];C. int a[][3]={{1,3,5},{2}};D. int a[](10);35. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为(C )。
A. 2B. 4C. 6D. 836. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为( A )。
A. 0B. 4C. 8D. 637. 若定义了函数double *function(), 则函数function的返回值为(B )。
A. 实数型B.实数的地址C.指向函数的指针D.函数的地址38. 以下说法中正确的是( B )。
A. C++程序总是从第一个定义的函数开始执行B. C++程序总是从main函数开始执行C. C++函数必须有返回值,否则不能使用函数D. C++程序中有调用关系的所有函数必须放在同一个程序文件中39. 以下叙述中不正确的是( C )。
A. 在一个函数中,可以有多条return语句B. 函数的定义不能嵌套,但函数的调用可以嵌套C. 函数必须有返回值D. 不同的函数中可以使用相同名字的变量40. 函数重载是指( A )。
A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C. 两个以上的函数名字不同,但形参的个数或类型相同D. 两个以上的函数取相同的函数名,并且函数的返回类型相同41. 以下关于函数模板叙述正确的是(C )。
A. 函数模板也是一个具体类型的函数B. 函数模板的类型参数与函数的参数是同一个概念C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数D. 用函数模板定义的函数没有类型42. 下列(C )的调用方式是引用调用。
A. 形参和实参都是变量B.形参是指针,实参是地址值C. 形参是引用,实参是变量D.形参是变量,实参是地址值43. 为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择( A )。
A. 联函数B.重载函数C.递归函数D.函数模板44. 函数原型语句正确的是(B )。
A. int Function(void a);B.void Function (int);C. int Function(a);D.void int(double a);45. C++中函数返回值的类型是由(B )决定的。
A. return语句中表达式的类型B.该函数定义时的类型C.调用函数时的调用语句D.系统根据结果46. 以下函数的返回结果是( A )。
int function(char *x) {char *p=x; while(*p++); return(p-x-1);}A. 求字符串的长度B.将字符串x连接到字符串p后面C. 将字符串x复制到字符串p中D.将字符串x反向存放47. 函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为( B )个。
A. 1B. 2C. 4D. 548. 设有如下函数定义int f(char *s) {char *p=s;while(*p!=’\0’) p++;return(p-s);}在主函数中用cout<<f(“good”)调用上述函数, 则输出结果为( B )。
A. 3B. 4C. 5D. 649. 以下正确的函数原型语句是( C )。
A. double fun(int x,int y)B. double fun(int x;int y)C. double fun(int,int);D. double fun(int x,y);50. 以下正确的说法是(B )。
A. 用户调用标准库函数前,必须重新定义B. 用户可以重新定义标准库函数,若如此,该函数将失去原有含义C. 系统不允许用户重新定义标准库函数D. 用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中二、填空题1. C++语言是在_________语言的基础上发展起来的。
2. C++语言的编译单位是扩展名为__________的____源代码______文件。
3. 行尾使用注释的开始标记符为__________。