计算机C语言习题以及答案.docx

上传人:b****8 文档编号:9148474 上传时间:2023-05-17 格式:DOCX 页数:46 大小:35.92KB
下载 相关 举报
计算机C语言习题以及答案.docx_第1页
第1页 / 共46页
计算机C语言习题以及答案.docx_第2页
第2页 / 共46页
计算机C语言习题以及答案.docx_第3页
第3页 / 共46页
计算机C语言习题以及答案.docx_第4页
第4页 / 共46页
计算机C语言习题以及答案.docx_第5页
第5页 / 共46页
计算机C语言习题以及答案.docx_第6页
第6页 / 共46页
计算机C语言习题以及答案.docx_第7页
第7页 / 共46页
计算机C语言习题以及答案.docx_第8页
第8页 / 共46页
计算机C语言习题以及答案.docx_第9页
第9页 / 共46页
计算机C语言习题以及答案.docx_第10页
第10页 / 共46页
计算机C语言习题以及答案.docx_第11页
第11页 / 共46页
计算机C语言习题以及答案.docx_第12页
第12页 / 共46页
计算机C语言习题以及答案.docx_第13页
第13页 / 共46页
计算机C语言习题以及答案.docx_第14页
第14页 / 共46页
计算机C语言习题以及答案.docx_第15页
第15页 / 共46页
计算机C语言习题以及答案.docx_第16页
第16页 / 共46页
计算机C语言习题以及答案.docx_第17页
第17页 / 共46页
计算机C语言习题以及答案.docx_第18页
第18页 / 共46页
计算机C语言习题以及答案.docx_第19页
第19页 / 共46页
计算机C语言习题以及答案.docx_第20页
第20页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

计算机C语言习题以及答案.docx

《计算机C语言习题以及答案.docx》由会员分享,可在线阅读,更多相关《计算机C语言习题以及答案.docx(46页珍藏版)》请在冰点文库上搜索。

计算机C语言习题以及答案.docx

计算机C语言习题以及答案

第一章C语言概述

一、选择题

1.C语言规定,必须用作为主函数名。

A)FunctionB)includeC)mainD)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程序时不是从main函数开始的

B)C程序书写格式严格限制,一行内必须写一个语句

C)C程序书写格式自由,一个语句可以分写在多行上

D)C程序书写格式严格限制,一行内必须写一个语句,并要有行号

7.在C语言中,每个语句和数据定义是用结束。

A)句号B)逗号C)分号D)括号

8.下列字符串是合法的自定义标识符的是。

A)_HJB)9_studentC)intD)LINE1

9.不是C语言提供的合法关键字。

A)switchB)printC)caseD)default

10.C语言提供的合法关键字是。

A)breakB)printC)funitonD)end

11.C语言提供的合法关键字是。

A)continueB)procedureC)beginD)append

二、填空题

1.一个C程序至少包含一个,即。

2.一个函数由两部分组成,它们是和。

3.函数体的范围是。

4.函数体一般包括和。

5.C语言是通过来进行输入输出的。

6.在C语言中一个标识符后面紧跟着一对圆括号,通常表明它是一个。

7.主函数名后面的一对圆括号中间可以为空,但一对圆括号不能。

第一章答案

一、选择题

1~5CBACD6~10CCABA

11A

二、填空题

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)\b

4.在ASCII码表中可以看到每个小写字母的ASCII码比相应的大写字母。

A)大32B)大64C)小32D)小64

5.设d为字符变量,下列表达式能够完整正确赋值的是。

A)d=297B)d='a'C)d="a"D)d='abc'

6.10+'a'+1.5-567.345/'b'的结果是型数据。

A)charB)doubleC)intD)float

7.语句

inti=3;

k=(i++)+(i++)+(i++);

执行过后k的值为,i的值为。

A)9,6B)12,5C)18,6D)15,5

8.inti=3;

printf("%d",-i++);

的输出结果为,输出后i的值为。

A)-3,4B)-4,4C)-4,3D)-3,3

9.已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为。

#include

voidmain()

{

charx,y;

x='0';y='9';

printf("%d,%c\n",x,y);

}

A)因输出格式不合法,输出错误信息B)48,9

C)0,9D)0,57

10.已知在ASCII集中,字母A的序号为65,下面程序的输出结果为。

#include

voidmain()

{

charc1='Y',c2='B';

printf("%c,%d\n",++c1,c2--);

}

A)Y,66B)Z,65C)Z,66D)Y,65

11.C语言中,运算对象必须是整型数的运算符是。

A)*B)/C)%和/D)%

12.下列常数中,合法的C语言常量是。

A)'\n'B)e-310C)abcD)'1234'

13.下面程序的输出结果是。

#include

voidmain()

{

intx=2,y=0,z;

x*=3+2;

printf("%d",x);

x*=y=z=4;

printf("%d",x);

}

A)840B)1040C)10,4D)8,4

14.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值为。

A)1B)2C)2.0D)2.5

15.表达式(int)2.1416的值为。

A)2B)2.1C)0D)3

16.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.000000

18.已知字母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,A

19.设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.下面的程序运行结果为。

#include

voidmain()

{

charc1,c2;

c1='a';

c2='b';

c1=c1-32;c2=c2-33;

printf("%c%c",c1,c2);

}

8.表达式10+'a'+1.5-0.5*'b'的结果。

9.在C语言中,可以利用,将一个表达式的值转换成指定的类型。

10.#include

voidmain()

{

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~5ADAAB

6~10BAABC

11-15DABCA

16~20ABDBD

二、填空题

1.常量

2.使用

3.八进制十进制十六进制

4.单精度双精度

5.单引号双引号

6.逗号

7.AA

8.59.5

9.强制类型转换

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.根据题目中已给出的数据的输入和输出形式,程序中输入/输出语句的正确是。

#include

voidmain()

{

inta;floatx;

printf("inputa,x:

");

输入语句

输出语句

}

输入形式inputa,x:

32.1

输出形式a+x=5.10

A)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.以下程序的输出结果是。

#include

voidmain()

{

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,16

4.以下程序的输出结果是。

#include

voidmain()

{

charc1='6',c2='0';

printf("%c,%c,%d,%d\n",c1,c2,c1-c2,c1+c2);

}

A)因输出格式不合法,输出出错信息B)6,0,6,102

C)6,0,7,6D)6,0,5,7

5.设有如下定义

intx=10,y=3,z;

则语句

printf("%d\n",z=(x%y,x/y));

的输出结果是。

A)3B)0C)4D)1

6.设有如下定义

intx=10,y=5,z;

则语句

printf("%d\n",z=(x+=y,x/y));

的输出结果是。

A)1B)0C)4D)3

7.根据定义和数据的输入方式,输入语句的正确形式为:

已有定义:

floata1,a2;

输入4.523

3.52

A)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.分析下面程序:

#include

voidmain()

{

intx=4,y,z;

x*=3-1;printf("%d",x);

x/=y=z=2;printf("%d",x);

x=y=z;printf("%d",x);

x+=(y=z);printf("%d",x);

}

程序的输出结果为。

7.编制程序对整数a与b进行加,减,乘,除计算,要求显示如下结果。

jia=70

jian=30

cheng=1000

chu=2

程序:

#include

voidmain()

{

(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.以下程序的输出结果为:

____________。

#include

voidmain()

{

charc1,c2;

c1='A';

c2='B';

printf("%c\n%c\n",c1+33,c2+32);

}

三、编程题

1.请编写一个程序,能显示出以下两行文字。

Iamastudent.

IloveChina.

2.请编写一个程序,从键盘上输入a=2,b=3.4,c='D',向屏幕输出对应的a,b,c的值。

 

第三章答案

一、选择题

1-5DBABA

6-7DA

二、填空题

1.向终端输出一个字符从终端输入一个字符

2.格式说明普通字符

3.%d%f%c

4.取地址a在内存中的地址

5.大括号

6.8424

7.

(1)intbbba,b;

(2)a+b(3)a-b(4)a*b(5)a/b

8.b

b

三、编程题

1.#include

voidmain()

{

printf("Iamastudent.\n");

printf("IloveChina.\n");

}

2.#include

voidmain()

{

inta;

floatb;

charc;

scanf("%d%f%c",&a,&b,&c);

printf("a=%d,b=%f,c=%c\n",a,b,c);

}

第四章选择结构程序设计

一、选择题

1.以下关于运算符优先级的描述中,正确的是。

A)!

(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算

B)&&(逻辑与)>算术运算>关系运算>赋值运算

C)关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算

D)赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或)

2.逻辑运算符的运算对象的数据类型。

A)只能是0或1B)只能是.true或.false.

C)只能是真或假D)任何类型的数据

3.能正确表示x的取值范围在[0,100]和(-10,-5)的表达式是。

A)(x>=-10)&&(x<=-5)||(x>0)&&(x<100)

B)(x>-10)&&(x<-5)||(x>=0)&&(x<=100)

C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

D)(x>-10)&&(x<-5)&&(x>=0)&&(x<=100)

4.判断字符型变量ch为大写字母的表达式是。

A)'A'<=ch<='Z'B)(ch>=A)&&(ch<=Z)

C)(ch>='A')&&(ch<='Z')D)A<=ch<=Z

5.设有如下定义:

charch='z',则执行下面语句后变量ch:

ch=('A'<=ch&&ch<='Z')?

(ch+32):

ch

A)AB)aC)ZD)z

6.以下程序的运行结果是。

#include

voidmain()

{

intc,x,y;

x=1;y=1;c=0;

c=x++||y++;

printf("\n%d%d%d\n",x,y,c);

}

A)110B)211C)011D)001

7.若已知a=10,b=20,则表达式!

a

A)10B)20C)1D)0

8.写出下面程序的执行结果。

#include

voidmain()

{intx=6,y=0;

if(y=1)x=5;

printf("%d\t",x);

if(y=0)x=3;

elsex=4;

printf("%d\t\n",x);}

A)63B)54C)53D)65

9.下列程序段运行后x的值是。

a=b=c=0;x=35;

if(!

a)x=-1;

elseif(b);

if(c)x=3;

elsex=4;

A)-1B)4C)35D)3

10.当a=1,b=3,c=5,d=4时,执行完下面程序段后x的值为。

if(a

if(c

else

if(a

if(b

elsex=3;

elsex=6;

elsex=7;

A)1B)2C)3D)6

11.已知intx=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:

if(x>y||xz)

z=x;x=y;y=z;

A)x=50,y=80,z=80B)x=50,y=30,z=30

C)x=30,y=50,z=80D)x=80,y=30,z=50

12.以下if语句书写正确的是。

A)if(x=0;)B)if(x>0)

printf("%f",x);{x=x+1;printf("%f",x);}

elseprintf("%f",-x);elseprintf("%f",-x);

C)if(x>0);D)if(x>0)

{x=x+1;printf("%f",x);}{x=x+1;printf("%f",x);

elseprintf("%f",-x);elseprintf("%f",-x);}

13.若有以下函数关系

y=2xx<0时

y=x+1x=0时

y=xx>0时

下面程序段能正确表示以上关系的是。

A)y=2*x;B)y=2*x;

if(x!

=0)if(x<=0)

if(x>0)y=x;if(x==0)y=x+1;

elsey=x+1;elsey=x;

C)if(x>=0)D)y=x+1;

if(x>0)y=x;if(x<=0)

elsey=x+1;if(x<0)y=2*x;

elsey=2*x;elsey=x;

14.switch(表达式c)括号内表达式c的类型:

A)可以是任意类型B)只能为整型

C)可以是整型或字符型D)可以为整型或浮点型

15.若有变量定义floatx;inty;则正确的switch语句是。

A)switch(x)B)switch(x)

{case1:

printf("*\n");{case1~2:

printf("*\n");

case2:

printf("**\n");}case3~4:

printf("**\n");}

C)switch(y)D)switch(y)

{case1*y:

printf("*\n");{case1:

printf("*\n");

case2*y:

printf("**\n");}case2:

printf("**\n");}

二、填空题

1.在C语言中,对于if语句,else子句与if子句的配对规则是。

2.用C语言描述

1)a小于b或小于c,

2)a和b都大于c

3)a或b中有一个小于c

4)a是奇数

3.以下两条if语句可合并成一条if语句。

if(a<=b)x=1;

elsey=2;

if(a>b)printf("****");

elseprintf("####");

4.输入3个实数a,b,c要求按从大到小顺序输出三个数。

#include

voidmain()

{floata,b,c,t;

scanf("%f,%f,%f",&a,&b,&c);

if(a

{t=a;

(1)b=t;}

if(

(2))

{t=a;a=c;c=t;}

if(b

{(3)b=c;c=t;}

printf("%f,%f,%f",a,b,c);}

5.输入一个字符,如果是大写字母,则把其变成小写字母;如果是小写字母,则变成大写字母;其它字符不变。

请在括号内填入缺少的内容。

#include

voidmain()

{charch;

scanf("%c",&ch);

if(

(1))

ch=ch+32;

else

if(ch>='a'&&ch<='z')

(2))

printf("%c\n",ch);}

6.设有程序片段如下:

switch(class)

{case'A':

printf("GREAT!

\n");

case'B':

printf("GOOD!

\n");

case'C':

printf("OK!

\n");

case'D':

printf("NO!

\n");

default:

printf("ERROR!

\n");}

若class的值为'C',则输出结果是。

7.x是0~100之间的整数,根据以下if语句写出等价的switch语句。

if(x<60)m=1;

elseif(x<70)m=2;

elseif(x<80)m=3;

elseif(x<90)m=4;

elsem=5;

switch(

(1))

{

(2)m=5;break;

case6:

m=2;break;

case7:

m=3;break;

case8:

m=4;break;

(3)m=1;}

三、编程题

1.编程实现;输入长方形的两个边长a,b和一个整数k。

k=1时,输出长方形的周长t;k=2时,输

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2