C语言程序设计(机考题库)100题 (20)解析

合集下载

C语言程序设计试题及答案解析

C语言程序设计试题及答案解析

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语言程序设计考试试题及答案

c语言程序设计考试试题及答案

c语言程序设计考试试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是()。

A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言可以用于系统程序设计答案:B2. 在C语言中,用于定义一个结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A3. 下列哪个选项不是C语言中合法的变量名?()A. _intB. 2ndC. intD. var_name答案:C4. C语言中,用于表示逻辑“与”操作的运算符是()。

A. &&B. &&C. |D. ||答案:A5. 在C语言中,下列哪个选项是正确的字符串声明?()A. char str[] = "Hello, World!";B. char str[10] = "Hello, World!";C. char str[] = {"Hello, World!"};D. char str[20] = "Hello, World!";答案:A6. 下列哪个函数用于将浮点数转换为字符串?()A. sprintfB. atoiC. itoaD. atof答案:A7. C语言中,用于定义一个指针变量的关键字是()。

A. intB. floatC. charD. void答案:C8. 在C语言中,下列哪个选项不是合法的数组声明?()A. int arr[5];B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2, 3};D. int *arr = {1, 2, 3};答案:D9. 下列关于C语言函数的描述中,正确的是()。

A. 函数可以没有返回值B. 函数可以返回多个值C. 函数可以没有参数D. 所有选项都正确答案:D10. 在C语言中,用于控制程序流程的关键字是()。

c语言机考试题及答案

c语言机考试题及答案

c语言机考试题及答案一、选择题1. C语言的发明者是谁?A. 丹尼斯·里奇B. 肯·汤普逊C. 贝尔实验室团队D. 布莱恩·柯林汉答案: A2. 下面哪个不是C语言的基本数据类型?A. intB. floatC. charD. string答案: D3. 下面哪个关键字用于定义常量?A. constB. staticC. finalD. def答案: A4. 数据类型int在32位编译器上占用的字节数是多少?A. 4B. 1C. 8D. 2答案: A5. 下面哪个运算符用于获取变量的地址?A. *B. !C. &D. #答案: C二、填空题1. 在C语言中,用于输出结果到屏幕的函数是________。

答案: printf2. 在C语言中,用于从键盘输入数据的函数是________。

答案: scanf3. 用于定义宏函数的关键字是________。

答案: #define4. 变量定义时没有赋初值,默认值是________。

答案: 不确定5. 在C语言中,用于条件选择结构的关键字是________。

答案: if三、编程题1. 编写一个程序,判断一个数是否是素数。

答案:```c#include <stdio.h>int main() {int number, i, isPrime = 1;printf("请输入一个正整数:");scanf("%d", &number);for (i = 2; i <= number / 2; i++) {if (number % i == 0) {isPrime = 0;break;}}if (isPrime == 1)printf("%d是素数\n", number);elseprintf("%d不是素数\n", number);return 0;}```2. 编写一个程序,求斐波那契数列的第n项。

C语言程序设计题库及答案

C语言程序设计题库及答案

第1次客观题作业一、单选题(共30题,每题3分)1 .下面表示正确的是__A___。

A.C语言中的逗号是一种运算符B.在C语言中,一行只能有一个语句C.C中的变量不区分大小写D.c中的关键字可以做为变量名2 .字符型常量在内存中存放的是__A____代码值。

A.ASCII B.二进制C.十进制D.八进制3 .以下不正确的C语言标识符是(C )。

A.AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D____。

A.&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是___A___。

A.% B./ C.< D.!6 . C语言程序的基本单位是__C_____。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___B____程序。

A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+19 .下列(A )不属于结构化程序设计的循环结构。

A.For B.While C.if-else D.do-while10 .以下叙述中错误的是__A___。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。

A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。

for (i=3;i>0;i--) for (j=0;j<=4;j++){...}A.12 B.15 C.16 D.2013 .下列选项中,合法的C语言关键字是_D___。

西工大2020年4月《C语言程序设计》作业机考参考答案

西工大2020年4月《C语言程序设计》作业机考参考答案

西工大2020年4月《C语言程序设计》作业机考试卷总分:100 得分:96一、单选题(共35 道试题,共70 分)1. 一个C程序的执行是从()。

A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束正确答案:A2. 在C语言中,只有在使用时才占用内存单元的变量,其存储类型是()。

A.auto和registerB.extern和registerC.auto和staticD.static和register正确答案:A3. 以下存储类型只有在使用时才为该类型变量分配内存的是()。

A.auto和staticB.auto和registerC.register和staticD.static和extern正确答案:B4. 运行程序:#includemain(){int n='c';switch(n++){ default: printf("error");break;case 'a':case 'A':case 'b':case 'B':printf("good");break;case 'c':case 'C':printf("pass");case 'd':case 'D':printf("warn");}}则输出结果是()。

A.goodB.passC.warnD.passwarn。

c语言考试题及答案详解

c语言考试题及答案详解

c语言考试题及答案详解C语言考试题及答案详解一、选择题1. 下列哪个是C语言的关键字?A. voidB. mainC. returnD. print答案:A2. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C二、填空题1. 在C语言中,用于定义一个整型变量的关键字是 ____ 。

答案:int2. 以下代码段的输出结果是____。

```cint a = 5;printf("%d", a++);```答案:5三、简答题1. 请简述C语言中数组的定义方式。

答案:在C语言中,数组的定义方式是通过指定数据类型、数组名和数组的大小。

例如,定义一个整型数组,大小为10,可以写作:int array[10];四、编程题1. 编写一个C程序,实现求两个整数的和,并输出结果。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("Sum is: %d\n", sum);return 0;}```五、论述题1. 论述C语言中指针的概念及其重要性。

答案:指针是C语言中的一个重要概念,它存储了变量的内存地址。

指针的重要性在于它允许程序员直接操作内存,这使得动态内存分配、数组操作、函数参数传递等成为可能。

指针的使用提高了程序的灵活性和效率,但也增加了编程的复杂性。

六、案例分析题1. 给定以下C语言代码段,分析其功能并指出可能存在的问题。

```cint func(int *p) {return *p * 10;}int main() {int a = 5;printf("%d\n", func(&a));return 0;}```答案:该代码段定义了一个函数`func`,它接受一个整型指针作为参数,并返回该指针指向的值乘以10的结果。

《C语言》程序设计题库及答案

《C语言》程序设计题库及答案

《C语言》程序设计题及答案1.【程序设计】--------------------------------------------------功能:对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。

例如:原来的字符串为CEAedca,排序后输出为CedcEAa。

------------------------------------------------*/{/**********Begin**********/int i,j;char t;for(i=1;i<num-1;i++)for(j=i+1;j<num-1;j++)if(s[i]<s[j]){ t=s[i];s[i]=s[j];s[j]=t;}/********** End **********/2.【程序设计】--------------------------------------------------功能:编写函数求3!+6!+9!+12!+15+18!+21!。

------------------------------------------------*/{/**********Begin**********/int i,j;float t,s=0;for(i=3;i<=n;i=i+3){t=1;for(j=1;j<=i;j++)t=t*j;s=s+t;}return(s);/********** End **********/3./*------------------------------------------------ 【程序设计】-------------------------------------------------- 功能:判断一个整数w的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。

------------------------------------------------*/ /**********Begin**********/int k,s=0;do{s=s+(w%10)*(w%10);w=w/10;}while(w!=0);if(s%5==0)k=1;else k=0;return(k);4./*------------------------------------------------ 【程序设计】-------------------------------------------------- 功能:求给定正整数n以内的素数之积。

自考c语言程序设计试题及答案

自考c语言程序设计试题及答案

自考c语言程序设计试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. varB. intC. letD. define答案:B2. 下列哪个选项不是C语言中的合法标识符?A. _nameB. 2nameC. nameD. name2答案:B3. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. ~答案:A4. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. goto答案:B5. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A6. C语言中,用于实现函数递归调用的关键字是:A. returnB. callC. recursiveD. self答案:A7. C语言中,用于定义一个指针变量的关键字是:A. pointerB. ptrC. *D. ref答案:C8. 下列哪个选项是C语言中的合法数组声明?A. int arr[10];B. int arr[];C. int arr[10] = {1, 2, 3};D. All of the above答案:D9. C语言中,用于定义一个枚举类型的关键字是:A. enumB. enum typeC. typeD. typedef答案:A10. 在C语言中,用于实现文件操作的库函数位于哪个头文件中?A. stdio.hB. stdlib.hC. string.hD. math.h答案:A二、填空题(每题3分,共30分)1. 在C语言中,定义一个整型变量并初始化为10的语句是:`int a = ______;`答案:102. C语言中,用于计算两个整数相加的表达式是:`________ + b;`答案:a3. C语言中,用于定义一个浮点型数组的语句是:`float arr[5] = {1.1, 2.2, 3.3,4.4, ______};`答案:5.54. 在C语言中,用于定义一个函数的关键字是:`________ void myFunction();`答案:void5. C语言中,用于定义一个指针指向整型变量的语句是:`int *p = ______;`答案:&a6. C语言中,用于定义一个结构体的语句是:`struct Student {int id; char name[50];};`答案:(无需填空)7. C语言中,用于定义一个枚举类型的语句是:`enum Color {RED, GREEN, BLUE} color;`答案:(无需填空)8. 在C语言中,用于定义一个二维数组的语句是:`int arr[3][4] = { {0, 1, 2, 3}, {4, 5, 6, 7}, ______ };`答案:{8, 9, 10, 11}9. C语言中,用于实现文件读取的函数是:`________`答案:fopen10. C语言中,用于实现字符串连接的函数是:`________`答案:strcat三、简答题(每题5分,共20分)1. 简述C语言中函数的定义和调用过程。

C语言必考100题解析

C语言必考100题解析
48.编程将若干字符串按字母顺序由小到大排序后输出。(二维数组和指针数组均可) 。
49.编程输入一个班的某课程的学生成绩,计算其平均分,然后输出,班级人数由键盘 输入。
50.编程实现从键盘输入一个字符串,将其字符顺序颠倒后重新存放,并输出这个字符 串(要求:使用头指针和尾指针来实现) 。
51.编程判断输入的一串字符是否为 “回文”。所谓回文是指顺读和倒读都一样的字符串, 如“ABCCBA”是回文。
44.从键盘任意输入两个整数,利用指针变量作为函数参数,编程实现两数互换功能, 然后将交换后的数据重新输出。
45.用字符指针编程实现字符串复制函数。
46.用字符指针编程实现求字符串长度函数。
47.编写一个程序,可以实现在一个数组中删除指定的元素。如:数组元素为1,2,3,
输入3,便删除3,输出1,2;若输入4,则继续输出1,2,3。
为止,要求统计总共累加了多少项。
19.编程输出正三角格式的九九乘法表。
20.编程输出下三角格式的九九乘法表。
21.从键盘任意输入一个正整数,编程判断它是否是素数, 若是素数,输出“YES”,
否则输出“NO!”。
22.编写一个程序实现输出1—100之间所有素数。
23.编写一个程序实现输出任意指定m、n之间的所有素数。
分析给出了以下按“体指数”对肥胖程度的划分:体指数t=w/h*h(w为体重,
单位为kg,h为身高,单位为m)。当t<18时,为低体重;当t介于18和25之间时,为正常体重;当t介于25和27之间时,为超重体重;当t仝27时, 为肥胖。编程从键盘输入你的身高h和体重w,根据上式,判断体重类型。
12.利用switch语句将百分制成绩转化为五分制成绩。
52•用指针数组编程实现: 从键盘任意输入一个数字表示月份值n,程序输出该月份的英 文 表 示 ,若n不 在1~12之 间 , 则 输 出 “Illegal month”。 ("January","February","March","April","

c语言程序设计试题及答案

c语言程序设计试题及答案

c语言程序设计试题及答案C语言程序设计试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable-2答案:C2. 以下哪个语句不是C语言中的输入语句?A. scanf("%d", &x);B. printf("%d", x);C. gets("string");D. getchar();答案:B3. C语言中,以下哪个不是标准库函数?A. printf()B. malloc()C. strcpy()D. main()答案:D4. 以下哪个选项是C语言中正确的数组声明?A. int array[];B. int [10] array;C. int array[10];D. int [10] = array;答案:C5. 以下哪个是C语言中正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello World"答案:C6. C语言中,以下哪个是正确的函数声明?A. int function();B. void myFunction(int x, int y);C. int myFunction(int x, int y) {}D. int myFunction(int x, int y) { return x + y; }答案:B7. 在C语言中,以下哪个是正确的条件语句?A. if (x = 5)B. if (x == 5)C. if (x = 5) { x++; }D. if (x == 5) { x++; }答案:D8. 在C语言中,以下哪个是正确的循环语句?A. for (int i = 0; i <= 10; i++) {}B. for (int i = 0; i < 10; i--) {}C. while (x != 0) { x--; }D. do { x++; } while (x != 0);答案:D9. 在C语言中,以下哪个是正确的指针声明?A. int *ptr;B. *int ptr;C. int ptr*;D. int * ptr;答案:A10. C语言中,以下哪个不是运算符?A. +B. -C. :D. *答案:C二、简答题(每题5分,共30分)1. 请简述C语言中数组和指针的区别。

c语言程序设计考试题及答案

c语言程序设计考试题及答案

c语言程序设计考试题及答案一、选择题(每题2分,共10分)1. 下列选项中,哪个是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. variable-2答案:C2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. charD. double答案:A3. 下列哪个选项是正确的C语言注释方式?A. // This is a commentB. /* This is a comment */C. //* This is a commentD. /* This is a comment */答案:B4. 在C语言中,以下哪个语句用于交换两个变量的值?A. a = b;B. b = a;C. a = a + b;D. a = a + b; b = a - b; a = a - b;答案:D5. C语言中,以下哪个函数用于将字符串连接到另一个字符串的末尾?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:A二、填空题(每题3分,共15分)1. 在C语言中,___________关键字用于定义一个函数。

答案:int2. C语言中,___________函数用于输出字符串。

答案:printf3. 在C语言中,___________关键字用于定义一个结构体。

答案:struct4. C语言中,___________函数用于输入一个整数。

答案:scanf5. 在C语言中,___________关键字用于定义一个枚举类型。

答案:enum三、简答题(每题5分,共20分)1. 请简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以作为指向数组首元素的指针使用。

数组的每个元素可以通过指针偏移量来访问。

2. 解释C语言中的递归函数。

答案:递归函数是在其定义中调用自身的函数。

它通常用于解决可以分解为更小的、相似子问题的问题。

西工大2020年4月《C语言程序设计》作业机考参考答案

西工大2020年4月《C语言程序设计》作业机考参考答案

西工大2020年4月《C语言程序设计》作业机考试卷总分:100 得分:96一、单选题(共35 道试题,共70 分)1. 一个C程序的执行是从()。

A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束正确答案:A2. 在C语言中,只有在使用时才占用内存单元的变量,其存储类型是()。

A.auto和registerB.extern和registerC.auto和staticD.static和register正确答案:A3. 以下存储类型只有在使用时才为该类型变量分配内存的是()。

A.auto和staticB.auto和registerC.register和staticD.static和extern正确答案:B4. 运行程序:#includemain(){int n='c';switch(n++){ default: printf("error");break;case 'a':case 'A':case 'b':case 'B':printf("good");break;case 'c':case 'C':printf("pass");case 'd':case 'D':printf("warn");}}则输出结果是()。

A.goodB.passC.warnD.passwarn正确答案:D5. 下面程序的输出结果是()。

main(){int x=177;printf("%o\n",x);A.177B.261C.-61D.61正确答案:B6. 若二维数组a由m列,则在a[i][j]之前的元素个数为()。

计算机等级考试c语言程序设计试题及答案

计算机等级考试c语言程序设计试题及答案

计算机等级考试c语言程序设计试题及答案一、选择题1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言具有良好的移植性C. C语言是面向过程的编程语言D. C语言不能进行图形界面的开发答案:D2. 下列关于C语言变量的命名规则,正确的是:A. 可以用数字开头命名变量B. 可以用特殊字符命名变量C. 可以用保留字命名变量D. 可以用下划线开头命名变量答案:D3. 下列代码段中,输出结果是什么?```c#include <stdio.h>int a = 1;if (a == 1) {printf("Hello, World!");} else {printf("Goodbye, World!"); }return 0;}```A. Hello, World!B. Goodbye, World!C. 1D. 无输出答案:A二、编程题1. 求给定数组的平均值```c#include <stdio.h>int nums[] = {5, 7, 2, 10, 4};int sum = 0;int length = sizeof(nums) / sizeof(nums[0]); for (int i = 0; i < length; i++) {sum += nums[i];}float average = (float)sum / length;printf("平均值为:%.2f", average);return 0;}```2. 判断一个数是否为素数```c#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i * i <= num; i++) { if (num % i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d是素数", num);} else {printf("%d不是素数", num); }return 0;}```三、简答题1. 请简要解释C语言中的指针和引用的区别。

c语言程序设计考试题及答案解析

c语言程序设计考试题及答案解析

c语言程序设计考试题及答案解析一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A3. 以下哪个选项是C语言中的合法整型常量?A. 0x12B. 0b101C. 0.5D. 1e2答案:A4. 在C语言中,以下哪个运算符用于计算两个数的差?A. +=B. -C. *D. /答案:B5. C语言中,以下哪个关键字用于声明一个函数?A. defineB. functionC. voidD. return答案:C6. 在C语言中,以下哪个关键字用于声明一个全局变量?A. staticB. externC. autoD. register答案:B7. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A8. 在C语言中,以下哪个关键字用于声明一个静态局部变量?A. staticB. externC. autoD. register答案:A9. C语言中,以下哪个函数用于将一个整数转换为字符串?A. atoi()B. itoa()C. sprintf()D. sscanf()答案:B10. 在C语言中,以下哪个关键字用于声明一个指针?A. intB. charC. *D. void答案:C二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。

答案:int2. C语言中,用于定义一个浮点型变量的关键字是________。

答案:float 或 double3. C语言中,用于定义一个字符型变量的关键字是________。

计算机等级考试c语言程序设计试题及答案

计算机等级考试c语言程序设计试题及答案

计算机等级考试c语言程序设计试题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,用于定义一个结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A2. 下列选项中,哪个是合法的C语言变量名?()A. 2variableB. variable2C. variable_2D. variable-2答案:C3. 在C语言中,用于定义一个函数的关键字是()。

A. functionB. defC. defineD. int答案:D4. 下列关于C语言数组的描述中,错误的是()。

A. 数组名代表数组的起始地址B. 数组可以存储不同类型的数据C. 数组的下标从0开始D. 数组在内存中是连续存储的答案:B5. 下列关于C语言指针的描述中,正确的是()。

A. 指针可以存储任何类型的数据B. 指针变量的值是它所指向的变量的地址C. 指针变量不能被赋值D. 指针变量不能作为函数的参数答案:B6. 在C语言中,用于定义一个枚举类型的关键字是()。

A. enumB. structC. unionD. typedef答案:A7. 下列关于C语言函数的描述中,错误的是()。

A. 函数可以有返回值B. 函数可以没有返回值C. 函数必须有返回值D. 函数可以有参数答案:C8. 在C语言中,用于定义一个联合体的关键字是()。

A. structB. unionC. enumD. typedef答案:B9. 下列关于C语言中的循环控制语句的描述中,错误的是()。

A. for循环可以没有初始化表达式B. while循环至少执行一次循环体C. do-while循环至少执行一次循环体D. for循环可以没有循环控制表达式答案:B10. 在C语言中,用于定义一个宏的预处理命令是()。

A. #defineB. #includeC. #importD. #pragma答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字可以定义一个常量。

c程序设计试题及答案

c程序设计试题及答案

c程序设计试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,不正确的是()。

A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有丰富的库函数答案:B2. 在C语言中,用于定义一个结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A3. 下列关于C语言中数组的描述,正确的是()。

A. 数组必须初始化B. 数组的大小在编译时确定C. 数组的下标从0开始D. 数组可以作为函数的参数答案:B4. 在C语言中,用于表示逻辑“与”操作的运算符是()。

A. &&B. ||C. !D. &答案:A5. 下列关于C语言函数的描述,不正确的是()。

A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数的返回值类型必须在函数声明时确定D. 函数可以被递归调用答案:B6. 在C语言中,用于定义一个指针的语句是()。

A. int *p;B. int p;C. int *p = 0;D. int p = 0;答案:A7. 下列关于C语言中文件操作的描述,正确的是()。

A. 文件操作只能使用文本方式B. 文件操作只能使用二进制方式C. 文件操作可以使用文本方式或二进制方式D. 文件操作不能同时读写答案:C8. 在C语言中,用于表示逻辑“或”操作的运算符是()。

A. &&B. ||C. !D. &答案:B9. 下列关于C语言中循环的描述,正确的是()。

A. for循环不能嵌套B. while循环可以嵌套C. do-while循环至少执行一次D. 循环中可以使用break语句答案:C10. 在C语言中,用于表示逻辑“非”操作的运算符是()。

A. &&B. ||C. !D. &答案:C二、填空题(每题2分,共20分)1. C语言中,一个整型变量占用的字节数是______。

c语言程序设计试题及答案讲解

c语言程序设计试题及答案讲解

c语言程序设计试题及答案讲解一、选择题1. 下列关于C语言的描述中,错误的是()。

A. C语言是一种高级语言B. C语言具有很好的移植性C. C语言不支持面向对象编程D. C语言可以直接操作硬件答案:D解析:C语言是一种高级语言,具有很好的移植性,并且支持面向对象编程,但是它不直接操作硬件,而是通过系统调用间接操作。

2. 在C语言中,下列哪个关键字用于定义一个结构体()。

A. structB. unionC. enumD. typedef答案:A解析:在C语言中,关键字struct用于定义一个结构体。

二、填空题1. 在C语言中,定义一个整型变量的关键字是____。

答案:int2. C语言中,用于定义一个函数的关键字是____。

答案:void 或者其他数据类型三、简答题1. 请简述C语言中指针的概念。

答案:在C语言中,指针是一种特殊的变量,它存储的是另一个变量的内存地址。

通过指针,可以间接访问和操作变量的值。

2. 请解释C语言中数组和指针的关系。

答案:在C语言中,数组名可以被看作是指向数组首元素的指针。

因此,数组和指针有着密切的关系。

通过指针可以遍历数组,也可以通过数组下标访问元素。

四、编程题1. 编写一个C语言程序,实现求两个整数的和。

```c#include <stdio.h>int main() {int a = 5, b = 10;int sum = a + b;printf("The sum of %d and %d is %d\n", a, b, sum);return 0;}```答案解析:该程序定义了两个整数变量a和b,并将它们的和赋值给变量sum。

然后,程序使用printf函数输出这两个整数的和。

2. 编写一个C语言程序,实现交换两个整数变量的值。

```c#include <stdio.h>int main() {int a = 3, b = 7, temp;temp = a;a = b;b = temp;printf("After swapping, a = %d, b = %d\n", a, b);return 0;}```答案解析:该程序首先定义了两个整数变量a和b,以及一个临时变量temp。

(完整版)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~32767 C) 0~65535 D) 0~21474836474.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。

A) float B) char C) int D) double5. 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 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档