C语言章节练习题
- 格式:docx
- 大小:18.00 KB
- 文档页数:4
C语言分章节练习题(顺序型、选择型和循环型程序设计)姓名:班级:学号:一、选择题1.有如下程序:main(){ int x=1,a=0,b=0;switch(x){ case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是。
AA)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 2.有以下程序main(){ int i=1,j=1,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后输出结果是。
CA)1,1,2 B)2,2,1 C)2,2,2 D)2,2,33.有如下程序:main(){ float x=2.0,y;if(x<0.0)y=0.0;else if(x<10.0)y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是。
CA)0.000000 B)0.250000 C)0.500000 D)1.000000 4.设int x=1,y=1;表达式(!x||y--)的值是。
BA)0 B)1 C)2 D)-15.若运行时给变量x输入12,则以下程序的运行结果是。
A main(){ int x,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%d\n",y);}A)0 B)22 C)12 D)106.在C程序中,判逻辑值时,用“非0”表示逻辑值“真”,又用“0”表示逻辑值“假”。
在求逻辑值时,用表示逻辑表达式值为“真”,又用表示逻辑表达式值为“假”。
A A)1 0 B)0 1 C)非0 非0 D)1 17.若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后a<=25&&b--<=2&&c?printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d,c=%d \n",a,b,c);程序输出的结果是。
c语言一二章试题及答案C语言一二章试题及答案1. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-2D. variable_2答案:D2. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:B3. 以下哪个选项是C语言中的整型数据类型?A. floatB. doubleC. charD. all of the above答案:D4. 在C语言中,如何声明一个字符变量并初始化为'A'?A. char myChar = 'A';B. int myChar = 'A';C. float myChar = 'A';D. double myChar = 'A';答案:A5. 以下哪个选项是C语言中正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. // This is a multi-line commentD. /* This is a multi-line comment */答案:A6. 在C语言中,以下哪个选项是正确的字符串声明方式?A. char str[] = "Hello, World!";B. char str = "Hello, World!";C. char str[] = 'Hello, World!';D. char str = 'Hello, World!';答案:A7. 在C语言中,以下哪个选项是正确的数组声明方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3, 4, 5};答案:A8. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. if (condition){// code}C. if conditionD. if (condition)// code答案:B9. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. for (int i = 0; i <= 10; i++)C. for (int i = 10; i > 0; i--)D. All of the above答案:D10. 在C语言中,以下哪个选项是正确的函数定义?A. void myFunction() {// code}B. int myFunction() {// code}C. void myFunction(int x) {// code}D. All of the above答案:D。
循环章节练习题一、选择题1.设有程序段int k=10;while (k=0) k=k-1;则下面描述中正确的是_______.A. while循环执行10次。
B.循环是无限循环。
C.循环体语句一次也不执行。
D.循环体语句执行一次。
2.设有以下程序段:int x=0,s=0;while(!x!=0) s+=++x;printf(“%d”,s);则________。
A. 运行程序段后输出0。
B. 运行程序段后输出1。
C.程序段中的控制表达式是非法的。
D.程序段执行无限次。
3.下面程序段的运行结果是________。
x=y=0;while(x<15) {y++;x+=++y;}printf(“%d,%d”,y,x);A.20,7 B. 6,12C. 20,8D. 8,203.下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n 中的较大者,请选择填空。
#incldue <stdio.h>main(){ int m=0,n=0;char c;while( (___1____)!=’\n’){ if(c>=’A’&&’Z’) m++;if(c>=’a’&&’z’) n++;}printf(“%d\n”,m<n?___2____);}1)A.c=getchar() B.getchar()C.c=getcharD.scanf(“%c”,c);2)A. n:m B. m:n C. m:m D. n:n4.下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空。
#include <stdio.h> main(){ int a,max=0;scanf(“%d”,&a);while(_______){ if(max<a) max=a;scanf(“%d”,&a);}printf(“%d”,max); }A.a==0B.aC.!a=1D. !a5.下面程序的运行结果是______。
国家开放大学《C语言程序设计》章节测试参考答案第一章C语言概述自测练习一:C语言字符集自测练习1.在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。
(√)2.在C语言字符集中,一个大写英文字母和它的小写英文字母被视为不同的字符。
(√)3.在C语言程序中,ABC和abc被作为同一标识符使用。
(×)自测练习二:C语言字符集自测练习1.在C语言中,保留字是有专门含义和作用的,不能作为一般标识符使用。
(√)2.在C语言中,作为标识符的第一个字符只能是英文字母或下划线,不能是数字字符。
(√)3.C语言中使用的字符常量,其起止标记符是()。
a. 双引号b. 尖括号c. 单引号d. 中括号4.C语言中使用的字符串常量,其起止标记符是()。
a. 双引号b. 中括号c. 尖括号d. 单引号自测练习三:C语句分类自测练习1.在C语言中,一条简单语句的结束符是()。
a. 分号b. 空格c. 冒号d. 逗号2.在C语言中,每条复合语句的开始标记字符为()。
a. <b. [c. (d. {3.不符合C语言规定的复合语句是()。
a. {x=0;}b. {}c. {;}d. {y=10}4.C语言中的选择类语句有两条,它们是()。
a. else和caseb. if和switchc. if和elsed. switch和case自测练习四:函数分类与使用自测练习1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。
a. nameb. mainc. MAINd. function2.C语言程序中的基本功能模块为()。
a. 标识符b. 函数c. 表达式d. 语句3.一个函数定义所包含的两个部分是()。
a. 函数头和函数体b. 函数原型和函数体c. 函数名和参数表d. 函数头和函数尾4.一个程序文件开始使用的每条预处理命令,其首字符必须是()。
a. #b. @c. %d. $5.在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对()。
第1章程序设计基本概念选择题1.解析:计算机语言分为低级语言、汇编语言和高级语言,C语言属于高级语言,但并不是说C语言比其他语言高级,选项A)错误;除了低级语言外,其他各种语言都必须编译成能被计算机识别的二进制数才能执行,选项B)错误;C语言出现于1972年至1973年间,并不是出现最晚的语言,选项D)错误。
2.解析:本题考查最简单的C程序设计知识。
在做题之前一定要慎重对待题干的主要信息,本题所描述的是“3种基本结构”,而选项B),C),D)三个选项则表达的是零零散散的循环结构。
3. 解析:C语言相对其他高级语言来说,放宽了语法检查,因此程序设计自由度大,但并不是不检查语法,C语言的程序是由函数构成的。
函数不能嵌套定义,但是可以嵌套调用。
4. 解析:本题综合考查C语言的概念部分,关于C语言,我们应该了解以下必须要掌握的基础知识:①C程序是由函数构成的。
②一个函数由两部分组成:函数的首部和函数体。
③一个C程序总是从main函数开始执行的,而不论main函数的整个程序中的位置如何(main函数可以放在程序最开始,也可以放在程序最后,或写在一些函数之前,在另一些函数之后)。
④C程序在书写上,表现形式比较自由,一行内可以写几个语句,一个语句可以分写在几行上。
每个语句和数据定义的最后必须有一个分号。
⑤C 程序本身没有输入输出语句。
输入和输出的操作是由库函数scanf和printf 等函数来完成。
⑥可以用/*……*/对C语言的程序的任何部分作注释。
5. 解析:本题考查C语言的综合基础知识。
构成C程序的基本单位是函数,一个C程序总是从main函数开始执行,而不论main函数在整个程序中的位置如何。
C语言的函数定义都是互相平行、独立的,在定义函数时,一个函数内不能定义另一个函数。
C函数定义的一般格式有两种:传统格式和现代格式。
传统格式也称K&R格式,是早期编译系统使用的格式;现代格式又称ANSI格式,是现代编译系统使用的格式。
一、C语言概述练习题选择1.一个C程序的执行是从。
本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成函数组成 C) 若干过程组成 D) 若干子程序组成二、数据类型、运算符与表达式选择. 1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为。
x=(i=4,j=16,k=32) A) 4 B) 16 D) 522.下列四组选项中,均不是C语言关键字的选项是。
C) include case scanf D) while go pow3.下列四组选项中,均是不合法的用户标识符的选项是。
int C) float la0 _A D) -123 abc TEMP4.下列四组选项中,均是合法转义字符的选项是。
\”’‘\\’‘\n’ B)‘\’‘\017’‘\”’ C)‘\018’‘\f’‘xab’ D)‘\\0’‘\101’‘xlf’5.下面不正确的字符常量是。
“c”B) ‘\\’’C) ‘’D) ‘K’6.以下叙述不正确的是。
A) 在C程序中,逗号运算符的优先级最低 B) 在C程序中,MAX和max是两个不同的变量C) 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值7.以下叙述正确的是。
第一章 C语言概述1.1选择题【题1.1】以下不是C语言的特点的是( B )A.C语言简洁、紧凑B.能够编制出功能复杂的程序C. C 语言可以直接对硬件进行操作 D.C语言移植性好【题1.2】以下不正确的C语言标识符是( D )。
A.ABC B.abc C.a_bc D.ab.c【题1.3】以下正确的c语言标识符是( C )。
A.%x B.a十b C.a123 D.test!【题1.4】一个c程序的执行是从( A ).A.main( )函数开始,直到main( )函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main( )函数开始,直到最后一个函数结束【题1.5】一个C语言程序是由(B)。
A)一个主程序和若干子程序组成B)函数组成C)若干过程组成 D)若干子程序组成【题1.6】一个c程序是由( B )。
A.一个主程序和若干子程序组成B.一个或多个函数组成C. 若干过程组成 D.若干子程序组成【题1.7】C语言派程序的基本单位是( B )。
A.过程 B.函数 c子程序 D.标识符【题1.8】编辑程序的功能是( A )。
A.建立并修改程序 B.将c源程序编译成目标程序C.调试程序 D.命令计算机执行指定的操作1.2填空题【题1.9】c语言符号集包括【英文字母、数字和一些有待定含义的标点符号】。
【题1.10】一个c程序有且仅有一个【main()】函数。
【题1.11】C程序的基本单位是【函数】。
【题1.12】一个c程序有【1】个main( )函数和【若干】个其他函数。
【题1.13】在一个C源程序中,注释部分两侧的分界符分别是【/*】和【*/】。
【题1.14】结构化设计中的三种基本结构是【顺序结构、分支结构和循环结构】。
【题1.15】在C语言中,输入操作是由库函数【scanf】完成的,输出函数是由库函数【printf】完成的。
1.3编程题【题1.16】编写一个程序,在屏幕上输出你的姓名。
c语言程序设计第一章试题及答案一、选择题(每题2分,共10分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中合法的变量名?A. _123abcB. intC. forD. myVar答案:C3. 在C语言中,用于声明一个整型变量的关键字是:A. intB. floatC. charD. double答案:A4. 下列哪个选项是C语言中的控制语句?A. printfB. scanfC. ifD. return答案:C5. C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:D二、填空题(每题2分,共10分)1. C语言中,用于输入一个整数的函数是________。
答案:scanf2. 在C语言中,定义一个数组时,数组的下标从________开始。
答案:03. C语言中,用于输出一个浮点数的函数是________。
答案:printf4. C语言中,用于定义一个字符型变量的关键字是________。
答案:char5. C语言中,用于定义一个布尔型变量的关键字是________。
答案:_Bool 或 bool(根据标准不同)三、简答题(每题5分,共20分)1. 请简述C语言中变量的作用域有哪些?答案:变量的作用域主要有局部作用域和全局作用域。
局部作用域通常用于函数内部,变量只在该函数中有效;全局作用域用于函数外部,变量在整个程序中都有效。
2. 解释C语言中的指针是什么?答案:指针是一种特殊的变量,它存储了另一个变量的内存地址。
通过指针,程序可以间接访问和操作内存中的数据。
3. 什么是C语言中的函数原型?答案:函数原型是指函数的声明,它提供了函数的返回类型、函数名、参数类型和数量等信息,但不包含函数的具体实现。
4. 在C语言中,如何定义一个结构体?答案:定义一个结构体需要使用关键字`struct`,后跟结构体的名称,然后是一对花括号,其中包含了结构体成员的声明。
目录第一章程序设计和C语言 (2)第二章最简单的C程序设计 (2)第三章选择结构程序设计 (4)第四章循环结构程序设计 (7)第五章数组 (11)第六章函数 (14)第七章指针 (18)第一章程序设计和C语言一、选择题:1.一个C程序的执行是从( )A、本程序的main函数开始,到main函数结束B、本文件第一个函数开始,到本文件的最后一个函数结束C、本程序的main函数开始,到本文件的最后一个函数结束D、本文件的第一个函数开始,到本文件的main结束2.以下说法不正确的是()A、一个C源程序可由一个或多个函数组成B、一个C程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面3.C语言规定:在一个源程序中,main函数的位置()A、必须在开始B、必须在系统调用的库函数的位置C、可以任意D、必须在最后4.源程序program.c经编译产生的目标文件和连接后产生的可执行文件是( )A、program.bak和program.objB、program.obj和program.exeC、program.exl和program.cD、program.bak和prgram.exe第二章最简单的C程序设计一、选择题1.是合法的用户自定义标识符的( )A、ah-spksB、doubleC、<ctrl>D、_myapple2.以下正确的C语言标识符是()A、%xB、a+bC、a123D、test!3.以下不能定义为用户标识符的是( )A、V oidB、b_2C、intD、name4.以下选项中可作为C语言合法整数的是( )A、11010(B)B、0583C、x2b2D、0xafb5.VC++6.0中的短整型数值在计算机中占用的字节个数是( )A、1B、2C、3D、46.设short int型的数据长度为2个字节,则unsigned short 类型数据的取值范围是()P34A、均为2个字节B、0至65535C、-3276至32767D、-256至255 7.以下选项中可作为C语言合法常量的是()(指数E或e前必须有数字,后面必须有整数)A、-80.0B、-080C、-8e1.2D、-80.0e8.在VC++6.0编译环境下,下列式中,值不为4的表达式是()P34,double为8字节A、sizeof(unsigned long)B、sizeof(long)C、sizeof(unsigned int)D、sizeof(double)9.设有说明语句:char a=’\123’;则变量a( )一个ascii字符A、包含1个字符B、包含2个字符C、3个字符D、说明不合法10.设x为一数字字符,则其所对应的十进制数值为()。
第一章C语言概述一、选择题1.C语言规定,必须用作为主函数名。
A)Function B)include C)main D)stdio 2.一个C程序可以包含任意多个不同名的函数,但有且仅有一个,一个C 程序总是从开始执行。
A)过程B) 主函数C)函数D)include 3.是C程序的基本构成单位。
A)函数B) 函数和过程C) 超文本过程D) 子程序4.下列说法正确的是。
A)一个函数的函数体必须要有变量定义和执行部分,二者缺一不可B)一个函数的函数体必须要有执行部分,可以没有变量定义C)一个函数的函数体可以没有变量定义和执行部分,函数可以是空函数D)以上都不对5.下列说法正确的是。
A)main函数必须放在C程序的开头B)main函数必须放在C程序的最后C)main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的6.下列说法正确的是。
A)在执行C程序时不是从mian函数开始的B)C程序书写格式严格限制,一行内必须写一个语句C)C程序书写格式自由,一个语句可以分写在多行上D)C程序书写格式严格限制,一行内必须写一个语句,并要有行号7.在C语言中,每个语句和数据定义是用结束。
A)句号B)逗号C)分号D)括号8.下列字符串是标识符的是。
A)_HJ B)9_student C)long D)LINE 19.以下说法正确的是。
A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分10.不是C语言提供的合法关键字。
A)switch B)print C)case D)default二、填空题1.一个C程序至少包含一个,即。
2.一个函数由两部分组成,它们是和。
3.函数体的范围是。
C程序设计基本概念
1.编写C程序一般需经过的几个步骤依次是
2.A编辑、调试、编译、连接
3.B编辑、编译、连接、运行
4. C 编译、调试、编辑、连接
5.D编译、编辑、连接、运行
6.以下叙述中正确的是
AC语言比其他语言高级
BC语言可以不用编译就能被计算机识别执行
C C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
DC语言出现的最晚;具有其他语言的一切优点
7.C语言中用于结构化程序设计的3种基本结构是
A顺序结构、选择结构、循环结构
Bif;switch;break
Cfor;while;do-while
Dif;for;continue
8.以下叙述中正确的是
A构成C程序的基本单位是函数
B可以在一个函数中定义另一个函数
Cmain函数必须放在其他函数之前
D所有被调用的函数一定要在调用之前进行定义
9.C语言规定;在一个源程序中;main函数的位置
A必须在最开始
B必须在系统调用的库函数的后面
C可以任意
D必须在最后
10.以下叙述不正确的是
A一个C源程序可由一个或多个函数组成
B一个C程序必须包含一个main函数
CC程序的基本组成单位是函数
D在C程序中;注释说明只能位于一条语句的后面
11.下列选项中不是结构化程序基本结构的是
A顺序结构
B跳转分支结构
C选择结构
D循环结构
基本数据类型、常量和变量、操作符
1.下列可用于C语言用户标识符的一组是
Avoid; define; WORD
B a3_b3; _123;Car
CFor; -abc; IF Case
D2a; DO; sizeof
2.C语言中基本数据类型包括
A整型、实型、逻辑型
B整型、实型、字符型
C整型、字符型、逻辑型
D字符型、实型、逻辑型
3.下面哪些不是常量
4.A067 B’x’ Cabc D”abc” E6.12
5.Fmax G0xab H3e5 I65535 J’\t’
6.C语言中;常量23和3.14的数据类型为
7.Aint和float
8.Blong和float
9.C int和double
10.Dint和long double
11.下面四个选项中;均是不正确的8进制数或16进制数的选项是
A016 0x8f 018
B0abc 017 0xa
C010 -0x11 0x16
D0a12 7ff -123
12.下面四个选项中;均是合法整型常量的选项是
A160 -0xffff 011B-0xcdf 01a 0xe
C-01 986012 0668D-0x48a 2e5 0x
13.下列数据中;不合法的C语言实型数据的是
A0.123B123e3C2.1e3.5D789.0 14.若变量已正确定义并赋值;以下符合C语言语法的表达式是
Aa:=b+1B a=b=c+2
Cint 18.5%3Da=a+7=c+b
15.C语言中运算对象必须是整型的运算符是
A%=B/C=D<=
16.若变量a;i已正确定义;且i已正确赋值;合法的语句是
Aa==1B++i;
C a=a++=5;Da=inti;
17.若有定义:int a=7;float x=2.5;y=4.7;则表达式x+a%3intx+y%2/4的值是
A2.500000B2.750000
C3.500000D0.000000
18.若x;i;j和k都是int型变量;则计算表达式x=i=4;j=16;k=32后;x的值为
A4B16C32D52
19.设有int x=11;则表达式x++1/3的值是
A3B4C11D12
20.设变量a是int型;f是float型;i是double型;则表达式10+a+if值的数据类型为
Aint Bfloat C double D不确定
21.设以下变量均为int类型;表达式的值不为7的是
Ax=y=6;x+y;x+1Bx=y=6;x+y;y+1
Cx=6;x+1;y=6;x+y D y=6;y+1;x=y;x+1
22.若变量a是int类型;并执行了语句:a=’A’+1.6;;则正确的叙述是
Aa的值是字符C
Ba的值是浮点型
C不允许字符型和浮点型相加
Da的值是字符′A′的ASCII值加上1
23.以下选项中;与k=n++完全等价的表达式是
A k=n;n=n+1Bn=n+1;k=n
Ck=++n Dk+=n+1
24.以下叙述正确的是
A在C程序中;每行中只能写一条语句
B若a是实型变量;C程序中允许赋值a=10;因此实型变量中允许存放整型数
C在C程序中;无论是整数还是实数;都能被准确无误地表示
D在C程序中;%是只能用于整数运算的运算符
25.以下变量x;y;z均为double类型且已正确赋值;不能正确表示数学式子x÷y÷z的C
语言表达式是
Ax/yz Bx1/yz
Cx/y1/z D x/y/z
26.不能进行++和--运算的数据类型为
A指针B整型C长整型D常量
标准输入输出
1.若变量已正确说明为float型;要通过语句scanf"%f%f%f";&a;&b;&c;给a赋予
10.0;b赋予22.0;c赋予33.0;下列不正确的输入形式是
A10<回车>22<回车>33<回车>
B10.0;22.0;33.0<回车>
C10.0<回车>22.0 33.0<回车>
D10 22<回车>33<回车>
2.下列程序段的输出结果是:
int a=1234;
float b=123.456;
double c=12345.54321;
printf"%2d;%2.1f;%2.1f";a;b;c;
A无输出B12;123.5;12345.5
C1234;123.5;12345.5D1234;123.4;1234.5
3.下列程序运行的结果是
main
{float x;
int i;
x=3.6;
i=intx;
printf"x=%f;i=%d ";x;i;
}
A x=3.600000;i=3Bx=3.6;i=3
Cx=3;i=3Dx=3.600000;i=3.000000。