文档库 最新最全的文档下载
当前位置:文档库 › c语言第1,2章习题

c语言第1,2章习题

c语言第1,2章习题
c语言第1,2章习题

第1章程序设计及C语言概述

(1)以下叙述中错误的是()。

A)一个C程序中可以包含多个不同名的函数

B)一个C程序只能有一个主函数

C)C程序在书写时,有严格的缩进要求,否则不能编译通过

D)C程序的主函数必须用main作为函数名

(2)以下叙述中正确的是()。

A)C 程序的基本组成单位是语句B)C 程序中的每一行只能写一条语句

C)简单C语句必须以分号结束D)C 语句必须在一行内写完

(3)C语言源程序名的后缀是()。

A).exe B).C C).obj D).cp

(4)以下叙述中正确的是()。

A)C语言程序将从源程序中第一个函数开始执行

B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

D)main可作为用户标识符,用以命名任意一个函数作为主函数

(5)下列叙述中错误的是()。

A)计算机不能直接执行用C语言编写的源程序

B)C程序经C编译程序编译后,生成后缀为.obj的文件是一个二进制文件

C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件

D)后缀为.obj和.exe的二进制文件都可以直接运行

(6)对于一个正常运行的C程序,以下叙述中正确的是()。

A)程序的执行总是从main函数开始,在main函数结束

B)程序的执行总是从程序的第一个函数开始,在main函数结束

C)程序的执行总是从main函数开始,在程序的最后一个函数中结束

D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束

第2章C语言基础

知识点1:数据类型、标识符、常量和变量

(1)C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是()。

A)预定义标识符(如库函数中的函数名)可用作用户标识符,但失去原有含义

B)用户标识符可以由字母和数字任意顺序组成

C)在标识符中大写字母和小写字母被认为是相同的字符

D)关键字可用作用户标识符,但是去原有含义

(2)以下选项中表示一个合法的常量是(说明:符号□表示空格)()。

A)9□9□9 B)0Xab C)123E0.2 D)2.7e

(3)以下选项中非法的字符常量是()。

A)'\101' B)'\65' C)'\xff' D)'\019'

(4)以下选项中不能用作C程序合法常量的是()。

A)1,234 B)'\123' C)123 D)"\x7G"

(5)以下选项中可用作C程序合法实数的是()。

A).1e0 B)3.0e0.2 C)E9 D)9.12E

(6)以下C语言用户标识符中,不合法的是()。

A)_1 B)AaBc C)a_b D)a--b

(7)以下选项中不能作为C 语言合法常量的是()。

A)'cd' B)0.1e+6 C)"\a" D)'\011'

(8)以下选项中不属于字符常量的是()。

A)'C' B)"C" C)'\xCC' D)'\072'

(9)可在C程序中用做用户标识符的一组标识符是()。

A)and B)Date C)Hi D)case

_2007 y-m-d Dr.Tom Bigl

(10)以下正确的字符串常量是()。

A)"\\\" B)'abc' C)OlympicGames D)""

(11)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。

A)大写字母B)连接符C)数字字符D)下划线

(12)以下不合法的字符常量是()。

A)′\018′ B)′\"′ C)′\\′ D)′\xcc′

(13)以下不能定义为用户标识符的是()。

A)Main B)_0 C)_int D)sizeof

知识点2:基本数据类型

(14)C语言中char类型数据占字节数为()。

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

(15)有以下定义语句,编译时会出现编译错误的是()。

A)char a='a'; B)char a='\n'; C)char a='aa'; D)char a='\x2d';

(16)若函数中有定义语句:int k;,则()。

A)系统将自动给k赋初值0 B)这时k中的值无定义

C)系统将自动给k赋初值-1 D)这时k中无任何值

(17)以下选项中正确的定义语句是()。

A)double a; b; B)double a=b=7; C)double a=7, b=7; D)double, a, b; (18)C 源程序中不能表示的数制是()。

A)二进制B)八进制C)十进制D)十六进制

(19)以下关于long、int和short类型数据占用内存大小的叙述中正确的是()。

A)均占4个字节B)根据数据的大小来决定所占内存的字节数

C)由用户自己定义D)由C语言编译系统决定

(20)以下能正确定义且赋初值的语句是()。

A)int n1=n2=10; B)char c=32; C)float f=f+1.1; D)double x=12.3E2.5;

知识点3:运算符及表达式

一、选择题

(21)已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,以下不能将变量c 中大写字母转换为对应小写字母的语句是()。

A)c=(c-'A')%26+'a' B)c=c+32 C)c=c-'A'+'a' D)c=('A'+c)%26-'a'

(22)以下选项中,值为1的表达式()。

A )1-'0'

B )1-'\0'

C )'1'-0

D )'\0'-'0'

(23)表达式3.6-5/2+1.2+5%2的值是()。

A )4.3

B )4.8

C )3.3

D )3.8

(24)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式不相同的是()。

A )k++

B )k+=1

C )++k

D )k+1

(25)设变量已正确定义并赋值,以下正确的表达式是()。

A )x=y*5=x+z

B )int(15.8%5)

C )x=y+z+5,++y

D )x=25%5.0

(26)以下不能正确表示代数式cd

ab 2的C 语言表达式是( )。

A )2*a*b/c/d

B )a*b/c/d*2

C )a/c/d*b*2

D )2*a*b/c*d

(27)表达式:(int)((double)9/2)- 9%2的值是()。

A )0

B )3

C )4

D )5

(28)若有定义语句:int x=10;,则表达式x-=x+x 的值为()。

A )-20

B )-10

C )0

D )10

(29)表达式a+=a-=a=9的值是()。

A )9

B )-9

C )18

D )0

(30)有以下程序

#include <stdio.h>

main()

{ int s, t, A=10; double B=6;

s =sizeof(A); t=sizeof(B);

printf("%d,%d\n", s, t);

}

在VC6平台上编译运行,程序运行后的输出结果是()。

A )2,4

B )4,4

C )4,8

D )10,6

(31)若有定义语句:int a=3, b=2, c=1;,以下选项中错误的赋值表达式是()。

A )a=(b=4)=3

B )a=b=c+1

C )a=(b=4)+c

D )a=1+(b=c=4)

(32)有以下程序

#include

main()

{ int a=0, b=0, c=0;

c=(a-=a-5); (a=b, b+=4);

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

}

程序的运行后的输出结果是()。

A )0,4,5

B )4,4,5

C )4,4,4

D )0,0,0

(33)设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是()。

A )x++; printf("%d\n", x);

B )n=++x; printf("%d\n", n);

C )++x; printf("%d\n", x);

D )n=x++; printf("%d\n", n);

(34)若有定义语句:int a=10;double b=3.14;,则表达式'A'+a+b 值的类型是()。

A )char

B )int

C )double

D )float

(35)若有定义语句:int x=12, y==8, z ;,在其后执行语句z=0.9+x/y ;,则z 的值为()。

A )1.9

B )1

C )2

D )2.4

二、填空题

(1)设变量a 和b 已正确定义并赋初值。请写出与a-=a+b 等价的赋值表达式【1】。(2)表达式(int)((double)(5/2)+2.5)的值是【2】。

(3)若有定义语句:int a=5;,则表达式:a++的值是【3】。

(4)若有语句double x=17; int y;,当执行y=(int)(x/5)%2;之后y的值为【4】。

(5)以下程序的输出结果是【5】。

#include

main()

{ int a=37;

a+=a%=9; printf("%d\n", a);

}

相关文档