文档库 最新最全的文档下载
当前位置:文档库 › c语言分章练习及答案(三)

c语言分章练习及答案(三)

c语言分章练习及答案(三)
c语言分章练习及答案(三)

一、选择题(每题2分,共40分)

1、C语言源程序的基本单位是( )

A.程序行

B.语句

C.函数

D.字符

2、C语言规定:在一个源程序中,main函数的位置()。

A.必须在最开始B.必须在系统调用的库函数的后面

C.可以任意D.必须在最后

3、在下列字符列中,合法的标识符是( )

A.p12&.a

B.stud_100

C. water$12

D.88sum

4、在C语言中,要求运算的数必须是整数的运算符是()

A./

B.!

C.%

D.= =

5、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a的值是()

A、3

B、0

C、9

D、-12

6、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为()

A、1

B、2

C、3

D、4

7、执行下列程序时输入:1234567,程序的运行结果是()

main()

{

int x,y;

scanf(“%2d%*2c%1d”,&x,&y);

printf(“%d\n”,x+y);

}

A.17

B.46

C.15

D.9

8、下述程序的输出结果是() #include

void main()

{int x=-1,y=4;

int k;

k=++x<=0&&!(y--<=0);

printf("%d,%d,%d",k,x,y);}

A.0,0,3

B.0,1,2,

C.1,0,3,

D.1,1,2

9、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

A.缩排位置相同的if

B.在其之前未配对的if

C.在其之前未配对的最近的if

D.同一行上的if

10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()

main()

{int x;

scanf(“%d“,&x);

if(x++>5)printf(“%d”,x);

else printf(“%d\n”,x--);

}

A.7和5

B.6和3

C.7和4

D.6和4

11、若变量c为char类型,能正确判断出c为小写字母的表达式是( )

A. 'a'<=c<= 'z'

B. (c>= 'a')||(c<= 'z')

C. ('a'<=c)and ('z'>=c)

D. (c>= 'a')&&(c<= 'z')

12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。 if(x>y) z=x; x=y; y=z;

A.x=10, y=20, z=30

B.x=20, y=30, z=30

第 1 页共6 页

C.x=20, y=30, z=10

D.x=20, y=30, z=20

13、以下程序的输出结果为

main( )

{int i,f1,f2;

f1=f2=1;

for(i=0;i<4;i++)

{printf(“%d%d”,f1,f2);

f1+=f2;

f2+=f1; } }

A.1 2 3 4 5 6 7 8

B.1 1 2 3 5 8 13 21

C.1 1 3 5 7 9 11 13

D.1 3 5 7 9 11 13 15

14、以下程序段()。

x=-1;

do

{ x=x*x;}

while(! x);

A.是死循环

B.循环执行二次

C.循环执行一次

D.有语法错误

15、执行语句for (i=1;i++<4;) ; 后变量i 的值是()。

A.3 B.4 C .5 D.不定

16、在定义int a[10];之后,对a的引用正确的是()。

A.a[10]

B.a[6.3]

C.a(6)

D.a[10-10]

17、在定义int a[5][6];后,第10个元素是()。

A.a[2][5]

B.A[2][4]

C.a[1][3]

D.a[1][5]

18、定义如下变量的数组:

int i;

int x[3][3]={1,2,3,4,5,6,7,8,9};

则下列语句的输出结果是()

for(i=0;i<3;i++)printf(“%d”,x[i][2-i]);

A.159

B.147

C.357

D.369

19、在C语言中,若对函数类型未另显示说明,则函数的隐含类型是()

类型。

A.void

B.double

C.int

D.char

20、设int * p,i;以下正确的语句是()。

A.* p=10;

B.i=p ;

C.i=* p;

D.p=2* p+1;

二、填空题(每空1分,共10分)

1、结构化设计中的三种基本结构是_________、__________、

__ __。

2、C语言源程序文件的后缀是___________,经过编译后生成文件的后

缀是___________,经过链接后生成文件的后缀是____________。

3、定义int x,y;执行y=(x=1,++x,x+2);语句后,y的值是___________。

4、若执行以下程序段:

int a=1,b=2,m=2,n=2;

(m=a>b)&&++n;则n的值是______________。

5、下述语句执行后,

int k=1; while (k++<10); 变量k 的值是____________。

6、定义如下变量的数组:

int i;

int x[3][3]={1,2,3,4,5,6,7,8,9};

for(i=0;i<3;i++)printf(“%d”,x[i][2-i]);

则上列语句的输出结果是____________。

三、补充完整程序(每题5分,共20分)

1、已知能被4整除而不能被100整除的或者能被400整除的年份是润年,

第 2 页共6 页

则判断某一年是否是润年的程序如下,请填空:

main()

{

int year,leap;

scanf(“%d”,&year);

if( ① ) leap=1;

else leap=0;

if( ② ) printf(“是润年”);

else printf(“不是润年”);

}

2、用辗转相减法求两个正整数m和n的最大公约数。main()

{int m,n;

________①_______;

while(m-n!=0)

if(m>n)____②_____;

else _____③_____;

printf("gcd(m,n)=%d\n",m);}

3、计算1+1/2+1/4+…+1/50的值,并显示出来。

main()

{ int i=2;

float sum=1.0;

while(i<= ① )

{ sum+=1/ ② ;

i+=2;

}

printf(“sum=%f\n”,sum);

}

4、利用一维数组求显示fibonacci数列的前20项,每行显示5个数,每

个数宽度5位,即:0,1,1,2,3,5,8,13……。

main()

{int i;

int x[20]=________①__________;

for(i=2;i<20;i++)

______②_______ ;

for(i=0;i<20;i++)

{if(i%5==0)printf(“\n”);

_______③_________;

}

printf(“\n”);}

四、编程题(7+8+7+8,共30分)

1、有1、

2、

3、4个数字,能组成多少个互不相同且无重复数字的三位

数?都是多少?

2、一个整数,它加上100后是一个完全平方数,再加上168又是一个完

全平方数,求1000以内满足条件的数。

第 3 页共6 页

3、输出打印九九乘法表。

4、一个5位数,判断它是不是回文数。即12321是回文数,个位与万位

相同,十位与千位相同。

第 4 页共6 页

一、选择题(每题2分,共40分)

1、C

2、C

3、B

4、C

5、D

6、B

7、A

8、C

9、C 10、A 11、D 12、B

13、B 14、C 15、C 16、D 17、C 18、C 19、C 20、B

二、填空题(每空1分,共10分)

1、顺序结构、选择结构、循环结构

2、.c,.obj,.exe

3、4

4、2

5、11

6、357

三、补充完整程序(每题5分,共20分)

1、①year%4==0&&year%100!=0||year%400==0 ②leap

2、①scanf(“%d%d”,&m,&n) ②m=m-n ③n=n-m

3、①50 ②i

4、①{0,1} ②x[i]=c[i-1]+x[i-2] ③printf(“%5d”,x[i])

四、编程题(7+8+7+8,共30分)

1、main()

{

int i,j,k;

printf("\n");

for(i=1;i<5;i++)/*以下为三重循环*/

for(j=1;j<5;j++)

for (k=1;k<5;k++)

{

if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/

printf("%d,%d,%d\n",i,j,k);

}

}

2、#include "math.h"

main()

{

long int i,x,y,z;

for (i=1;i<100000;i++)

{ x=sqrt(i+100); /*x为加上100后开方后的结果*/

y=sqrt(i+268); /*y为再加上168后开方后的结果*/

if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/

printf("\n%ld\n",i);

}

}

3、#include "stdio.h"

main()

{

int i,j,result;

printf("\n");

for (i=1;i<10;i++)

{ for(j=1;j<10;j++)

{ result=i*j;

printf("%d*%d=%-3d",i,j,result);/*-3d表示左对齐,占3位*/

}

printf("\n");/*每一行后换行*/

}

}

4、main( )

{

long ge,shi,qian,wan,x;

第 5 页共6 页

scanf("%ld",&x);

wan=x/10000;

qian=x%10000/1000;

shi=x%100/10;

ge=x%10;

if (ge==wan&&shi==qian)/*个位等于万位并且十位等于千位*/

printf("this number is a huiwen\n");

else

printf("this number is not a huiwen\n");

}

第 6 页共6 页

C语言1-5章复习题及参考答案

一.选择题 1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。 A .-3 B.9 C.-12 D.6 2、若有定义:int a=8, b=5, c; 执行语句 c=a/b+0.4; 后,c的值为()。 A .1.4 B.1 C.2.0 D.2 3、有如下程序: void main() { int i,sum; for(i=1;i<=3;sum++) sum+=i; printf("%d\n",sum); } 该程序的执行结果是()。 A .6 B.3 C.死循环 D.0 4、下列关于表达式的描述中,错误的是()。 A . 常量和变量都是表达式。 B. 运算符类型对应表达式的类型。 C. 每一个表达式都有自己的值。 D. 表达式必须以分号结尾。 5、C语言中,合法的长整型常数是()。 A . '\t' B.” A” C.65 D.a 6、若已定义 x 和 y为double 类型,则表达式 x=1;y=(x+3)/2 的值是()。 A .1 B.2 C.2.00000 D.2.50000 7、表达式:10!=9的值是()。 A . true B. 非零值 C.0 D.1 8、以下程序的输出结果是()。 #include void main() { printf("%d\n", NULL); } A . 不确定的 B.0 C.-1 D.1 9、请选出合法的C语言赋值语句。() A . a=b=58 B.i++; C. a=58,b=58 D. k=int(a+b); 10、假设 int b=2; 表达式(b>>2)/(b>>1)的值是()。 A .0 B.2 C.4 D.8 11、关于语句printf(“hello world\n”);,下列描述中错误的是()。 A . printf()是格式化输出函数,用于输出信息。 B. printf()括号中的内容为函数的参数。 C. printf()括号中的内容会全部输出到控制台上。 D. \n表示换行操作。 12、下列选项中,哪一项不是C语言中的位运算符()。 A .& B.|| C.~ D.^ 13、以下程序的输出结果是()。 void main()

计算机二级C语言章节练习题及答案(一)

1.1 程序和程序设计 1[单选题] 数据库概念设计的过程中,以下各项中不属于视图设计设计次序的是( )。 A.自顶向下 B.由整体到个体 C.由内向外 D.由底向上 参考答案:B 参考解析:数据库概念设计的过程中,视图设计一般有三种设计次序,它们是:自顶向下。这种方法是先从抽象级别高且普遍性强的对象开始逐步细化、具体化与特殊化。 由底向上。这种设计方法是先从具体的对象开始,逐步抽象,普遍化与一般化,最后形成一个完整的视图设计。由内向外。这种设计方法是先从最基本与最明显的对象着手逐步扩充至非基本、不明显的其他对象。 2[单选题] 关系数据库管理系统能实现的专门关系运算包括( )。 A.选择、投影、连接 B.排序、查找、统计 C.关联、更新、排序 D.显示、打印、制表 参考答案:A 参考解析:关系数据库管理系统能实现的专门关系运算,包括选择运算、投影运算、连接运算。 3[单选题] 关系表中的每一横行称为一个( )。 A.字段

B.元组 C.行 D.码 参考答案:B 参考解析:在关系数据库中,关系模型采用二维表来表示,简称“表”。二维表由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。本题答案是B)。 4[单选题] 下列叙述中正确的是( )。 A.数据库不需要操作系统的支持 B.数据库设计是指设计数据库管理系统 C.数据库是存储在计算机存储设备中的、结构化的相关数据的集合 D.数据库系统中,数据的物理结构必须与逻辑结构一致 参考答案:C 参考解析:数据库是存储在计算机存储设备中的、结构化的相关数据的集合。数据库中的数据不只是面向某一项特定的应用,而是面向多种应用,可以被多个用户、多个应用程序共享,不具有独立的系统。设计数据库的目的实质上是设计出满足实际应用需求的实际关系模型。数据库技术的主要目的是有效地管理和存取大量的数据资源,包括:提高数据的共享性,使多个用户能够同时访问数据库中的数据;减小数据的冗余,以提高数据的一致性和完整性;提供数据与应用程序的独立性,从而减少应用程序的开发和维护代价。本题答案为c)。 5[单选题] 数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。 A.加工 B.控制流 C.数据存储

c语言第1、2章练习题答案

第1、2章练习题 1.以下叙述正确的是()。B A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如fun(fun(x)) C)C语言函数不可以单独编译D)C语言除了main函数外,其他函数不可以作为单独文件形式存在 2.以下叙述正确的是()。C A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句 C)简单的C语句必须以分号结束D)C语句必须在一行内写完 3.以下叙述中正确的是()。C A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格,要求一行内只能写一条语句 C)C程序书写格式自由,一条语句可以写在多行上 D)用C语言编写的程序只能放在一个程序文件中 4.下列叙述中错误的是()。A A)一个C语言程序只能实现一种算法B)C语言程序可以由多个程序文件组成 C)C语言程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在5.以下叙述中正确的是()。C 页脚内容1

A)C语言程序将从源程序中的第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D)main可作为用户标识符,用以命名任意一个函数作为主函数 6.对于一个正常运行的C程序,以下叙述正确的是()。A A)程序的执行总是从main函数开始,在main函数中结束 B)程序的执行总是从程序的第一个函数开始,在main函数结束 C)程序的执行总是从main函数开始,在程序的最后一个函数中结束 D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束7.下列叙述正确的是()。D A)每个C语言程序文件中都必须有一个main( )函数 B)在C语言程序中main( )函数的位置是固定的 C)C语言程序中所有函数之间都可以相互调用,与函数所在的位置无关 D)在C语言程序的函数中不能定义另一个函数 8.下列叙述中错误的是()。B A)C程序在运行过程中所有计算机都以二进制方式进行 B)C程序在运行过程中所有计算机都以十进制方式进行 页脚内容2

C语言第8章习题及答案

第八章 用一个数组存放图书信息,每本书是一个结构,包括下列几项信息:书名、作者、出版年月、借出否,试写出描述这些信息的说明,并编写一个程序,读入若干本书的信息,然后打印出以上信息。#include <> typedef struct { char Name[20]; char Author[20]; int Date_Year; int Date_Month; int loaned; } BOOK; #define N 10 void main() { BOOK books[N]; int i; for (i=0;i

} for (i=0;i #include <> typedef struct { char s[20]; int count; } WORD; #define N 100 WORD words[N]={0}; int word_count=0; int IsSeparator(char c) { if ( 'A'<=c && c<='Z' || 'a'<=c && c<='z' || '0'<=c && c<='9' || '_'==c || '-'==c)

C语言数组练习及答案

第四部分数组 4.1 选择题 1. 以下关于数组的描述正确的是(c )。 A. 数组的大小是固定的,但可以有不同的类型的数组元素 B. 数组的大小是可变的,但所有数组元素的类型必须相同 C. 数组的大小是固定的,所有数组元素的类型必须相同 D. 数组的大小是可变的,可以有不同的类型的数组元素 2. 以下对一维整型数组a的正确说明是(d )。 A.int a(10); B. int n=10,a[n]; C.int n; D. #define SIZE 10 scanf("%d",&n); int a[SIZE]; int a[n]; 3. 在C语言中,引用数组元素时,其数组下标的数据类型允许是(c )。 A. 整型常量 B. 整型表达式 C. 整型常量或整型表达式 D. 任何类型的表达式 4. 以下对一维数组m进行正确初始化的是(c )。 A. int m[10]=(0,0,0,0) ; B. int m[10]={ }; C. int m[ ]={0}; D. int m[10]={10*2}; 5. 若有定义:int bb[ 8];。则以下表达式中不能代表数组元bb[1]的地址的是(c )。 A. &bb[0]+1 B. &bb[1] C. &bb[0]++ D. bb+1 6. 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是(d )。 A. 3 B. 6 C. 10 D. 20 7. 若有以下说明: int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g; 则数值为4的表达式是(d ) A. a[g-c] B. a[4] C. a['d'-'c'] D. a['d'-c] 8. 以下程序段给数组所有的元素输入数据,请选择正确答案填入(a )。 #include main() { int a[10],i=0; while(i<10) scanf("%d",________ ); ┇ }

C语言全部章节习题集及答案

《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 语言的标识符只能由字母、数字和下划线三种字符组成。 第三章数据类型、运算符和表达式

C语言基础练习题含答案

第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D.-_ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C._buy D.buy 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char 8.以下不能定义为用户标示符的是()。

A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号 B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。 A.C程序的机器语言版本 B.一组机器语言指令 C.将C源程序编译成目标程序 D.由制造厂家提供的一套应用软件

c语言第1、2章练习题答案

第1、2xx 练习题 1.以下叙述正确的是()。B A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如 fun(fun(x))C) C语言函数不可以单独编译D) C语言除了main函数外,其他函数不可以作为单独文件形式存在2.以下叙述正确的是()。C A) C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C) 简单的C语句必须以分号结束D) C语句必须在一行内写完 3.以下叙述中正确的是()。C A) C程序中的注释只能出现在程序的开始位置和语句的后面 B) C程序书写格式严格,要求一行内只能写一条语句 C) C程序书写格式自由,一条语句可以写在多行上 D) 用C语言编写的程序只能放在一个程序文件中 4.下列叙述中错误的是()。A A) —个C语言程序只能实现一种算法B) C语言程序可以由多个程序文件组成C) C语言程序可以由一个或多个函数组成D) —个C函数可以单独作为一个C 程序文件存在5.以下叙述中正确的是()。C A) C语言程序将从源程序中的第一个函数开始执行 B) 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C) C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D) main 可作为用户标识符,用以命名任意一个函数作为主函数 6.对于一个正常运行的C程序,以下叙述正确的是()。A A) 程序的执行总是从main函数开始,在main函数中结束

B)程序的执行总是从程序的第一个函数开始,在main函数结束 C)程序的执行总是从main函数开始,在程序的最后一个函数中结束 D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束 7.下列叙述正确的是()。D A)每个C语言程序文件中都必须有一个main()函数 B)在C语言程序中main()函数的位置是固定的 C)C语言程序中所有函数之间都可以相互调用,与函数所在的位置无关 D)在C语言程序的函数中不能定义另一个函数 8.下列叙述中错误的是()。B A)C程序在运行过程中所有计算机都以二进制方式进行 B)C程序在运行过程中所有计算机都以十进制方式进行 C)所有C程序都需要在链接无误后才能运行 D)C程序中整型变量只能存放整数,实型变量只能存放浮点数 9.计算机能直接执行的程序是()。D A)源程序B)目标程序C)汇编程序D)可执行程序10. C语言源程序的后缀名是()。B A).exeB).cC).objD).cp 11 .下列叙述中错误的是()。D A)计算机不能直接执行用C语言编写的源程序 B)C程序经C编译器编译后,生成后缀为.obj的文件,这是一个二进制文 C)后缀为.obj的文件,经连接后生成后缀为.exe的文件,这是一个二进制文件

(完整版)C语言各章节复习题(带答案)

一、C语言概述练习题 选择 1.一个C程序的执行是从。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 2.以下叙述不正确的是。 A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面 3.以下叙述正确的是。 A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误 B) 在C程序中,main函数必须位于程序的最前面 C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句 4.一个C语言程序是由。 A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成 5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。 A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。

A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行 C)通过编译得到的二进制目标程序需要连接才可以运行 D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件 7.以下叙述正确的是。 A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x)) C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在 二、数据类型、运算符与表达式 选择. 1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 52 2.下列四组选项中,均不是C语言关键字的选项是。 A)define IF type B)getc char printf C)include case scanf D)while go pow 3.下列四组选项中,均是不合法的用户标识符的选项是。A) W P_0 do B) b-a goto int C) float la0 _A D) -123 abc TEMP 4.下列四组选项中,均是合法转义字符的选项是。 A)‘\”’‘\\’‘\n’ B)‘\’‘\017’‘\”’ C)‘\018’‘\f’‘xab’D)‘\\0’‘\101’‘xlf’ 5.下面不正确的字符常量是。

(完整版)【推荐】C语言各章节练习题(含答案)

一、C语言概述练习题 选择1.一个C程序的执行是从 A 。 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 2.以下叙述不正确的是 D 。 A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数在C程序中,注释说明只能位于一条语句的后面 3.以下叙述正确的是 C 。 A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误 B) 在C程序中,main函数必须位于程序的最前面 语言本身没有输入输出语句 D) C程序的每行中只能写一条语句 4.一个C语言程序是由 B 。 A)一个主程序和若干个子程序组成函数组成 C) 若干过程组成 D) 若干子程序组成 二、数据类型、运算符与表达式 选择. 1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C. x=(i=4,j=16,k=32) A) 4 B) 16 D) 52 2.下列四组选项中,均不是C语言关键字的选项是 A 。 C) include case scanf D) while go pow 3.下列四组选项中,均是不合法的用户标识符的选项是 B 。 4.下列四组选项中,均是合法转义字符的选项是 A 。 \”’‘\\’‘\n’ B)‘\’‘\017’‘\”’ C)‘\018’‘\f’‘xab’ D)‘\\0’‘\101’‘xlf’5.下面不正确的字符常量是 A 。 “c”B) ‘\\’’C) ‘’D) ‘K’ 6.以下叙述不正确的是 D 。 A) 在C程序中,逗号运算符的优先级最低 B) 在C程序中,MAX和max是两个不同的变量 C) 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 7.以下叙述正确的是 B 。 A) 在C程序中,每行只能写一条语句 若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数 C) 在C程序中,%是只能用于整数运算的运算符(字符型也可以) D) 在C程序中,无论是整数还是实数,都能被准确无误地表示

C语言课后练习题答案第五章

作业四:简单程序设计 1.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式(B);如果字符串长度小于5,则输出按方式(C)。(5分)(重要) A) 从左起输出该字符串,右补空格B) 按原字符长从左向右全部输出 C) 右对齐输出该字符串,左补空格D) 输出错误信息 2.阅读以下程序,当输入数据的形式为:25,13,10(注:表示回车),则正确的输出结果为(D)。(5分) main() { int x,y,z; scanf(“%d%d%d”,&x,&y,&z);要和这里一样 printf(“x+y+z=%d\n”,x+y+z); } A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 不确定值 3.根据下面的程序及数据的输入和输出形式,程序中输入数据的正确形式应该为(WXY)。(5分) main() { char ch1,ch2,ch3;

scanf(“%c%c%c”,&ch1,&ch2,&ch3); printf(“%c%c%c”,ch1,ch2,ch3); } 4.以下的输出结果是(x=1,y=2*sum*=3 10 Squard is : 100)。(5分) main() { int x=1,y=2; printf(“x=%d y=%d * sum * =%d\n”,x,y,x+y); printf(“10 Squared is : %d\n”,10*10); } 5.若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=’a’,c2=’b’,想得到以下的输出格式和结果,请写出程序(包括定义变量类型和设计输出)。要求输出的结果如下:(20分) a= 3 b= 4 c= 5 x=1.200000,y=2.400000,z=-3.600000 x+y= 3.6 y+z=-1.20 z+x=-2.40 u= 51274 n= 128765 c1=’a’ or 97(ascll) c2=’b’ or 98(ascll) main() { int a=3,b=4,c=5;

C语言习题及答案

第1题(2.0分)题号:97 难度:中第1章 以下不正确的叙述是()。 A:在C程序中所用的变量必须先定义后使用 B:程序中,APH和aph是两个不同的变量 C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值 答案:D 第2题(2.0分)题号:204 难度:中第10章 在下列程序段中,枚举变量c1,c2的值依次是()。 enum color {red,yellow,blue=4,green,white} c1,c2; c1=yellow;c2=white; printf("%d,%d\n",c1,c2); A:1,6 B:2,5 C:1,4 D:2,6 答案:A 第3题(2.0分)题号:601 难度:中第2章 下面四个选项中,均是不合法的浮点数的选项是()。 A:160. 0.12 e3 B:123 2e4.2 .e5 C:-.18 123e4 0.0 D:-e3 .234 1e3 答案:B 第4题(2.0分)题号:621 难度:中第3章 printf函数中用到格式符%5s,其中数字5表示输出的字符串占用 5列,如果字符串长度大于5,则输出按方式()。 A:从左起输出该字符串,右补空格 B:按原字符长从左向右全部输出 C:右对齐输出该字串,左补空格 D:输出错误信息 答案:B 第5题(2.0分)题号:694 难度:中第3章 以下叙述正确的是()。 A:可以把define和if定义为用户标识符

B:可以把define定义为用户标识符,但不能把if定义为用户标识符 C:可以把if定义为用户标识符,但不能把define定义为用户标识符 D:define和if都不能定义为用户标识符 答案:B 第6题(2.0分)题号:575 难度:中第4章若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于 表达式(exp)的是()。 A:(exp==0) B:(exp!=0) C:(exp==1) D:(exp!=1) 答案:B 第7题(2.0分)题号:208 难度:中第4章下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是()。A:8 B:23 C:17 D:6 答案:B 第8题(2.0分)题号:632 难度:中第5章以下叙述正确的是()。 A:do-while语句构成的循环不能用其它语句构成的循环来代替. B:do-while语句构成的循环只能用break语句退出. C:用do-while语句构成的循环,在while后的表达式为非零时结束循环. D:用do-while语句构成的循环,在while后的表达式为零时结束循环 答案:D 第9题(2.0分)题号:506 难度:中第5章以下程序段的输出结果为()。 for(i=4;i>1;i--) for(j=1;j

C语言1-5章复习题及参考答案

一.选择题 1、若a 为int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是()。 A .-3 B.9 C.-12 D.6 2、若有定义: int a=8, b=5, c; 执行语句 c=a/b+0.4; 后, c 的值为( )。 A .1.4 B.1 C.2.0 D.2 3、有如下程序: void main() { int i,sum; for(i=1;i<=3;sum++) sum+=i; printf("%d\n",sum); } 该程序的执行结果是( )。 A .6 B.3 C 死循环 D.0 4、下列关于表达式的描述中,错误的是( )。 6、若已定义x 和y 为double 类型,则表达式 x=1;y=( x+3)12的值是() A .1 B.2 C.2.00000 D.2.50000 7、表达式: 10!=9 的值是( )。 A . true B. 非零值 C.0 D.1 8、以下程序的输出结果是( )。 #include void main () { printf ("%d\n", NULL ); } A . 不确定的 B.0 C.-1 D.1 9 、请选出合法的 C 语言赋值语句。 ( ) A . a=b=58 B.i++; C. a=58,b=58 D. k=int (a+b ); 10、 假设 int b=2;表达式(b?2)/(b>>1)的值是()。 A .0 B.2 C.4 D.8 11、 关于语句 printf ( “hello n ”,); 下列描述中错误的是() A . printf ()是格式化输出函 数,用于输出信息。 B. printf () 括号中的内容为函数的参数。 C. printf ()括号中的内容会全部输出到控制台上。 D. \n 表示换行操作。 12、 下列选项中,哪一项不是 C 语言中的位运算符()。 A ?& B.|| C.~ D.A 13、 以下程序的输出结果是( )。 void main () { char c='z'; printf("%c", c-25); } A .a B.Z C.z-25 D.y 14、 若要求在if 后一对圆括号中表示 a 不等于0的关系,则能正确表示这一关系的表达式为 ( )。 A . a<>0 B. !a C. a=0 D. a A . 常量和变量都是表达式。 C. 每一个表达式都有自己的值。 5、 C 语言中,合法的长整型常数是( A . '\t' B.”A ” C.65 D.a B. 运算符类型对应表达式的类 型。 D. 表达式必须以分号结尾。

单片机题库分章节答案(C语言)

(红色是考试考过的,蓝色是老师给的习题“重点看“) 第1部分单片机概述及数学基础 一、填空题 1、十进制255的二进制是 11111111 ,十六进制是FF 。 2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/ 输出接口电路、以及相互连接的总线等集成在一块芯片上。 3、十进制127的二进制是—1111111—,十六进制是—7F _________ 。 4、+59 的原码是—0011101L,-59 的补码是—1100010—。 5、十进制数100转换为二进制数是_1100100;十六进制数100转换为十进制数是_256_。 &十进制数40转换为二进制数是_10100L ;二进制数10.10转换为十进制数是 2. 5 ___ 。 7、十进制99的二进制是1100 011 ,十六进制是 63 。 二、判断题 (X ) 1、AT89S51是一种高性能的16位单片机。8位机 ( X ) 2、有符号正数的符号位是用1表示的。 三、选择题 ()1、计算机中最常用的字符信息编码是(A ) A.ASCII B.BCD码 C.余3码 D.循环码 四、简答题 1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 第2部分51单片机硬件结构、存储系统及 I/O 接口 一、填空题 1、AT89S51单片机共有 4个8位的并行I/O 口,其中既可用作地址/数据口, 又可用作一般的I/O 口的是—P0 。

2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为一1/12卩S 机器周期为1仅S .。 3.AT89S51单片机字长是___8_ ,有___40根引脚。 4. 89S51单片机是 8位单片机,其PC计数器是16位。 5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6 yS,—个机器 周期是 2卩S S 6.89S51单片机是______ +5 _____ V供电的。4.0-5.5V 7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。 8. MSC — 51系列单片机具有 4个并行输入/输出端口,其中 P0 口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而—P1_ 口是一个专供用户使用的I/O 口,常用于第二功能的是 P3 口。 9.当单片机系统进行存储器扩展时,用P2 口的作为地址总线的高八位,用 P0作为地址总线的低八位。 10.____________________ 半导体存储器分为_ ROM ____ 和 RAM 两大类,其中前者具 有非易失性(即掉电后仍能保存信息),因而一般用来存放系统程序,而后者具有易失性,因而一般用来存放经常变动的用户程序.中间结果等。 11.___________________________________________________ MCS-51系列单片机对外部数据存储器是采用 DPTR _____________________________ ■乍为指针的,其字长为—16 位,因而可寻址的数据存储器的最大空间为 64K_字节。 12.51单片机有—26_个特殊功能寄存器,其中—11_个具有位寻址功能。 13.当单片机系统需要外扩展存储器时,—P2_和—P0 —作为地址总线。 14.AT89S51单片机上电初始化后,将自动设置一些寄存器的初始值,其中堆栈 指针SP的初始值为____ 07H —,P0 口复位值是—FFH—。 15._______________________ 单片机两种节电模式:空闲模式和—掉电模 式,节电模式是由特殊功能寄存器—PCON_中的有关位来控制的。 16.在单片机硬件设计时,31脚一般要接___高电平—,晶振在PCB设计中应

C语言练习题及答案

1 . ( A )是构成 C 语言程序的基本单位。 A 、函数 B 、过程 C 、子程序 D 、子例程 2. C 语言程序从 C 开始执行。 A)程序中第 条可执行语句 B)程序中第一 -个函数 C)程序中的main 函数 D)包含文件中的第一个函数 3、以下说法中正确的是( C )。 11.如果int a=3,b=4 ;则条件表达式 "abook line# B 、 I\am a123 D ) 123 )° 5%2 C)1 D 、Pxq )° B 、整 型、 D 、整 型、 3pai His.age 实型、逻辑型、字符型 实型、字符型 C —° D)3

C语言按章节习题-带答案

C语言单元复习题(一) 第一章 1、在TURBO C环境中用RUN命令运行一个C程序时,所运行的程序的后缀是。 2、C语言源程序文件的后缀是______,经过编译后, 生成文件的后缀是______,经过连接后,生成文件的后缀是______。 3、结构化程序由、和三种基本结构组成。第二章 4、以下选项中正确的整型常量是。 A) 12. B) -20 C) 1,000 D) 4 5 6 5、以下选项中正确的实型常量是。 A) 0 B) 3. 1415 C) 0.329*102 D).871 6、以下选项中不正确的实型常量是。 A) 2.607E-1 B) 0.8103e 2 C) -77.77 D) 456e-2 7、以下选项中不合法的用户标识符是。 A) abc.c B) file C) Main D) PRINTF 8、以下选项中不合法的用户标识符是。 A) _123 B) printf C) A$ D) Dim 9、可在C程序中用作用户标识符的一组标识符是。 A) void B) as_b3 C) For D) 2c define _123 -abc DO WORD If case SIG 10、若变量已正确定义并赋值,符合C语言语法的表达式是。 A)a=a+7; B)a=7+b+c,a++ C)int (12.3%4) D)a=a+7=c+b 11、不合法的八进制数是。 A)0 B)028 C)077 D)01

12、不合法的十六进制数是。 A)oxff B)0Xabc C)0x11 D)0x19 13若k为int整型变量且赋值11。请写出运算k++后表达式的值____和变量k的值_____。 14、若x为double型变量,请写出运算x=3.2,++x后表达式的值_____和变量x 的值________。 15、函数体由符号_____开始,用符号_____结束。函数体的前面是__________部分,其后是__________部分。 16、在C语言程序中,用关键字_________定义基本整型变量,用关键字________定义单精度实型变量,用关键字_______定义双精度实型变量。 17、把a1、a2定义成单精度实型变量,并赋初值1的定义语句是 18、表达式3.5+1/2的计算结果是________。 19、对以下数学式,写出三个等价的C语言表达式 、、。 a b (a.b.c为实数) c 20、在C语言中整数可用______进制数、_____进制数和_____进制数三种数制表示。 改错题 21、请指出以下C程序的错误所在(5个错误) #include stdio.h ; main( ); /* main function */ float r,s; /*/*r is radius*/,/*s is area of circular*/*/ r=5.0; s=3.14159*r*r; printf(“ %f\n”,s)

c语言习题册及答案

第3章课后练习及作业习题指导(参考答案) 作业01 C语言基础知识 一、选择题 1.C语言程序的基本单位是()。 A)函数 B)过程 C)子程序 D)子例程 2.下列个选项中,合法的C语言关键字是()。 A)integer B)sin C)string D)void 3.下列选项中,不是C语言提供的合法关键字的是()。 A)switch B)cher C)default D)case 4.以下选项中合法的用户标识符是()。 A)int B)a# C)5mem D)_243 5.C语言程序一行写不下时,应该()。 A)用回车换行 B)在任意空格处换行 C)用分号换行 D)用逗号换行 6.在C程序中,可以作为用户标识符的一组标识符是()。 A)void define WORD B)as_b3 _224 Else C)switch —wer case D)4b DO SIG 7.在C语言中,下列合法的字符常量是()。 A)’\039 B)’\x76’ C)’ab’ D)’\o’8.以下说确的是()。 A)C语言程序是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序是从main()函数开始执行的 D)C语言程序中的main()函数必须放在程序的开始部分 9.()是构成C语言程序的基本单位 A)函数 B)变量 C)子程序 D)语句 10.一个C语言程序总是从()开始执行的 A)主过程B)主函数 C)子程序 D)主程序 11.以下叙述不正确的是() A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main()函数 C)C程序的基本组成单位是函数 D)在C程序中,注释说明只能位于一条语句的后面 12.C语言规定:在一个源程序中,main()函数的位置() A)必须在最开始 B)必须在系统调用的库函数的后面C)可以任意 D)必须在最后

c语言第1章练习题答案

第一章 C语言概述练习题 一、选择题 1.C语言是一种( )。 A) 机器语言B) 汇编语言C) 高级语言D) 低级语言 2.下列各项中,不是C语言的特点是( )。 A) 语言简洁、紧凑,使用方便B) 数据类型丰富,可移植性好 C) 能实现汇编语言的大部分功能D) 有较强的网络操作功能 3.下列叙述正确的是( )。 A) C语言源程序可以直接在DOS环境中运行 B) 编译C语言源程序得到的目标程序可以直接在DOS环境中运行 C) C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行 D) Turbo C系统不提供编译和连接C程序的功能 4.下列叙述错误的是()。 A) C程序中的每条语句都用一个分号作为结束符 B) C程序中的每条命令都用一个分号作为结束符 C) C程序中的变量必须先定义,后使用 D) C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写 5.一个C程序的执行是从()。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 6.以下叙述不正确的是()。 A) 一个C源程序必须包含一个main函数 B) 一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面 7.C语言规定:在一个源程序中,main函数的位置( )。 A)必须在程序的开头B)必须在系统调用的库函数的后面 C)可以在程序的任意位置D)必须在程序的最后 8.一个C语言程序是由( )。 A)一个主程序和若干个子程序组成B) 函数组成 C) 若干过程组成D) 若干子程序组成 9.以下有4组用户标识符,其中合法的一组是()。 A) For B) 4d C) f2_G3 D) WORD -sub DO IF void Case Size abc define 10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是 ()。 A) 有零个或多个输入B) 有零个或多个输出C) 有穷性D) 可行性 二、填空题 1.汇编语言属于面向( 面向机器的 )语言,高级语言属于(面向问题的)语言。 2.用高级语言编写的程序称为(源)程序,它可以通过解释程序翻译一句执行一句的方式 执行,也可以通过编译程序一次翻译产生(目标)程序,然后执行。

相关文档
相关文档 最新文档