第一章C语言概述一、选择题1.C语言规定,必须用作为主函数名。A)FunctionB)includeC)mainD)stdio2.一个C程序可以包含任意多个不同名的函数,但有且仅有一个,一个C程序总是从开始执行。A)过程B)主函数C)函数D)include3.是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程序时不是从main函数开始的B)C程序书写格式严格限制,一行内必须写一个语句C)C程序书写格式自由,一个语句可以分写在多行上D)C程序书写格式严格限制,一行内必须写一个语句,并要有行号7.在C语言中,每个语句和数据定义是用结束。A)句号B)逗号C)分号D)括号8.下列字符串是合法的自定义标识符的是。A)_HJB)9_studentC)intD)LINE19.不是C语言提供的合法关键字。A)switchB)printC)caseD)default10.C语言提供的合法关键字是。A)breakB)printC)funitonD)end11.C语言提供的合法关键字是。A)continueB)procedureC)beginD)append二、填空题1.一个C程序至少包含一个,即。2.一个函数由两部分组成,它们是和。3.函数体的范围是。4.函数体一般包括和。5.C语言是通过来进行输入输出的。6.在C语言中,凡在一个标识符后面紧跟着一对圆括弧,就表明它是一个。7.主函数名后面的一对圆括号中间可以为空,但一对圆括号不能。第一章答案一、选择题1~5CBACD6~10CCABA11A二、填空题1.主函数main函数2.函数的说明部分函数体3.最外层的一对大括弧内的部分4.变量定义部分执行部分5.输入和输出函数6.函数7.省略第二章数据类型、运算符与表达式一、选择题1.在C语言中,下列数据类型属于基本类型的是。A)整型、浮点型、字符型B)共用体类型、整型C)结构体类型、浮点型D)指针类型、字符型2.C语言中不能表示的整型常量进制是。A)十进制B)十六进制C)八进制D)二进制3.在C语言中,转义字符回车换行符是。A)\nB)\tC)\rD)\b4.在ASCII码表中可以看到每个小写字母的ASCII码比相应的大写字母。A)大32B)大64C)小32D)小645.设d为字符变量,下列表达式能够完整正确赋值的是。A)d=297B)d=’a’C)d=“a”D)d=’abc’6.10+’a’+1.5-567.345/’b’的结果是型数据。A)charB)doubleC)intD)float7.语句inti=3;k=(i++)+(i++)+(i++);执行过后k的值为,i的值为。A)9,6B)12,5C)18,6D)15,58.inti=3;printf(“%d”,-i++);的输出结果为,输出后i的值为。A)-3,4B)-4,4C)-4,3D)-3,39.已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为。#includestdio.hvoidmain(){charx,y;x=’0’;y=’9’;printf(“%d,%c\n”,x,y);}A)因输出格式不合法,输出错误信息B)48,9C)0,9D)0,5710.已知在ASCII集中,字母A的序号为65,下面程序的输出结果为。#includestdio.hvoidmain(){charc1=’Y’,c2=’B’;printf(“%c,%d\n”,++c1,c2--);}A)Y,66B)Z,65C)Z,66D)Y,6511.C语言中,运算对象必须是整型数的运算符是。A)*B)/C)%和/D)%12.下列常数中,合法的C语言常量是。A)’\n’B)e-310C)abcD)’1234’13.下面程序的输出结果是。#includestdio.hvoidmain(){intx=2,y=0,z;x*=3+2;printf(“%d”,x);x*=y=z=4;printf(“%d”,x);}A)840B)1040C)10,4D)8,414.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值为。A)1B)2C)2.0D)2.515.表达式(int)2.1416的值为。A)2B)2.1C)0D)316.C语言规定标识符由等字符组成.A)字母数字下划线B)中划线字母数字C)字母数字逗号D)字母下划线中划线17.若有如下定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式:(float)(a+b)/2+(int)x%(int)y的值是。A)2.500000B)3.500000C)4.500000D)5.00000018.已知字母A的ASCII码为十进制65,下面程序段的运行结果为:。charch1,ch2;ch1=‘A’+2;ch2=‘D’-3;printf(“%d,%c\n”,ch1,ch2);A)67,65B)C,AC)C,DD)67,A19.设x、y均为float型变量,则以下不合法的赋值语句是。A)++x;B)y=(x%2)/10;C)x*=y+8;D)x=y=0;20.设有以下定义,则能使值为3的表达式是:。intk=7,x=12;A)x%=(k%=5)B)x%=(k-k%5)C)x%=kD)(x%=k)-(k%=5)二、填空题1.在C语言中,程序运行期间,其值不能被改变的量叫。2.在C语言中,要求对所有变量,遵循先定义后的原则。3.可以用来表示C的整常数的进制是、、。4.浮点型变量分为和,即float和double型。5.C的字符常量是用括起来的一个字符,字符串常量用括起来的一组字符。6.在一个变量定义语句中可以同时定义多个变量,变量之间用隔开。7.下面的程序运行结果为。#includestdio.hvoidmain(){charc1,c2;c1='a';c2='b';c1=c1-32;c2=c2-32;printf(“%c%c”,c1,c2);}8.表达式10+'a'+1.5-0.5*'b'的结果。9.在C语言中,可以利用,将一个表达式的值转换成指定的类型。10.#includestdio.hvoidmain(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf(“%d,%d,%d,%d”,i,j,m,n);}运行后i,j,m,n的值是。第二章答案一、选择题1~5ADAAB6~10BAABC11-15DABCA16~20ABCBA二、填空题1.常量2.使用3.八进制十进制十六进制4.单精度双精度5.单引号双引号6.逗号7.AB8.59.59.强制类型转换10.9,11,9,10第三章顺序结构程序设计一、选择题1.下列说法正确的是。A)输入项可以是一个浮点型常量,如scanf(“%f”,4.8);B)只有格式控制,没有输入项也能进行正确输入,如scanf(“a=%d,b=%d”);C)当输入一个浮点型数据时,格式控制部分应规定小数点后的位数,如scanf(“%5.3f”,&f);D)当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);2.根据题目中已给出的数据的输入和输出形式,程序中输入/输出语句的正确是。#includestdio.hvoidmain(){inta;floatx;printf(“inputa,x:”);输入语句输出语句}输入形式inputa,x:32.1输出形式a+x=5.10A)scanf(“%d,%f”,&a,&x);B)scanf(“%d%f”,&a,&x);printf(“\na+x=%4.2f”,a+x);printf(“\na+x=%4.2f”,a+x);C)scanf(“%d%f”,&a,&x);D)scanf(“%d%3.1f”,&a,&x);printf(“\na+x=%6.1f”,a+x);printf(“\na+x=%4.2f”,a+x);3.以下程序的输出结果是。#includestdio.hvoidmain(){inti=010,j=10,k=0x10;printf(“%d,%d,%d\n”,i,j,k);}A)8,10,16B)8,10,10C)10,10,10D)10,10,164.以下程序的输出结果是。#includestdio.hvoidmain(){charc1='6',c2='0';printf(“%c,%c,%d,%d\n”,c1,c2,c1-c2,c1+c2);}A)因输出格式不合法,输出出错信息B)6,0,6,102C)6,0,7,6D)6,0,5,75.设有如下定义intx=10,y=3,z;则语句printf(“%d\n”,z=(x%y,x/y));的输出结果是。A)3B)0C)4D)16.设有如下定义intx=10,y=5,z;则语句printf(“%d\n”,z=(x+=y,x/y));的输出结果是。A)1B)0C)4D)37.根据定义和数据的输入方式,输入语句的正确形式为:。已有定义:floata1,a2;输入4.5233.52A)scanf(“%f%f“,&a1,&a2);B)scanf(“%f,%f“,a1,a2);C)scanf(“%4.3f,%3.2f“,&a1,&a2);D)scanf(“%4.3f%3.2f“,a1,a2);二、填空题1.putchar函数的作用是,getchar函数的作用是。2.printf函数的”格式控制”包括两部分,分别是和。3.不同类型的输出内容有不同的格式字符,其中是用来按十进制整数形式输出一个整型数,是用来按小数形式输出一个浮点数,是用来输出一个字符。4.符号”&”是运算符,&a是指。5.复合语句是由一对括起来的若干语句组成。6.分析下面程序:#includestdio.hvoidmain(){intx=2,y,z;x*=3+2;printf(“%d“,x);x*=y=z=4;printf(“%d“,x);x=y=z;printf(“%d“,x);x=(y=z);printf(“%d“,x);}程序的输出结果为。7.编制程序对实数a与b进行加,减,乘,除计算,要求显示如下结果。jia=70jian=30cheng=1000chu=2程序:#includestdio.hvoidmain(){(1)a=50;b=20;printf(“jia=%d\n”,(2));printf(“jian=%d\n”(3));printf(“cheng=%d\n”,(4));printf(“chu=%d\n”,(5));}将缺少的部分填在空白处。8.以下程序的输出结果为:____________。#includestdio.hvoidmain(){charc1,c2;c1=‘a’;c2=‘b’;printf(“%c\n%c”,c1-32,c2);}三、编程题1.请编写一个程序,能显示出以下两行文字。Iamastudent.IloveChina.2.请编写一个程序,从键盘上输入a=2,b=3.4,c=’D’,向屏幕输出对应的a,b,c的值。第三章答案一、选择题1-5DBABA6-7DA二、填空题1.向终端输出一个字符从终端输入一个字符2.格式说明普通字符3.%d%f%c4.取地址a在内存中的地址5.大括号6.1040447.(1)intbbba,b;(2)a+b(3)a-b(4)a*b(5)a/b8.Ab三、编程题1.#includestdio.hvoidmain(){p