文档库 最新最全的文档下载
当前位置:文档库 › C语言考试复习题

C语言考试复习题

C语言考试复习题
C语言考试复习题

一、判断题

1 广义地讲,C语言字符集中的任何一个字符均可用转义字符来表示。(对)

2 getchar()函数的作用是从标准输入设备上读入一个字符. (对)

3 putchar()函数的作用是把一个字符输出到标准输出设备. (对)

4 在给scanf函数提供数据时,数据之间一律用空格分隔. (错)

5 在switch语句中,每一个case的常量表达式的值必须互不相同. (对)

6 C语言中的逻辑"真"是用1表示的,逻辑"假"是用0表示的. (对)

7 每个switch结构中都必须含有default分支. (错)

8 在使用switch语句时,多个case可以共用一个执行语句. (对)

9 在使用switch语句时,case和后面的常量表达式之间可以没有空格. (错)

10 C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的. (对)

11 在实际编程中,do-while循环完全可以用for循环替换。(对)

12 continue语句的作用是结束本次循环。(对)

13 在实际编程中,do-while循环完全可以用for循环替换. (对)

14 c语言中字符串的结束符是'\0'。(对)

15 进行宏定义时,宏名必须使用大写字母表示。(错)

16 主函数和其它函数可以相互调用。(错)

17 在C语言中,数组元素的下标是整型常量或整型变量,并且下标默认从1开始. (错)

18 字符数组只能定义和初始化为一个一维数组而不能定义和初始化为一个多维数组.

(错)

19 在不同函数中可以使用相同名字的变量。(对)

20 在c中,外部变量的隐含类别是自动存储类别。(对)

21 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值。(对)

22 全局变量都是静态存储。(错)

23 函数中的局部变量都是动态存储。(错)

24 extern变量的生命期是整个程序执行期。(对)

25 函数不能嵌套定义,但可以嵌套调用. (对)

26 程序的运行最后在main函数中结束. (对)

27 当形参是变量时,实参与它所对应的形参占用不同的存储单元. (对)

28 宏定义不是C语句. (对)

29 主函数和其它函数可以相互调用. (错)

30 "在Turbo C中,下面的定义和语句是合法的:

file *fp;

fp=fopen(""a.txt"",""r"");" (错)

31 "在Turbo C中,此定义和语句是合法的:

enum aa{ a=5,b,c}bb;

bb=(enum aa)5;" (对)

32 结构体类型只有一种。(错)

33 共用体变量所占的内存长度等于最长的成员的长度。(对)

34 可以将一个结构体变量作为一个整体进行输入和输出. (错)

35 用typedef可以声明各种类型名,也有可以用来定义变量. (错)

36 用typedef不仅对已经存在的类型增加一个类型名,而且还可以创造新的类型. (错)

37 文件根据数据的组织形式,可分为ASCII文件和二进制文件. (对)

38 C语言对文件的处理方法有缓冲文件系统和非缓冲文件系统. (对)

39 C语言库函数fgets(str,n,fp)的功能是从文件fp中读取长度不超过n–1的字符串存入str 指向的内存. (对)

40 C语言中文件的存取方式可以是顺序存取,也可以是随机存取. (对)

41 "函数调用语句fseek(fp,10L,2)的含义是:

将文件位置指针从文件末尾处向文件头方向移动10个字节." (错)

42 在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量. (对)

43 共同体变量所占的内存长度等于最短的成员的长度. (错)

44 结构体中的成员名不可以与程序中的变量名相同. (错)

45 自增运算符(++)或自减运算符(--)不能用于常量,但能用于符号常量。(错)

46 在c程序中对用到的所有数据都必须指定其数据类型。(对)

47 在c程序中, APH 和aph 代表不同的变量。(对)

48 一个实型变量的值肯定是精确的。(错)

49 一个变量在内存中占据一定的存储单元。(对)

50 c语言不允许混合类型数据间进行运算。(错)

51 a-=7等价于a=a-7。(对)

52 一个C程序由一个或多个函数组成. (对)

53 一个C程序必须包含一个main函数. (对)

54 C程序的每一行上可以写多条语句. (对)

55 在C语言程序中main函数必须放在程序的开始位置. (错)

56 C语言程序的开始执行点是程序中的main函数. (对)

57 C程序的书写格式虽然自由,但为了清晰,一般在一行内写一个语句. (对)

58 C程序的书写格式自由,一行内可以写多个语句,一个语句也可以写在多行上. (对)

59 "在C语言中运算符的优先级高低的排列顺序是:

关系运算符、算术运算符、赋值运算符." (错)

60 在C语言中规定只能由字母、数字和下划线组成标识符,且第一个字符必须为下划线.

(错)

61 在C语言中关键字是一类特殊的标识符,不允许作为用户标识符使用. (对)

62 数据在内存中是以二进制形式存放的. (对)

63 C语言的字符常量是用双撇号括起来的一个字符. (错)

64 sum和SUM是相同的变量名. (错)

65 关系运算符<= 与== 的优先级相同. (错)

66 在一个整型常量后面加一个字母l或L,代表其类型为long int. (对)

二、填空题

1 C语言本身不提供输入输出语句,其输入输出操作是由【1】来实现的.

函数□库函数□输入输出函数2 "当a=3,b=2,c=1;时,执行以下程序段后,c的值为【1】.

if(a>b) a=b;

if(b>c) b=c;

else c=b;

c=a;" 2 3 "若a和b都是int型变量,函数scanf(""%3d%2d"",&a,&b)对应的键盘输入数据是: 2618223<回车>

则该函数执行后,变量b的值等于【1】." 82 4 "若a和b都是int型变量,执行函数scanf(""%3d%2x"",&a,&b)时,对应的键盘输入数据是:

26a23则该函数执行后,变量b的十进制值等于【1】." 162

5 "以下程序运行后的输出结果是【1】.

main()

{ char m;

m='A'+33; printf(""%c\n"",m);

}" b

6 在c语言中,所有的数据输入/输出都是由【1】完成的. 库函数

7 "在使用switch语句时,各case和default子句的先后顺序如果变动,

则程序执行结果【1】(填会/不会)受到影响." 不会

8 "执行下列程序段后,y的值为【1】.

int x,y,z,m,n; m=10;n=5;

x=(--m==n++)?--m:++n;

y=m++;" 9

9 "执行下面程序后,输出结果是【1】.

main()

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

c=max(a,b);

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

}

int max(x,y)

int x,y;

{ int z;

if(x>y) z=x;

else z=y;

return(z);

}" 45

10 【1】语句强行结束循环,转向执行循环语句的下一条语句. break

11 do-while循环与while循环的不同在于:【1】先执行循环中的语句后做条件判断.

do-while循环□do-while□do while

12 goto语句的标号必须与goto语句同处于一个【1】中. 函数

13 "设有以下程序段,执行程序后a的值是【1】.

int x=0,a=0;

while(!x!=0) a+=++x;

printf(""%d"",a);" 1

14 "下面一段程序的功能是计算1到100之间的整数之和,并将结果保存到变量s中. int a=101,s=0;

while(【1】,a>0 )s=s+a;" --a□a--□a=a-1

15 "下面一段程序的功能是计算6的阶乘,并将结果保存到变量s中.

int a=1,s=【1】;

for(;s*=a,++a<=6;);" 1

16 "下面一段程序的功能是计算两个正整数(保存在int型变量m和n中)的最大公约数, 并将结果保存到变量gcd中.

for(;r=m%n;m=n,n=r);gcd=【1】;" n

17 "下面一段程序执行后,变量s的值等于【1】.

int a,s=0;

for(a=10;a>0;a-=3)s+=a;" 22

18 "下面一段程序执行后变量s的值等于【1】.

int s=0,i,j;

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

for(j=1;j<=i;j++)s=s+j;" 10

19 循环结构中反复执行的程序段称为【1】. 循环体

20 "以下do-while语句中循环体的执行次数是【1】.

a=10;

b=0;

do{ b=a--; a-=2; }while(a>=0);" 4

21 "在for(表达式1;表达式2;表达式3) 语句中

表达式1执行了【1】次." 1□一□壹□单

22 "执行下列程序段后,s的值是【1】.

int k, s;

for(k=s=0; k<10&&s<=10; s+=k)k++;" 15

23 "执行以下程序段后,s的值是【1】.

int a[]={1,2,3,4,5,6,7,8},s=0,k;

for(k=0;k<8;k+=2)

s+=*(a+k);" 16

24 "执行以下程序后,输出'$'号的个数是【1】.

main()

{ int i,j;

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

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

putchar('$');

}" 6

25 main()函数可以有两个参数,其中第【1】个参数等于命令行参数(包含命令程序文件标识符)的个数. 1□一

26 定义int a[2][3];表示数组a中的元素个数是【1】个. 6

27 取地址符(&)不能用于表达式、寄存器变量和【1】. 常量

28 若数组只有一个下标,称为一维数组,其数组元素被称为【1】下标变量. 单

29 若有定义:int a[3][2]={2,4,6,8,10,12};,则*(a[1]+1)的值是【1】. 8

30 "设有以下定义的语句:

int a[3][2]={10,20,30,40,50,60}, (*p)[2];

p=a;

则*(*(p+2)+1)值为【1】." 60

31 数组初始化赋值是指在数组定义时给数组元素赋予初值.数组初始化是在【1】阶段进行的. 编译

32 数组元素通常也称为【1】. 下标变量

33 "下面程序的输出结果是【1】.

int a[3]={1,2,3},(*p)[3]=&a;

*(p[0]+1)=6;

printf(""%d%d%d"",a[0],a[1],a[2]);" 163

34 "下面程序段的输出结果是【1】.

int a[3]={2,4,6},*p=a+1;

printf(""%d"",*--p);" 2

35 "下面程序段的运行结果是【1】.

char a[]=""language"",*p;

p=a;

while(*p!='u')

{printf(""%c"",*p); p++;}" lang

36 "下面是指针变量p的定义语句,p指向的数组有【1】个int型元素.int (*p)[2][3][4];"

24

37 "有如下二维数组定义:int a[3][4];可以把a[0]看做一个【1】维数组名。"

1□一□壹

38 某个变量允许被多个函数访问,该变量应该在函数的【1】部定义. 外

39 在C语言中,实参与形参之间的数据传递是【1】向的值传递. 单□单方

40 "C语言的fgetc()和fread()两个函数都能够从文件中读取字符,当需要从二进制文件成批输入相同类型的数据时,应该使用【1】函数." fread□fread()□fread( )□第二个

41 C语言的数据文件分为文本文件和【1】文件两种. 二进制□2进制

42 "C语言对文件的输入输出操作是通过函数实现的.有些函数可以处理所有文件,有些函数只能处理文本文件,有些函数只能处理二进制文件.fscanf函数只能处理【1】文件."

文本□ASCII

43 C语言中的文件的存储方式可以是顺序存取,也可是【1】. 随机存取□随机

44 "变量x由下面的语句定义,x的存储空间由成员【1】决定. union{int n;long p;}x;"

p□x.p

45 当函数fopen()打开文件失败时,函数值等于【1】.

NULL□空指针□空地址□0□\0□'\0' 46 根据数据的流向,文件操作包括输入操作和输出操作两种,feof函数用在【1】操作中.

输入□读

47 "结构体变量所占内存空间的大小等于各成员变量所占空间之和,在实际程序设计中,

应该使用运算符【1】得到结构体变量所占内存空间的大小." sizeof□sizeof() 48 "结构体是不同数据类型的数据集合,作为构造数据类型,必须先声明结构体【1】,再定义结构体变量." 类型□类型名

49 数组是一组有序的【1】数据类型变量的集合. 同□相同□同样□一样

50 "下面程序执行后,输出的结果等于【1】.

enum dt{a=7,b=1,c,d,e=8}x=d;

printf(""%d"",x);" 3

51 用fclose()函数成功地关闭一个文件后,函数值等于【1】. 0□零

52 "在下列程序段中,枚举变量c1,c2的值依次是【1】.

enum color {red,yellow,blue=4,green,white} c1,c2;

c1=yellow;c2=white;

printf(""%d,%d\n"",c1,c2);""" 1,6□1 6□1和6

53 C把括号、赋值、逗号等都作为【1】处理. 运算符

54 C语言中,只有单目运算符、【1】和赋值运算符是右结合的.

条件运算符□?:□三目运算符55 C语言中的预处理功能包括宏定义、【1】和条件编译三种.

文件包含□include□#include

56 C语言中的预处理命令都是以字符【1】开始. #

57 比较两个量的运算符称为【1】运算符. 关系

58 关键字是由C语言规定的具有特定意义的字符串,通常也称为【1】. 保留字

59 空格符、制表符、换行符等统称为【1】. 空白符

60 若数组a有10个元素,表达式sizeof(a[3])的值是4,则表达式sizeof(a)的值是【1】. 40

三、选择题

1 在C语言中,形参的缺省存储类别是()。

A:auto B:register C:static D:extern 答案:A

2 "有以下程序

void fun(int n,int *p)

{ int f1,f2;

if(n==1||n==2) *p=1;

else

{ fun(n-1,&f1);

fun(n-2,&f2);

*p=f1+f2;}

}

main( )

{ int s;

fun(3,&s);

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

}

程序的运行结果是( )."

A:2 B:3 C:4 D:5 答案:A

3 C语言允许函数类型缺省定义,此时函数值隐含的类型是().

A:float B:int C:long D:double 答案:B

4 "假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:

PROG ABCDEFGH IJKL<回车>,则输出结果为( ).

main( int argc, char *argv[])

{ while(--argc>0)

printf(""%s"",argv[argc]);

printf(""\n"");

}"

A:ABCDEFG B:IJHL C:ABCDEFGHIJKL D:IJKLABCDEFGH 答案:C

5 "请阅读以下程序:

void fun(int s[])

{ static int j=0;

do

{s[j]+=s[j+1];}while(++j<2);

}

main( )

{ int k,a[10]={1,2,3,4,5};

for(k=1;k<3;k++) fun(a);

for(k=0;k<5;k++) printf(""%d"",a[k]);

}

上面程序的输出是( )."

A:34756 B:23445 C:35745 D:12345 答案:C

6 "以下程序的输出结果是( ).

int fun(int n,int *s)

{ int f1,f2;

if(n==0‖n==1) *s=1;

else

{ fun(n-1,&f1);

fun(n-2,&f2);

*s=f1+f2;

}

}

main( )

{ int x;

fun(6,&x);

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

}"

A:7 B:13 C:9 D:10 答案:B

7 以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序.

void f(int b[],int n,int flag)

{ int i,j,t;

for(i=0;i

for(j=i+1;j

if(flag?b[i]>b[j]:b[i]

}

main( )

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

f(&a[2],5,0);

f(a,5,1);

for(i=0;i<10;i++) printf("%d,",a[i]);

}

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

A:1,2,3,4,5,6,7,8,9,10, B:3,4,5,6,7,2,1,8,9,10, C:5,4,3,2,1,6,7,8,9,10,

D:10,9,8,7,6,5,4,3,2,1, 答案:B

8 "有如下程序:

long fib(int n)

{ if(n>2) return(fib(n-1)+fib(n-2));

else return(2);

}

main( )

{ printf(""%d\n"",fib(3));}

该程序的输出结果是( )."

A:2 B:4 C:6 D:8 答案:B

9 "有以下程序

main(int argc, char *argv[])

{ int n=0, i;

for (i=l; i

n=n*10+*argv[i] - '0';

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

}

编译连接后生成可执行文件tt.exe.若运行时输入以下命令行

tt 12 345 678

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

A:12 B:12345 C:12345678 D:136 答案:D 10 "有以下程序

void f(int n, int *r)

{ int rl=0;

if (n%3==0) r1=n/3;

else if(n%5==0) r1=n/5;

else f(--n, &r1);

*r=r1;

}

main( )

{ int m=7, r;

f(m,&r);

printf(""%d"", r);

}

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

A:2 B:1 C:3 D:0 答案:A

11 在C语言中,形参的缺省存储类别是().

A:auto B:register C:static D:extern 答案:A

12 "对下述程序的判断中,正确的是( ).

#include ""stdio.h""

void main( )

{ char*p,s[128];

p=s;

while(strcmp(s,""End""))

{ printf(""请输入一个字符串:"");

gets(s);

while(*p)

putchar(*p++); }

}"

A:此程序循环接收字符串并输出,直到接收字符串"End"为止

B:此程序循环接收字符串,接收到字符串"End"则输出,否则程序终止

C:此程序循环接收字符串并输出,直到接收字符串"End"为止,但因为代码有错误,程序不能正常工作

D:此程序循环接收字符串并将其连接在一起,直到接收字符串"End"为止,输出连接在一起的字符串答案:A

13 判断字符串s1是否等于字符串s2,应当使用( ).

A:if (s1==s2) B:if (s1=s2) C:if (strcpy(s1,s2)) D:if (strcmp(s1,s2)==0) 答案:D

14 有以下程序:

#include "stdio.h"

main( )

{ int c;

while((c=getchar( ))!='\n')

{ switch(c-'2')

{ case 0:

case 1:putchar(c+4);

case 2:putchar(c+4);break;

case 3:putchar(c+3);

case 4:putchar(c+3);break; }

}

printf("\n");

}

程序运行时输入:2743后回车,程序的输出结果是( ).

A:66877 B:668966 C:6677877 D:6688766 答案:A

15 "阅读下列程序,则在执行后,程序的运行结果为( ).

#include ""stdio.h""

#include ""string.h""

main( )

{ char a[30]=""nice to meet you!"";

strcpy(a+strlen(a)/2,""you"");

printf(""%s\n"",a);

}"

A:nice to meet you you B:nice to C:meet you you D:nice to you 答案:D

16相同结构体类型的变量之间可以( ).

A:相加B:赋值C:比较大小D:地址相同答案:B

大一C语言期末考试题

大一C语言期末考试题 悬赏分:40 |解决时间:2010-6-29 14:28 |提问者:345387547 1. 数组int a[3][5]; 共定义了______15__个元素。 2. 有float f= 3.1415927; 则printf(“%5.4f”, f );输出的结果是___3.1416__。 3. 下面程序的功能是:输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。 main( ) { int i; for(i=1; __i<100 ___; i++) if (_(i%3==0)&&(i%10==6)_) printf("%d", i); } 4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是____7____ 5. 以下是使用指针,进行字符串复制的程序,请填空。 main() { char a[]= “Tsinghua University”, b[30], *p1,*p2; p1=a; p2=b; for(; *p1!= __'\0'____; p1++, p2++) *p2 _=_*p1; *p2= ___'\0'______; printf(“string a is:%s\n”,a); printf(“string b is:%s\n”,b); } 6. 下面程序用冒泡法对数组a进行降序排序,请填空。 main() { int a[5]={4,7,2,5,1}; int i,j,m; for(i=0;i<4;i++) for(j=0;j<____4____;j++) if( a[j]

江苏大学大一c语言期末复习题汇总

选择题1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.Void C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D. 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=; B.double b=1+; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)

大学大一C语言程序设计期末考试试卷和答案

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C 语言程序设计试卷 试卷A 答卷说明: 1、 本试卷共6页,答题纸3页,4个大题,35个小题,满分100 分,120分钟完卷。 2、 闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上 答案为准。 3、 本试卷适用于2011级1、2、3班。 一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的 序号填在题干的括号内。每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、 不属于C 语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、 下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间 C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C 语言中,″\\xfds ″在内存中占用的字节数是( ) __________________学院__________级___________班 姓名_______________ 学号_______________ ………………………………(密)………………………………(封)………………………………(线)……………………………… 密 封 线 内 答 题 无 效

A).3 B).4C).5D).6 5、设int x;则执行printf(″%x\n″,~x^x);的结果是() A). ffffffff B). ff C).0D). 1 6、对于while语句,错误的说法是() A).用条件控制循环体的执行次数B).循环体至少要执行一次 C).循环体有可能一次也不执行D).循环体中可以包含若干条语句 7、执行下列语句后输出的结果是() int a=8,b=7,c=6; if(ac){a=c;c=b;} printf("%d,%d,%d\n",a,b,c); A).6,7,7B).6,7,8C).8,7,6D).8,7,8 8、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是() A).9,19B).9,20C).10,19D).10,20 9、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么() A).x数组的长度等于y数组的长度B).x数组的长度大于y数组的长度 C).x数组的长度少于y数组的长度D).x数组与y数组的存储区域相同 10、设int i,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).147B).159C).357D).369 11、执行完下列语句后,n的值是() int n; for (n=0 ; n<100 ; n=2*n+1); A).125B).126 C).127D).128 12、有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果() A).–132 B).–60 C). -24 D). 0 13、为了连接两个字符串s1与s2,应当使用() A). strcat( s1,s2 ) B). strcpy( s1, s2 ) C). strlen( s1, s2 ) D). strcmp( s1, s2 ) 14、设int a,*p;则语句p=&a;中的运算符“&”的含义是() A).位与运算B).逻辑与运算C).取指针内容D).取变量地址 15、下面输出的结果为() i nt a=13, b=64; printf(“%d\n”, !a || (b>>3) );

c语言期中考试试题及答案

《C语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】 A) 函数 B) 语句 C) 字符 D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】 A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】 A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】 A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、双精度型、布尔型 D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】 A) 固定的 B) 由用户自己定义的 C) 任意的 D) 与机器字长有关

大一上学期C语言期末复习总结和模拟试题带答案

易错点 C语言中易犯的错误 对初学C语言的人来说,经常会出一些连自己都不知道错在哪里的错误.看着有错的程序,不知该如何改起,一些C编程时常犯的错误,写给各位学员以供参考. ******************************** ******************************** ************************ 1.书写标识符时,忽略了大小写字母的区别. main() { int a=5; printf("%d",A); } 编译程序把a和A认为是两个不同的变量名,而显示出错信息. C认为大写字母和小写字母是两个不同的字符.习惯上,符号常量 名用大写,变量名用小写表示,以增加可读性. ******************************** ******************************** ************************ 2.忽略了变量的类型,进行了不合法的运算. main() { float a,b; printf("%d",a%b); } %是求余运算,得到a/b的整余数.整型变量a和b可以进行求余运算,而实型变量则不允许进行"求余"运算. ******************************** ******************************** ************************ 3.将字符常量与字符串常量混淆. char c; c="a"; 在这里就混淆了字符常量与字符串常量,字符常量是由一对单 引号括起来的单个字符,字符串常量是一对双引号括起来的字符序 列.C规定以"\"作字符串结束标志,它是由系统自动加上的,所 以字符串"a"实际上包含两个字符:'a'和'\',而把它赋给一 个字符变量是不行的. ******************************** ******************************** ************************ 4.忽略了"="与"=="的区别. 在许多高级语言中,用"="符号作为关系运算符"等于". 如在BASIC程序中可以写 if (a=3) then … 但C语言中,"="是赋值运算符,"=="是关系运算符.如: if (a==3) a=b; 前者是进行比较,a是否和3相等,后

大一C语言期末考试试题

6.以下程序的输出结果为(D)。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为(B)。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

(完整word版)大一c语言考试试题

一、单项选择题(每小题2分,共50分) 1、一个C程序的执行是从___A__。 A、本程序的main函数开始,到main函数结束 B、本程序的main函数开始,到本程序文件的最后一个函数结束 C、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 2、C语言程序的基本单位是___C___。 A、程序行 B、语句 C、函数 D、字符 3、请选出可用作C语言用户标识符的一组标识符___B___。 A、void B、a3_b3 C、For D、2a define _123 -abc DO WORD IF ase sizeof 4、假定x和y为double型,则表达式(x=2,y=x+5/2)的值是__C__ 。 A、4.500000 B、4 C、4.000000 D、2.000000 5、下列可以正确表示字符型常量的是___D__。 A、297 B、"a" C、"\n" D、'\t' 6、在C语言中,要求运算数必须是整型的运算符是__D__。 A、/ B、++ C、*= D、% 7、C语言中,复合语句的构成是将一系列语句置于__C__。 A、begin与end之间 B、方框号“[ ]”之间 C、花括号“{ }”之间 D、圆括号“( )”之间 8、有如下程序段,对应正确的数据输入是___A___。 float x,y; scanf(”%f%f”, &x,&y); printf(”a=%f,b=%f”, x,y); A、2.04<回车> B、2.04,5.67<回车> 5.67<回车> C、A=2.04,B=5.67<回车> D、2.045.67<回车> 9、以下程序段的输出结果是___D__。 int a=5678; printf(”%2d\n”, a); A、提示出错、无结果 B、56 C、78 D、5678 10、已知:char ch='A';则下列表达式的值是__B__。 ch = (ch>='A'&&ch<='Z') ? (ch+32) : ch; A、A B、a C、Z D、z

大一c语言期末考试题

大一c语言期末考试题 C语言期末考试试题附答案 一选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套 C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c;

大学C语言期末考试练习题(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键

大一C语言编程重点复习题

输出众数: int main() {int a[10],b[10]={0}; int i,j,max; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) for(j=i;j<10;j++) if(a[i]==a[j]) b[i]++; max=b[0]; for(i=0;i<10;i++) if(b[i]>max) max=b[i]; if(max==1) printf("No"); else for(i=0;i<10;i++) if(b[i]==max) printf("%d,%d\n",a[i],b[i]);

return 0; } 平方数: #include int main() { int i,a,b; for(i=1000;i<=9999;i++) { a=i/100; b=i%100; if(i==(a+b)*(a+b)) printf("%d\n",i);} return 0; } 排序:由小到大 #include int main()

int i,j,t; for(i=0;i<10;i++) scanf("%d",&a[i]); for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1]) { t=a[i];a[i]=a[i+1]; a[i+1]=t; } for(i=0;i<9;i++) printf("%d\n",a[i]); printf("%d",a[9]); return 0; } # {

江苏大学大一c语言期末复习题汇总

选择题 1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D.A.dat 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=1-.le-1; B.double b=1+5e2.5; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s) 14.已知x=45, y=’a’, z=0; 则表达式(x>=z && y<’z’ || !y)的值是()。 A.0 B.语法错 C.1 D.“假”

大一c语言期末试题及参考答案word版本

2004级信息学院《C语言设计》考试试题 一、判断下列语句或程序的对错。 10分√ 1 int x=y=z=’0’; (×) y,z没有定义 2 #include ; (×)不能有分号,#开头的结尾均不能有分号; 3 printf(“%s\n”,”c language”); (√) 4 float a[100]; int *p=a; (×)数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; (×)五个元素,但是只有四个单元 7 float x=1.45e+310L; (×)数值越界 8 int xyz-1=2; (×) 9 int x=‘\xae’ ; (√) 10 int *p,a[2][3] ; p=a ; (×)数据类型不匹配 二计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(a^b)+(c>>1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三程序改错 10分 (1)求两个浮点数的平方和及平方差 #include float calculate (float x,float y,float *sub);添加函数原型声明 main () { float a,b; float add_reasult, sub_result; scanf (“%f,%f”,a,b); add_result=calculate(a,b,&sub_result); printf( “a*a+b*b=%d,a*a-b*b=%d\n”,add_result,sub_result); } float calculate (float x,float y,float *sub) 添加函数类型 { float *temp; 应该直接定义为变量float temp; sub=a*a-b*b ; *sub=a*a-b*b;

大一c语言考试试题

单 项 选 择 题 ( 每 小 题 2 分 1、 一个C 程序的执行是从 A 。 A 、 本程序的main 函数开始,到main 函数结束 B 、 本程序的main 函数开始,到本程序文件的最后一个函数结束 C 、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 D 、本程序文件的第一个函数开始,到本程序 main 函数结束 2、 C 语言程序的基本单位是 C 。 A 、 程序行 B 、语句 C 、 函数 D 、字符 3、 请选出可用作 C 语言用户标识符的一组标识符 __B___。 A 、 void B 、 a3_b3 C 、 For D 、 2a define _ 123 -abc DO WORD IF ase sizeof 4、假定x 和y 为double 型,则表达式(x=2,y=x+5/2)的值是__C A 、4.500000 B 、4 C 、 4.000000 5、下列可以正确表示字符型常量的是 ___D C 、 "\n" D 、 '\t' 6、在C 语言中,要求运算数必须是整型的运算符是 __D, 、 ++ 7、C 语言中,复合语句的构成是将一系列语句置于 __C A 、 begin 与 end 之间 B 、方框号“ [ ] ”之间 C 、花括号“ { } ”之间 D 、圆括号“ ( ) ”之 间 8、有如下程序段,对应正确的数据输入是 ___A___。 float x,y; scanf( ”%f%f ” , &x,&y); printf( ”a=%f,b=%f ”, x,y); A 、 2.04<回车> B 、 2.04,5.67< 回车> 5.67< 回车> C 、 A=2.04,B=5.67< 回车> D 、 回车> 9、以下程序段的输出结果是 __ _D__。 int a=5678; printf( ”%2dn ”, a); A 、提示出错、无结果 B 、 56 C 、 78 D 、 5678 10、已知: char ch='A' ;则下列表达式的值是 __B ch = (ch>='A'&&ch<='Z') ? (ch+32) : ch; A 、A B 、a C 、Z D 、z 11、下列描述,正确的是 ___B__ 。 、 2.000000 A 、 297 B 、 "a

大一C语言试题

c语言考试模拟试题 本卷共有4道大题: 一、单项选择题(20道小题,共20分) 1、以下叙述中不正确的是( c)(1分) A、在不同的函数中可以使用相同名字的变量 B、函数中的形式参数是局部变量 C、在一个函数内定义的变量只在本函数范围内有效 D、在一个函数内的复合语句中定义的变量在本函数范围内有效 2、有以下函数定义:void fun(int n, double x) { ……} 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是(b )(1分) A、fun(int y,double m); B、k=fun(10,12.5); C、fun(x,n); D、void fun(n,x); 3、给出以下定义:char x[]="abcdefg";char y[]={'a','b','c','d','e','f','g'};则正确的叙述为( )(1分) A、数组x和数组y等价 B、数组x和数组y的长度相同 C、数组x的长度大于数组y的长度 D、数组x的长度小于数组y的长度 4、设有如下定义:struct op{int i:float k;}self,*p; 若有p=&self;则对self中的i域的正确引用是( )(1分) A、(*p).self.i B、(*p).i C、p->self.i D、p.self.i 5、设有如下定义:int (*ptr)();则以下叙述中正确的是( )(1分) A、ptr是指向一维组数的指针变量 B、ptr是指向int型数据的指针变量 C、ptr是指向函数的指针,该函数返回一个int型数据 D、ptr是一个函数名,该函数的返回值是指向int型数据的指针 6、C语言标准库函数"fgets(string,n,fp)"的功能是( )(1分) A、从文件fp中读取长度为n的字符串存入指针string指向的内存 B、从文件fp中读取长度不超过n-1的字符串存入指针string指向的内存 C、从文件fp中读取n个字符串存入指针string指向的内存 D、从文件fp中读取不超过长度为n的字符串存入指针string指向的内存 7、设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是( )(1分) A、0至255 B、0至65535 C、-256至255 D、-32768至32767 8、假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是( )(1分) A、3 B、6 C、10 D、20 9、函数调用:strcat(strcpy(str1,str2),str3)的功能是( )(1分)

大一c语言考试试题

单 项 选 择 题 ( 每 小 题 2 分 共 5 0 分 ) A__。 、本程序的 main 函数开始,到 main 函数结束 、本程序的 main 函数开始,到本程序文件的最后一个函数结束 、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 、本程序文件的第一个函数开始,到本程序 C 语言程序的基本单位是 ___C___。 程序行 B 、语句 函数 D 、字符 请选出可用作C 语言用户标识符的一组标识符 void define WORD 假定 x 和 y 为 double 型,则表达式 1、 一个C 程序的执行是从 A B C D 2、 A 、 C 、 3、 A 、 、 a3_b3 _123 -abc IF ase 4、 A 、 B C 、 D 5、下列可以正确表示字符型常量的是 B D 、4 main 函数结束 、For DO sizeof (x=2,y=x+5/2) 的值是 __C 、2a A 、 297 C 、 "\n" 6在C 语言中, A 、 / C 、 *= D__。 、"a" 、'\t' 要求运算数必须是整型的运算符是 B 、 ++ D 、 % D__。 7、 C 语言中,复合语句的构成是将一系列语句置于 _C A B C D 、 begin 与 end 之 间 、方框号“ [ ] ”之间 、花括号“ { } ”之间 、圆括 号“ ( ) ”之间 8、 有如下程序段,对应正确的数据输入是 float x,y; scanf( ”%f%f ”, &x,&y); printf( ”a=%f,b=%f ”, x,y); A 、 <回 车 > B < 回车 > C 、A=B=V 回车 > D 9、 以下程序段的输出结果是 int a=5678; printf( ”%2d n ” , a); 、提示出错、无结果 、 78 、,< 回车> 、回车 > _D__。 A C 10、 、56 、5678 D 已知: char ch='A' ;则下列表达式的值是 __B__。 ch = (ch>='A'&&ch<='Z') ? (ch+32) : ch;

大一C语言期末考试试题

6.以下程序的输出结果为()。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为()。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

大学大一C语言程序设计期末考试试卷及答案剖析

大学大一C语言程序设计期末考试试卷及答案剖析

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C 语言程序设计试卷 试卷A 答卷说明: 1、 本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟完卷。 2、 闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。 3、 本试卷适用于2011级1、2、3班。 题号 一 二 三 四 总分 总分人 分数 得分 评卷人 一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( ) __________________学院__________级___________班 姓名_______________ 学号_______________ ………………………………(密)……………………………… (封)………………………………(线)………………………………

A). -int B). in1_3 C). A_B!D D). const 2、不属于C语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间 C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、C语言中,″\\xfds″在内存中占用的字节数是( ) A).3 B).4 C).5 D).6 5、设int x;则执行printf(″%x\n″,~x^x);的结果是( )

大一c语言考试试题知识分享

大一c语言考试试题

一、单项选择题(每小题2分,共50分) 1、一个C程序的执行是从___A__。 A、本程序的main函数开始,到main函数结束 B、本程序的main函数开始,到本程序文件的最后一个函数结束 C、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 2、C语言程序的基本单位是___C___。 A、程序行 B、语句 C、函数 D、字符 3、请选出可用作C语言用户标识符的一组标识符___B___。 A、void B、a3_b3 C、For D、2a define _123 -abc DO WORD IF ase sizeof 4、假定x和y为double型,则表达式(x=2,y=x+5/2)的值是__C__ 。 A、4.500000 B、4 C、4.000000 D、2.000000 5、下列可以正确表示字符型常量的是___D__。 A、297 B、"a" C、"\n" D、'\t' 6、在C语言中,要求运算数必须是整型的运算符是__D__。 A、/ B、++ C、*= D、% 7、C语言中,复合语句的构成是将一系列语句置于__C__。 A、begin与end之间 B、方框号“[ ]”之间 C、花括号“{ }”之间 D、圆括号“( )”之间 8、有如下程序段,对应正确的数据输入是___A___。 float x,y; scanf(”%f%f”, &x,&y); printf(”a=%f,b=%f”, x,y); A、2.04<回车> B、2.04,5.67<回车> 5.67<回车> C、A=2.04,B=5.67<回车> D、2.045.67<回车> 9、以下程序段的输出结果是___D__。 int a=5678; printf(”%2d\n”, a); A、提示出错、无结果 B、56 C、78 D、5678 10、已知:char ch='A';则下列表达式的值是__B__。 ch = (ch>='A'&&ch<='Z') ? (ch+32) : ch; A、A B、a C、Z D、z

大学大一C语言程序设计期末考试试卷及答案

大学大一C语言程序设计期末考试试卷及答案费下载四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C语言程序设计试卷试卷A 答卷说明: 1、本试卷共6页~答题纸3页~4个大题~35个小题~满分100分~ 120分钟完卷。 2、闭卷考试~所有的答案都必须写在答题纸上~判卷以答题纸上答案 为准。 3、本试卷适用于2011级1、2、3班。 题号一二三四总分总分人 分数 得分评卷人 一、单项选择题(在每小题的四个备选答案中~选出一个正确答案~并将正确答案的 序号填在题干的括号内。每小题1分~共20分) 1、在C语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、不属于C语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型密封线内答题无效 B). 宏替换不占用运行时间

C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C语言中,″\\xfds″在内存中占用的字节数是( ) A).3 B).4 C).5 D).6 5、设int x;则执行printf(″%x\n″,~x^x);的结果是( ) __________________学院__________级___________班姓名_______________ 学号_______________ A). ffffffff B). ff C). 0 D). 1 ………………………………(密)………………………………(封)………………………………(线)……………………………… 6、对于while语句,错误的说法是( ) A).用条件控制循环体的执行次数 B).循环体至少要执行一次 计算机科学学院 C语言程序设计试卷A 第1页(共8页) C).循环体有可能一次也不执行 D).循环体中可以包含若干条语句 7、执行下列语句后输出的结果是( ) int a=8,b=7,c=6; if(ac){a=c;c=b;} printf("%d,%d,%d\n",a,b,c); A).6,7,7 B).6,7,8 C).8,7,6 D).8,7,8 8、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( ) A).9,19 B).9,20 C).10,19 D).10,20 9、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( ) A).x数组的长度等于y数组的长度 B).x数组的长度大于y数组的长度 C).x数组的长度少于y数组的长度 D).x数组与y数组的存储区域相同 10、设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )

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