c语言习题及答案_爱课程
- 格式:doc
- 大小:383.00 KB
- 文档页数:40
C语言基础题及答案1、一个C语言的源程序中[正确答案:A]。
A)必须有一个主函数B)可以有多个主函数C)必须有主函数和其他函数D)可以没有主函数2、关于C程序的主函数,以下描述中正确的是[正确答案:B]。
A)C程序的第一个函数称为主函数,程序从该函数开始运行。
B)C程序的主函数即是main函数,程序从该函数开始运行。
C)C程序可以有多个主函数,程序从第一个主函数开始运行。
D)C程序可以没有主函数,程序从第一个函数开始运行。
3、C程序中,return语句的作用是[正确答案:D]。
A)终止程序运行B)返回到上层循环C)返回到外层结构D)返回到上层函数4、C语言程序的3种基本结构是[正确答案:A]。
A)顺序结构,选择结构,循环结构B)递归结构,循环结构,转移结构C)嵌套结构,递归结构,顺序结构D)循环结构,转移结构,顺序结构5、以下对C程序的描述中正确的是[正确答案:A]。
A)C程序总是从main()函数开始执行。
B)C程序可以从程序中的任何函数开始执行。
C)C程序总是从第一个定义的函数开始执行。
D)C程序中的main()函数必须放在程序的开始部分。
6、关于C程序第1行的包含语句,以下写法中正确的是[正确答案:D]。
A)#include stdio.h B)#include'stdio.h'C)#include(stdio.h)D)#include<stdio.h>7、关于C语言程序,正确的编程流程应该是[正确答案:A]。
A)编辑→保存→编译→运行B)编译→编辑→运行→保存C)保存→运行→编辑→编译D)运行→编译→保存→编辑8、下列的哪个不是C语言的关键字[正确答案:D]。
A)while B)auto C)break D)printf9、下列的哪个不是C语言的算术运算符[正确答案:C]。
A)+B)%C)=D)-10、下列的哪个不是C语言的关系运算符[正确答案:C]。
A)>=B)<=C)=D)!=11、下列的哪个是错误的描述[正确答案:D]。
大一上c语言考试题及答案解析一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言支持多种数据类型答案:B解析:C语言是一种高级语言,它需要编译成机器语言后才能被计算机执行。
2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. charD. double答案:A解析:在C语言中,整型变量使用关键字int来定义。
3. 下列选项中,哪一个是C语言中的合法标识符?A. 2variableB. _variableC. variable2D. variable$答案:C解析:在C语言中,标识符可以包含字母、数字和下划线,但不能以数字开头。
4. C语言中,用于实现循环结构的关键字是:A. forB. ifC. switchD. while答案:A解析:for关键字用于定义循环结构。
5. 下列关于C语言数组的描述中,正确的是:A. 数组可以存储不同类型的数据B. 数组的大小在定义后可以改变C. 数组的索引从0开始D. 数组可以赋给另一个数组答案:C解析:C语言中数组的索引从0开始。
6. C语言中,用于定义一个浮点型变量的关键字是:A. intB. floatC. charD. double答案:B解析:在C语言中,浮点型变量使用关键字float来定义。
7. 下列选项中,哪一个是C语言中的合法字符串常量?A. "Hello"B. 'Hello'C. "HelloD. 'Hello'答案:A解析:在C语言中,字符串常量使用双引号括起来。
8. C语言中,用于定义一个字符型变量的关键字是:A. intB. floatC. charD. double答案:C解析:在C语言中,字符型变量使用关键字char来定义。
9. C语言中,用于定义一个双精度浮点型变量的关键字是:A. intB. floatC. charD. double答案:D解析:在C语言中,双精度浮点型变量使用关键字double来定义。
《C语言程序设计》1 C语言概述一、单项选择题第一章 C语言概述一、选择题:1、一个C程序的执行是从( A )。
A本程序的main函数开始,到main函数结束B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束D本程序文件的第一个函数开始,到本程序main函数结束2、在 C 语言中,每个语句必须以( D )结束。
A. 回车符B. 冒号C. 逗号D. 分号3、C 语言规定:在一个源程序中,main函数的位置( C )。
A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后4、一个C 语言程序是由( B )。
A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成5、下列说法中错误的是( D )。
A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。
A. 生成可执行目标文件B. 生成目标文件C. 输出运行结果D. 自动保存源文件二、填空题:1、C 语言只有32个关键字和9种控制语句。
2、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。
3、C 语言程序的注释可以出现在程序中的任何地方,它总是以 \* 符号作为开始标记,以 */ 符号作为结束标记。
4、C 语言中,输入操作是由库函数scanf完成的,输出操作是由库函数printf完成的。
5、系统默认的 C 语言源程序文件的扩展名是 .c,经过编译后生成的目标文件的扩展名是 .obj,经过连接后生成的可执行文件的扩展名是.exe 。
6、C 语言的标识符只能由字母、数字和下划线三种字符组成。
第三章数据类型、运算符和表达式一、选择题:1、以下选项中,不正确的 C 语言浮点型常量是( C )。
第一章题目内容:利用printf()在屏幕上输出hello world!提示:#include <>int main(){printf("hello world!\n");return 0;}输入格式:无输出格式:输出提示信息:"hello world!\n"输入样例:输出样例:hello world!#include <>int main(){p rintf("hello world!\n");r eturn 0;}在屏幕上输出多行信息(3分)题目内容:利用printf()函数在屏幕上输出以下多行信息:hello world!hello hit!hello everyone!提示:在printf()函数中转义字符‘\n’表示换行。
输入格式:输出格式:输出提示信息:"hello world!\n""hello hit!\n""hello everyone!\n"输入样例:输出样例:hello world!hello hit!hello everyone!#include <>int main(){printf("hello world!\n");printf("hello hit!\n");printf("hello everyone!\n");return 0;}计算半圆弧的周长及半圆面积(3分)题目内容:编程并输出半径r=的半圆弧的周长及该半圆的面积,的取值为。
要求半径r和必需利用宏常量表示。
输入格式:无输出格式:半圆的面积输出格式: "Area=%f\n"半圆弧的周长输出格式: "circumference=%f\n"输入样例:输出样例:Area=circumference=#include<>#define PI#define Rint main(){printf("Area=%f\n", R*R*PI/2);printf("circumference=%f\n", 2*R*PI/2);return 0;}计算长方体体积(3分)题目内容:编程并输出长、宽、高的长方体的体积。
c语言课程试题及答案一、选择题(每题5分,共20分)1. 下列关于C语言的描述中,错误的是()。
A. C语言是一种高级编程语言B. C语言可以用于编写操作系统C. C语言不支持面向对象编程D. C语言支持多线程编程答案:C2. 在C语言中,用于定义一个整型变量的关键字是()。
A. intB. floatC. doubleD. char答案:A3. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ->D. ++答案:C4. C语言中,用于定义一个函数的关键字是()。
A. functionB. defineC. voidD. int答案:A二、填空题(每题5分,共20分)1. 在C语言中,用于声明一个字符串的语句是______。
答案:char str[] = "Hello";2. C语言中,用于执行循环的语句是______。
答案:for 或 while3. C语言中,用于判断条件的语句是______。
答案:if 或 switch4. 在C语言中,用于定义一个二维数组的语句是______。
答案:int arr[3][4];三、简答题(每题10分,共20分)1. 请简述C语言中指针的概念及其用途。
答案:指针是C语言中的一种变量,它存储了另一个变量的内存地址。
指针可以用于直接访问内存,提高程序的效率;可以作为函数参数,避免数据的复制;可以用于数组操作;可以用于实现动态内存分配等。
2. 请简述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被看作是一个指向数组首元素的指针。
通过数组名可以访问数组中的元素,而数组的索引操作符[]可以用于访问数组元素。
指针可以用于遍历数组,实现数组的动态操作。
四、编程题(每题20分,共40分)1. 编写一个C语言程序,实现输入一个整数,输出该整数的平方。
答案:```c#include <stdio.h>int main() {int num, square;printf("Enter an integer: ");scanf("%d", &num);square = num * num;printf("The square of %d is %d.\n", num, square);return 0;}```2. 编写一个C语言程序,实现输入一个字符串,然后输出该字符串的逆序。
C语言课后习题参考答案习题 1一、选择题1、B2、C3、B4、D5、A6、B7、C二、填空题1、源程序文件 c2、obj3、可执行文件 exe4、机器语言汇编语言高级语言三、解答题略四、编程题1、main(){printf(“Hello! Welcome to China!”);}2、main(){int x;printf(“x=%d”,x);}习题 2一、选择题1、C2、A3、B4、D5、 A6、D7、B8、B9、B 10、D11、D 12、B 13、A 14、B 15、C二、填空题1、整型、实型、字符型2、用户标识符、关键字标识符3、存储单元、符号地址、内存地址4、十、十六、八5、double(双精度型)6、 87、5.5000008、a=-327689、+0017,021,0x11三、写程序运行结果325732577.88, -345.12,7.8765,-345.12307.87654e+00, -3.5e+02a,97,141,611234,2322,4d2CHINESE, CHI四、scanf函数的使用a=3 b=78.5 71.82A a五、用scanf函数输入数据1020Aa1.5-3.75 123.45,67.8注意,其中123.45可以是任意实数,因为该值将被跳过,不用于赋值。
习题 3一、选择题1.C 2.B 3.D 4.D二、填空题基本概念题1.22.23.1阅读程序写出运行结果题4.1.005.1,0,16.6,11,9,10三、写出下面表达式运算后a的值,设原来a=12。
(1)24 (2)10 (3)60 (4)0 (5)0 (6)0习题4一、选择题1、B2、D3、B4、D5、A6、C二、填空题1、1,0,12、1,2,33、ch1>=′A′&&ch1<=′Z′ ch1=ch1-32;三、编程题1、从键盘输入三个数,然后按照由小到大的顺序输出。
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (9)3 答案及部分解析 (11)第4章选择结构习题 (14)1 选择题 (14)2 填空题 (22)3 答案及部分解析 (31)第5章循环结构习题 (35)1 选择题 (35)2 填空题: (47)3 答案及部分解题分析 (60)第6章数组习题 (64)1. 单项选择题 (64)2. 填空题 (68)3. 判断题 (70)4. 程序填空题 (71)5. 阅读程序,分析程序的功能。
(76)第7章函数习题 (85)1. 单项选择题 (85)2. 填空题 (88)3. 判断题 (89)4. 程序填空题 (90)5. 写出下列程序运行结果 (92)第8章指针习题 (103)1 选择题 (103)2 填空题 (107)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2. 下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3. 正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2a define _123 -abc DOWORD IF Case sizeof 5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06. 不属于C语言关键字的是()。
A.int B.break C.while D.character 7. 是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char 8. 以下不能定义为用户标示符的是()。
A.scanf B.Void C._3com_ D.int9. 一个C程序是由()。
c语言考试题及答案以及解析一、选择题1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A解析:在C语言中,关键字是保留的词汇,用于表示特定的语法结构。
int是C语言中用于声明整型变量的关键字。
2. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C解析:在C语言中,乘法运算符是星号(*),用于计算两个数的乘积。
二、填空题1. 在C语言中,以下代码片段的输出结果是:```cint main() {int a = 5;printf("%d", a);return 0;}```输出结果为:_________答案:5解析:代码中的printf函数用于输出变量a的值,a被初始化为5,因此输出结果为5。
2. 下列代码段中,变量b的值是多少?```cint main() {int a = 10, b;b = a + 5;printf("%d", b);return 0;}```变量b的值为:_________答案:15解析:变量b被赋值为变量a加上5,由于a的值为10,所以b的值为15。
三、简答题1. 简述C语言中的数组是什么,并给出一个数组的声明和初始化的例子。
答案:C语言中的数组是一种数据结构,用于存储相同类型的多个元素。
数组的声明需要指定元素的类型和数组的长度。
数组的初始化可以在声明时完成。
解析:例如,声明一个整型数组并初始化:```cint numbers[5] = {1, 2, 3, 4, 5};```2. 解释C语言中的函数是什么,并给出一个简单函数的定义和调用的例子。
答案:C语言中的函数是一段具有特定功能的代码块,可以接收参数,并返回一个值。
函数的定义包括函数的返回类型、名称、参数列表和函数体。
函数的调用是使用函数名称和必要的参数来执行函数。
解析:例如,定义一个函数来计算两个数的和,并调用它:```cint add(int x, int y) {return x + y;}int main() {int result = add(5, 10);printf("%d", result);return 0;}```四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
c语言习题及答案_爱课程m o o c(总37页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第一章题目内容:使用printf()在屏幕上输出 hello world!提示:#include <>int main(){printf("hello world!\n");return 0;}输入格式:无输出格式:输出提示信息:"hello world!\n"输入样例:输出样例:hello world!#include <>int main(){printf("hello world!\n");return 0;}在屏幕上输出多行信息(3分)题目内容:使用printf()函数在屏幕上输出以下多行信息:hello world!hello hit!hello everyone!提示:在printf()函数中转义字符‘\n’表示换行。
输入格式:输出格式:输出提示信息:"hello world!\n""hello hit!\n""hello everyone!\n"输入样例:输出样例:hello world!hello hit!hello everyone!#include <>int main(){printf("hello world!\n");printf("hello hit!\n");printf("hello everyone!\n");return 0;}计算半圆弧的周长及半圆面积(3分)题目内容:编程并输出半径r=的半圆弧的周长及该半圆的面积,的取值为。
要求半径r和必须利用宏常量表示。
输入格式:无输出格式:半圆的面积输出格式:"Area=%f\n"半圆弧的周长输出格式:"circumference=%f\n"输入样例:输出样例:Area=circumference=#include<>#define PI#define Rint main(){printf("Area=%f\n", R*R*PI/2);printf("circumference=%f\n", 2*R*PI/2);return 0;}计算长方体体积(3分)题目内容:编程并输出长、宽、高的长方体的体积。
要求长方体的长、宽、高必须利用const常量表示。
输入格式:无输出格式:长方体的体积输出格式:"volume=%.3f\n"输入样例:输出样例:#include<>int main(){const float l=;const float x=;const float y=;printf("volume=%.3f\n", l*x*y);return 0;}第三章计算两个数的平方和(3分)题目内容:从键盘读入两个实数,编程计算并输出它们的平方和,要求使用数学函数pow(x,y)计算平方值,输出结果保留2位小数。
提示:使用数学函数需要在程序中加入编译预处理命令 #include <>以下为程序的输出示例:please input x and y:,↙result=输入格式:"%f,%f"输出格式:输入提示信息:"please input x and y:\n"输出格式:"result=%.2f\n"输入样例:输出样例:#include<>#include<>int main(){printf("please input x and y:\n");float x, y;scanf("%f,%f", &x, &y);printf("result=%.2f\n", pow(x,2)+pow(y,2));return 0;}逆序数的拆分计算(3分)题目内容:从键盘输入一个4位数的整数,编程计算并输出它的逆序数(忽略整数前的正负号)。
例如,输入-1234,忽略负号,由1234分离出其千位1、百位2、十位3、个位4,然后计算4*1000+3*100+2*10+1 = 4321,并输出4321。
再将得到的逆序数4321拆分为两个2位数的正整数43和21,计算并输出拆分后的两个数的平方和的结果。
以下是程序的输出示例:Input x:-1234↙y=4321a=43,b=21result=2290输入格式:"%d"输出格式:输入提示信息:"Input x:\n"逆序数输出格式:"y=%d\n"逆序数拆分后的输出格式:"a=%d,b=%d\n"平方和的输出格式:"result=%d\n"输入样例:输出样例:#include<>int main(){printf("Input x:\n");int x;scanf("%d", &x);if(x<=0){x=-x;}int a, b, c, d;a=x/1000;b=x/100%10;c=x/10%10;d=x%10;printf("y=%d\n", d*1000+c*100+b*10+a);printf("a=%d,b=%d\n", d*10+c, b*10+a);printf("result=%d\n", (b*10+a)*(b*10+a)+(d*10+c)*(d*10+c));return 0;}拆分英文名(3分)题目内容:从键盘输入某同学的英文名(小写输入,假设学生的英文名只包含3个字母。
如: tom),编写程序在屏幕上输出该同学的英文名,且首字母大写(如: Tom)。
同时输出组成该英文名的所有英文字符在26个英文字母中的序号。
以下为程序的输出示例:input your English name:tom↙Tomt:20o:15m:13输入格式:"%c%c%c"输出格式:输入提示信息:"input your English name:\n"首字母大写的英文姓名的输出格式:"%c%c%c\n"姓名中每个字母在26个英文字母中的序号的输出格式:"%c:%d\n"输入样例:输出样例:#include<>int main(){printf("input your English name:\n");char a, b, c;scanf("%c%c%c", &a, &b, &c);printf("%c%c%c\n", a+'A'-'a', b, c);printf("%c:%d\n", a, a-'a'+1);printf("%c:%d\n", b, b-'a'+1);printf("%c:%d\n", c, c-'a'+1);return 0;}计算体指数(3分)题目内容:从键盘输入某人的身高(以厘米为单位,如174cm)和体重(以公斤为单位,如70公斤),将身高(以米为单位,如)和体重(以斤为单位,如140斤)输出在屏幕上,并按照以下公式计算并输出体指数,要求结果保留到小数点后2位。
假设体重为w公斤,身高为h米,则体指数的计算公式为:以下是程序的输出示例:input weight, height:70,174↙weight=140height=t=输入格式:"%d,%d"输出格式:输入提示信息:"input weight, height:\n" (注意:在height和逗号之间有一个空格)体重输出格式:"weight=%d\n"身高输出格式:"height=%.2f\n"体指数输出格式:"t=%.2f\n"输入样例:输出样例:#include<>int main(){int x, y;printf("input weight, height:\n");scanf("%d,%d", &x, &y);printf("weight=%d\n", x*2);printf("height=%.2f\n", y/;printf("t=%.2f\n", x/((y/*(y/));return 0;}第四章数位拆分(4分)题目内容:从键盘上输入一个4位数的整数n,编写程序将其拆分为两个2位数的整数a和b,计算并输出拆分后的两个数的加、减、乘、除和求余运算的结果。
例如n=-4321,设拆分后的两个整数为a,b,则a=-43,b=-21。
除法运算结果要求精确到小数点后2位。
求余和除法运算需要考虑除数为0的情况,即如果拆分后b=0,则输出提示信息"the second operater is zero!"程序的运行结果示例1:please input n:1200↙12,0sum=12,sub=12,multi=0the second operater is zero!程序的运行结果示例2:please input n:-2304↙-23,-4sum=-27,sub=-19,multi=92dev=,mod=-3输入格式:"%d"输出格式:输入提示信息:"please input n:\n"拆分后的两个整数的输出格式:"%d,%d\n"加法、减法、乘法的输出格式:"sum=%d,sub=%d,multi=%d\n"除法和求余的输出格式:"dev=%.2f,mod=%d\n"除数为0的提示信息:"the second operater is zero!\n"输入样例:输出样例:#include <>main(){int m,x,y;printf("please input n:\n");scanf("%d",&m);x=m/100;y=m%100;printf("%d,%d\n",x,y);printf("sum=%d,sub=%d,multi=%d\n",x+y,x-y,x*y); if (y!=0){printf("dev=%.2f,mod=%d\n",(float)x/y,x%y);}else{printf("the second operater is zero!\n"); }}快递费用计算(4分)编写程序,从键盘输入邮件的目的区域编码和重量,计算并输出运费,计算结果保留2位小数。