C++语言程序设计精彩试题精彩试题及问题详解
- 格式:pdf
- 大小:370.06 KB
- 文档页数:14
C语言程序设计试题第1、2、3章 概述、类型、表达式一、选择题1、 一个C程序由若干个C函数组成,各个函数在文件中的位置顺序为:( )A、 任意B、 第一个函数必须是主函数,其他函数任意C、 必须完全按照执行的顺序排列D、 其他函数可以任意,主函数必须在最后2、 下列四个叙述中,正确的是:( )A、 C程序中的所有字母都必须小写B、 C程序中的关键字必须小写,其他标示符不区分大小写C、 C程序中的所有字母都不区分大小写D、 C语言中的所有关键字必须小写3、 下列四个叙述中,错误的是:( )A、 一个C源程序必须有且只能有一个主函数B、 一个C源程序可以有多个函数C、 在C源程序中注释说明必须位于语句之后D、 C源程序的基本结构是函数4、 下面不是C语言合法标识符的是:( )A、abcB、5nC、_4mD、x35、 以下叙述不正确的是:( )A. 分号是C语句的必要组成部分B. C程序的注释可以写在语句的后面C. 函数是C程序的基本单位D. 主函数的名字不一定非用main来表示6、 C语言中允许的基本数据类型包括:( )A. 整型、实型、逻辑型B. 整型、实型、字符型C. 整型、字符型、逻辑型D. 整型、实型、逻辑型、字符型7、 C语言中能用八进制表示的数据类型为:( )A、字符型、整型B、整形、实型C、字符型、实型、双精度型D、字符型、整型、实型、双精度型8、 下列属于C语言合法的字符常数是:( )A、’\97’B、”A”C、’\t’D、”\0”9、 在C语言(VC环境)中,5种基本数据类型的存储空间长度的排列顺序为:( )A、char<int<=long int <=float<doubleB、char=int<long int <=float<doubleC、char<int<long int=float=doubleD、char=int=<long int <=float<double10、 在C语言中(VC环境),一定是长整型常数的是:( )A、0LB、4962710C、0412765D、0xa34b7fe11、 若有以下定义语句char c1=’b’, c2=’e’;printf(“%d,%c\n”,c2-c1,c2-‘a’+’A’);则输出结果是:( )A、2,MB、3,EC、2,ED、输出项与相应的格式控制不一致,输出结果不确定12、 以下合法的赋值语句是:( )A、x=y=100B、d--;C、x + yD、c = int(a+b);13、 设变量t为int型,下列选项中不正确的赋值语句是:( )A、++t;B、n1=(n2=(n3=0));C、k=i==m;D、a=b+c=1;14、 在以下一组运算符中,优先级最高的是:( )A、<=B、==C、%D、&&15、 下列能正确表示a≥10或a≤0的关系表达式是:( )A、a>=10 or a<=0B、a<=10 || a>=0C、a>=10 || a<=0D、a>=10 && a<=016、 下列只有当整数x为奇数时,其值为“真”的表达式是:( )A、x%2==0B、!(x%2==0)C、(x-x/2*2)==0D、! (x%2)17、 设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是:( )A、1 0< a < 15B、!(a<=10 || a>=15)C、a>10 && a<15D、!(a<=10) && !(a>=15)18、 已知x=43, ch=’A’,y=0;则表达式(x>=y&&ch<’B’&&!y)的值是:( )A、0B、语法错C、1D、“假”19、 表达式17%4 /8的值为:( )A、0B、1C、2D、320、 语句printf(“%d”,(a=2)&&(b= -2));的输出结果是:( )A、无输出B、结果不确定C、-1D、121、 一个可执行的C程序的开始执行点是:( )A. 程序中的第一个语句B. 包含文件中的第一个函数C. 名为main的函数D. 程序中的第一个函数22、 组成C语句的一个必不可少的符号是:( )A. 逗号B. 引号C. 冒号D. 分号23、 若将int、long、float等类型的数据进行混合运算,其结果的数据类型是:( )A. intB. longC. floatD. double24、 下述是C语言中有关变量定义的几个说法,正确的是:( )A. 变量可以不定义直接使用B. 一个说明语句只能定义一个变量C. 几个不同类型的变量可在同一语句中定义D. 变量可以在定义时进行初绐化25、 与x * = y + z等价的赋值表达式是:( )A. x = y + zB. x = x * y + zC. x = x * (y + z)D. x = x + y * z26、 当代电子计算机能够自动地处理指定的问题是因为:( )A.计算机是电动的B.有解决该问题的计算机程序C.事先存储了解决该问题的程序D.以上都不是27、 以下叙述中最准确的是:( )A.计算机程序是处理某一问题所有指令的集合B.计算机程序是处理某一问题所用到的所有数据的集合C.计算机程序是处理某一问题的所有指令及其数据的集合D.计算机程序是处理某一问题的所有指令及其数据的有序集合28、 关于计算机程序设计,以下描述最准确的是:( )A.程序设计就是用语言来编写程序B.程序设计就是用计算机语言来编写程序C.程序设计就是用计算机程序设计语言来编写程序D.程序设计就是用计算机能识别的语言来编写程序29、 目前编写计算机程序一般采用的是:( )A.机器语言 B.汇编语言 C.高级语言 D.英语30、 设计一个计算机程序最基本的工作是:( )A.制定正确的算法 B.选择合理的数据结构C.制定正确的算法和选择合理的数据结构 D.以上都不是31、 算法具有五个特性,以下选项中不属于算法特性的是:( )A.有穷性 B.简洁性 C.可行性 D.确定性32、 下述哪一个不是结构化程序基本结构:( )A.顺序 B.选择 C.循环 D.嵌套33、 C语言是一种:( )A.机器语言 B.汇编语言 C.高级语言 D.以上都不是34、 C语言源程序的扩展名为:( )A..exe B..c C..obj D..cpp35、 C程序编译后最终产生(即计算机执行)的文件的扩展名为()A..exe B..c C..obj D..cpp36、 下列各项中,不是C语言的特点是:( )A.语言简洁、紧凑,使用方便B.程序执行效率高,可移植性好C.能实现汇编语言的大多数功能D.有较强的网络操作功能37、 构成C语言源程序的基本单位是:( ) A.子程序 B.过程 C.文本 D.函数38、 下列叙述正确的是:( )A.C语言源程序可以直接在DOS环境中运行B.编译C语言源程序得到的目标文件可以直接在DOS环境中运行C.C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行D.C语言源程序可以直接在VC++环境中运行39、 某C程序由一个主函数main()和一个自定义函数max()组成,则该程序:( )A.写在前面的函数先开始执行B.总是从main()函数开始执行C.总是从max()函数开始执行D.写在后面的函数先开始执行40、 以下叙述不正确的是:( )A.分号是C语句的必要组成部分B.C程序的注释可以写在语句的后面C.函数是C程序的基本单位D.主函数的名字不一定用mian表示41、 以下为C语句的是:( )A.a=8 B.a++; C.if(a>8) D.#include <stdio.h>以下不是C语句的是:( )A.a=8; B.a++; C.if(a>8); D.for(i=1;i<5;i++)42、 以下所列语句中,合法的语句是:( )A.a=1,b=2 B.++a; C.a=a+1=5 D.y=int(a);43、 C程序中的复合语句指的是:( )A.并列的多个C语句 B.写在同一行中的多个C 语句C.用一对大括号对括的多个C语句 D.就是函数体中的语句44、 当一个很长的C语句(中间无字符串)在一行写不下(超出屏幕的宽度)时,应该:( )A.由系统自动换行 B.立即按回车键换行C.在任意一个空格处按回车键换行D.输入一个分号后并按回车键换行换行45、 在x值处于-2~2,4~8时值为“真”,否则为“假”的表达式是:( )。
大学C语言程序设计试题含答案一、简答题1. 请简要解释什么是C语言程序设计。
C语言程序设计是一种计算机编程语言,由贝尔实验室的Dennis Ritchie在20世纪70年代早期开发。
它强调的是效率和可移植性,被广泛应用于操作系统、嵌入式系统和其他需要高效执行的应用程序开发。
2. C语言的基本数据类型有哪些?请列举并简要说明其特点。
C语言的基本数据类型包括:- int:用于表示整数,通常占用4个字节内存,可以表示范围较大的整数;- char:用于表示字符,占用1个字节内存,常用于存储ASCII码;- float:用于表示单精度浮点数,占用4个字节内存,可用于表示小数;- double:用于表示双精度浮点数,占用8个字节内存,可用于表示更大范围和更高精度的小数;- void:表示无类型,常用于函数返回类型。
3. 请解释C语言中的变量和常量的概念,并简要说明它们的区别。
变量是用于存储和表示数据的一种方式,可以根据需要改变其值。
在C语言中,变量声明需要指定其类型,并可以为变量命名,并通过赋值来存储数据。
常量是固定不变的值,不能改变其值。
在C语言中,常量可以是字面值常量(直接指定数值或字符)、符号常量(使用预处理器#define 指令定义的常量)或常量表达式(由常量组成的表达式)。
常量在程序执行过程中保持不变。
二、编程题1. 编写一个程序,输入一个整数,判断该数字是奇数还是偶数,并输出相应的提示信息。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数: ");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数。
\n", num);} else {printf("%d是奇数。
\n", num);}return 0;}```2. 编写一个程序,计算并输出1到100之间所有奇数的和。
c语言程序设计考研试题精选与解析
以下是一份C语言程序设计考研试题精选与解析:
题目一:
1. 简答题
题目:请简述C语言中数组和指针的区别和联系。
解析:这道题目主要考察考生对C语言中数组和指针的基本概念和用法的理解。
考生需要能够清晰地阐述数组和指针的定义、特点以及它们在内存中的存储方式等方面的区别和联系。
2. 编程题
题目:编写一个函数,将一个整数数组中的所有元素按照升序排列,并返回排序后的数组长度。
解析:这道题目主要考察考生对C语言中数组操作和函数调用的掌握程度。
考生需要能够使用循环和条件语句来实现数组排序,并正确地返回排序后的数组长度。
在实现过程中,需要注意数组下标的范围以及越界问题。
题目二:
1. 简答题
题目:请简述C语言中函数的定义和特点。
解析:这道题目主要考察考生对C语言中函数的基本概念和用法的理解。
考生需要能够清晰地阐述函数的作用、定义方式和特点,包括函数参数传递的方式、函数的返回值以及函数的作用域等方面的内容。
2. 编程题
题目:编写一个函数,计算一个整型数组中所有元素的和,并返回该和。
解析:这道题目主要考察考生对C语言中函数定义和调用的掌握程度。
考生需要能够使用循环语句遍历数组中的所有元素,并使用加法运算符计算它们
的总和。
在实现过程中,需要注意数组下标的范围以及越界问题,同时需要保证函数的正确返回值类型。
C语言程序设计试题及答案在计算机科学与技术领域中,C语言是一种非常重要的编程语言。
作为一门高级编程语言,C语言广泛应用于操作系统、嵌入式系统、图形界面开发等领域。
为了帮助广大学习者更好地掌握C语言的相关知识,以下是一些C语言程序设计的试题及其答案。
一、基础知识题1. C语言中的关键字有哪些?请列举至少5个。
答案:在C语言中,关键字是具有特殊含义的保留字,不可以被用作变量名或函数名等标识符。
常见的C语言关键字有:int、float、char、if、while等。
2. 请解释一下C语言中的指针是什么?如何声明一个指针变量?答案:指针是一种特殊的变量,它存储了一个变量的内存地址。
通过指针,我们可以直接访问或修改所指向的变量的值。
在C语言中,可以通过使用"*"来声明一个指针变量。
例如,声明一个指向整数类型的指针变量可以使用以下代码:```cint *ptr;```3. 请编写一个C语言函数,实现两个整数的交换。
答案:```cvoid swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}```二、语法题1. 请编写一个C语言程序,计算并输出1到100之间所有整数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("1到100之间所有整数的和为:%d\n", sum);return 0;}```2. 请编写一个C语言函数,判断一个整数是否为素数(质数)。
答案:```c#include <stdio.h>int isPrime(int n) {if (n <= 1) {return 0;}for (int i = 2; i * i <= n; i++) {if (n % i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}```三、综合题1. 请编写一个C语言程序,输出斐波那契数列的前n项。
专升本c语言程序设计试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述,哪个是正确的?A. 函数可以没有返回值B. 函数不能有多个返回值C. 函数必须有返回值D. 函数不能有参数答案:A3. 在C语言中,以下哪个运算符用于计算两个整数的和?A. %B. +C. ==D. &&答案:B4. C语言中,以下哪个关键字用于定义一个指针?A. intB. floatC. charD. *答案:D5. 在C语言中,以下哪个选项是正确的注释方式?A. // 这是注释B. /* 这是注释 */C. // 这是注释/* 这是注释 */D. // 这是注释/* 这是注释 */答案:B6. 下列关于C语言数组的描述,哪个是错误的?A. 数组可以是多维的B. 数组下标从0开始C. 数组的大小在编译时确定D. 数组可以动态分配答案:D7. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. fprintfD. All of the above答案:D8. C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[5] = "Hello";C. char str[] = {'H', 'e', 'l', 'l', 'o'};D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. switch (condition)C. case (condition)D. All of the above答案:A10. 下列关于C语言循环的描述,哪个是正确的?A. for循环可以嵌套B. while循环不能嵌套C. do-while循环至少执行一次D. All of the above答案:C二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:___________。
c语言程序设计试题及答案解析C语言程序设计试题及答案解析一、选择题1. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C2. C语言中,以下哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C二、填空题1. 在C语言中,用于定义一个整型变量的关键字是______。
答案:int2. 若有以下C语言代码段:```cint a = 5, b = 10;printf("%d", a + b);```执行后输出的结果是______。
答案:15三、简答题1. 简述C语言中数组的定义和初始化方式。
答案:在C语言中,数组是一种基本的数据结构,用于存储具有相同类型的多个元素。
数组的定义方式为:类型名数组名[数组大小];初始化方式可以是静态初始化,即在定义时直接赋值,如:int arr[5] = {1, 2, 3, 4, 5}; 或者动态初始化,即在定义后使用循环或赋值语句逐一赋值。
四、编程题1. 编写一个C语言程序,实现求一个整数的阶乘。
```c#include <stdio.h>int factorial(int n) {if (n == 0)return 1;elsereturn n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d 的阶乘是:%d\n", num, factorial(num));return 0;}```五、分析题1. 请分析以下C语言代码段的运行结果,并解释原因。
```c#include <stdio.h>int main() {int x = 10;printf("%d", x++);return 0;}```答案:代码段的运行结果是10。
一、程序设计共113题第1题题号:319#include "stdio.h"void wwjt();int fun(int m){int i,k=1;if(m<=1) k=0;for(i=2;i<m;i++)if(m%i==0) k=0;return k;}第2题题号:351-----------功能:请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指一维数组中。
二维数组中的数已在主函数中赋予。
#include<conio.h>#include<stdio.h>#define M 3#define N 4void wwjt();void fun(int tt[M][N],int pp[N]) {int i,j;for(j=0;j<N;j++){pp[j]=tt[0][j];for(i=1;i<M;i++)if(tt[i][j]>pp[j])pp[j]=tt[i][j];}第3题题号:375功能:从键盘上输入任意实数,求出其所对应的函数值。
z=e的x次幂(x>10)z=log(x+3) (x>-3)z=sin(x)/((cos(x)+4)#include <math.h>#include<stdio.h>void wwjt();double y(float x){double z;if(x>10) z=exp(x);else if(x>-3) z=log(x+3);else z=sin(x)/(cos(x)+4);return(z);}第4题题号:334功能:求给定正整数n以内的素数之积。
(n<28)#include <stdio.h>#include"conio.h"void wwjt();long fun(int n){long i,k;long s=1;for(i=2;i<=n;i++){for(k=2;k<i;k++)if(i%k==0)break;if(k==i)s=s*i;}return s;}第5题题号:333功能:计算并输出给定整数的所有因子之积(包括自身)。
C 语言程序设计试卷,C++语言程序设计试题及答案一、单项选择题(每题1分,共20分)1. C 语言规定:在一个源程序中, main 函数的位置(C).A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 2. 下面四个选项中,均是合法浮点数的选项是 A. +1e+15e-9.403e2B. -.6012e-4-8e5C. 123e1.2e-.4+2e-1D. -e3.8e-45.e-03.若a=-14,b=3,则条件表达式 avb?a:b+1的值为(A)。
A. -14B.-13C.3D.44. 已知:intn,i=1,j=2; A.1,2B.1,3C.2,2D.2,35. 为了判断两个字符串s1和s2是否相等,应当使用(D)A.if(s1==s2)B.if(s 仁s2)C. if(strcm p( s1,s2))D. if(strcm p( s1,s2)==0)6. 以下正确的描述是(B) o(B)。
执行语句n=ivj?i++:j++; 则i 和j 的值是(c).A.函数的定义可以嵌套,但函数的调用不可以嵌套。
B.函数的定义不可以嵌套,但函数的调用可以嵌套。
C.函数的定义和函数的调用均不可以嵌套。
D.函数的定义和函数的调用均可以嵌套。
7. 在C 语言中,下面对函数不正确的描述是 A.当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。
B.允许函数递归调用。
C. 函数形参的作用范围只是局限于所定义的函数内。
D. 子函数必须位于主函数之前。
8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是A. 该变量只在该复合语句中有效B. 该变量在该函数中有效C. 该变量在本程序范围内均有效D. 该变量为非法变量9. 以下正确的函数形式是(D)。
A. doublefun(intx,inty){z=x+y;retum z;}B. fun(intx,y){int z; return z;}C. fun(x,y){intx,y;doublez;z=x+y;returnz;}D. doublefun(intx,inty){doublez;z=x+y;returnz;}10. 以下程序的输出结果是(B)。