文档库 最新最全的文档下载
当前位置:文档库 › 2007年C语言考试试卷A卷

2007年C语言考试试卷A卷

2007年C语言考试试卷A卷
2007年C语言考试试卷A卷

辽宁工程技术大学 考试试卷 说明:本次考试 120 分钟, 32 道小题,共计 9 页,总分 100 分

(请将座位号 填在此处)

A 考试科目 C 语言程序设计基础 考试类型 考 查 学年学期 2007 - 2008 学年第 一 学期

适用专业

年 级 自SB07-1

教研室主任

(装订线内不准做答)一、选择题(本大题共20小题,每小题1分,总计20分)

1.若有代数式

bc

ae

3

,则不正确的C语言表达式是:

A) a/b/c*e*3

B) 3*a*e/b/c

C) 3*a*e/b*c

D) a*e/c/b*3

2.若变量c为char类型,能正确判断出c为小写字母的表达式是:

A) 'a'<=c<='z'

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

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

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

3.假定int 类型变量占用两个字节,若有定义:int x[10]={0, 2, 4} ; 则数组x在内存中所占字节数是

A) 3

B) 6

C) 10

D) 20

4.若re、a、b和c都是int 型变量,则执行re=(a=2,b=3,c=10)后re的值为:

A) 2

B) 3

C) 10

D) 15

5.已知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

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

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

6.以下程序执行结果是:

main()

{ int x=1, a=0, b=0 ;

switch(x)

{ case 0: b++ ;

case 1: a++ ;

case 2 : a++ ; b++ ;

}

printf( “a=%d, b=%d\n “, a, b );

}

(装订线内不准做答)A)a=2, b=1

B)a=1, b=1

C)a=1, b=2

D)a=2, b=2

7.以下程序执行结果是:

main()

{ int x=23;

do{printf(“%d”,x--);}while(!x);

}

A)321

B)23

C)不输出任何内容

D)陷入死循环

8.以下程序执行结果是:

main()

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

printf(“%d%d%d%d\n”,a[0][3],a[1][2],a[2][1],a[3][0]);

}

A)0890

B)1470

C)5430

D)输出值不确定

9.以下程序执行结果是:

main()

{ char s[]=”abcdef”;

s[3]=’\0’;

printf(“%s\n”,s);

}

A)ab

B)abc

C)abcd

D)abcdef

10.判断字符串str1是否大于字符串str2,应当使用:

A)if(str1>str2)

B)if(strcmp(str1, str2))

C)if(strcmp(str2, str1)>0)

D)if(strcmp(str1, str2)>0)

11.下面程序的输出是:

main()

(装订线内不准做答){ int a[]={1,2,3,4,5,6,7,8,9,0}, *p ;

p=a ; printf(“%d\n”, *p+9 );

}

A)0

B) 1

C)10

D)9

12.以下程序的输出结果是:

main()

{ int a=511,*b=&a;

printf(“%d\n”,*b);

}

A)511

B)512

C)a的地址

D)无确定值

13. 若要打开A盘user子目录名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是:

A)fopen(“A:\user\abc.txt”,“r”)

B)fopen(“A:\\user\\abc.txt”,“r+”)

C)fopen(“A:\\user\abc.txt”,“rb”)

D)fopen(“A:\\user\\abc.txt”,“w”)

14. 有以下说明语句

struct ex

{ int x;

float y;

char z;

}example;

则下面的叙述中不正确的是:

A)struct是结构体类型的关键字

B)example是结构体类型名

C)x,y,z都是结构体类型名

D)struct ex是结构体类型

15. 下列程序段的执行结果是:

void fun(int *x,int *y)

{ printf(“%d %d”,*x,*y)

*x=3; *y=4;

}

main()

{int x=1,y=2;

(装订线内不准做答)

fun(&y,&x);

printf(“%d\n”,r);

}

A) 2 1 4 3

B) 1 2 1 2

C) 1 2 3 4

D) 2 1 1 2

16.在调用函数时,如果实参是简单变量,此时函数值的默认类型为:

A)地址传递

B)单向值传递

C)由实参传给形参,再由形参传回实参

D)传递方式由用户指定

17.函数值类型的定义可以缺省,此时函数值的默认类型为:

A)void型

B)int型

C)float型

D)double型

18. 下列程序执行后的输出结果是:

#define f(x) x*x

main()

{ int a=6, b=2, c ;

c=f(a)/f(b) ;

printf( “%d\n”, c) ;

}

A)9

B) 6

C)36

D)18

19.设有如下定义:

struct sk

{ int a;

float b;

}data;

int *p;

若要使p指向data中的a域,正确的赋值语句是:

A) p=&a

B) p=data.a

C) p=&data.a

D) *p=data.a

(装订线内不准做答)20. 以下程序的输出结果是:

struct abc

{ int a, b, c; } ;

main()

{ struct abc s[2]={{2,3},{4,5,6}} ;

int t;

t=s[0].a+s[1].b ;

printf( “%d \n” , t ) ;

}

A) 5

B) 6

C)7

D)8

二、填空题(本大题共5小题,每小题2分,总计10分)

21.若fp已正确定义为一个文本指针,d1.dat为二进制文件,以“读”打开此文件:fp=fopen 。

22. 要使以下程序输出10个整数,请填入一个整数。

main()

{ int i ;

for( i=0; i<= ; printf( “%d\n”, i+=2) ;

}

23. 写出下面程序的运行结果:

main()

{ struct exmp

{ union

{int x;

int y;

}un;

int a,int b;

}stu;

stu.a=1;

stu.b=2;

stu.un.x=stu.a*stu.b;

stu.un.y=stu.a+stu.b;

printf(“x=%d,y=%d”,stu.un.x,stu.un.y);

结果:

(装订线内不准做答)24. 下面程序功能是:输出100以内能被3整除且个位数字为6的所有整数,请填空。

main()

{ int i, j ;

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

{ j=i*10+6 ;

if( ) continue ;

printf(“%d\n”, j ) ;

}

}

25. 若有定义语句:char s[100],d[100];int j=0;

且s中已赋字符串,请填空以实现字符串拷贝。

while(s[j])

{ d[j]= ;

j++;}

d[j]= ;

三、编写程序(10分).

26.有一函数:

x ( x<1 )

y= 2x-1 ( 1≤x<10 )

3x-11 ( x≥10 )

写一程序,输入x值,输出y值。

(装订线内不准做答)27.输入一个字符串,然后输出这个字符串,并将字符串中的小写字母换成大写字母

五、编写程序(10分).

28.计算级数和1/(1*3)+2/(2*5)+…+n/(2*n-1)*(2*n+1))

(装订线内不准做答)29.输入10个学生学号和考试成绩,按名次排序输出。

七、编写程序(10分).

30.找出100~999之间的水仙花数。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身,例如:153=13+53+33

(装订线内不准做答)31.一个交换两个整型变量值的函数。在主函数中定义并输入变量x,y的整数值,调用交换函数后,输出交换后x、y的值。

九、编写程序(10分).

32.键盘输入若干行字符,保存在一个文本文件中,当输入#时结束。

C语言试题及答案

一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是( D )。 A. 软件是一种逻辑实体,具有抽象性 B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显着特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于( D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。

C++C语言期末考试试卷A卷

一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是。 A、 C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、 C语言可以直接对硬件进行操作 D、 C语言移植性好 2、以下不正确的C语言标识符是 A、 ABC B、 abc C、 a_bc D、 ab.c 3、一个C语言程序是由。 A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是 A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+…a?+i*f值的数据类型为 A、 int B、 float C、 double D、不确定 6、在C语言中,char型数据在内存中的存储形式是。 A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是。#include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、 12345 B、 123 C、 45 D、 345 8、若有以下定义int a,b; float x,则正确的赋值语句是。

A、 a=1,b=2 B、 b++; C、 a=b=5 D、 b=int(x); 9、以下程序的执行结果是。 #include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、 11,10 B、 9,10 C、 11,9 D、 10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是。 #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、 A,Y B、 65,65 C、 65,90 D、 65,89 11、下列运算符中优先级最高的是。 A、< B、十 C、 % D、 != 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。 A、?x?&&?y? B、 x<=y C、 x||y+z&&y-z D、 !((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为。 A、?a?<=c1<=f?z? B、 (c1>=a)&&(c1<=z) C、 (…a?>=c1) (…z?<=c1) D、 (c1>=?a?)&&(c1<=?z?) 14、字符串"a"在内存中占据的字节个数为。 A、 0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是。

C语言试卷及答案

一、选择题(每题 1 分,共 20 分) 1. C 语言程序的三种基本结构是顺序结构、选择结构和结构。 A、循环 B、递归 C、转移 D、嵌套 2. 下列标识符中,合法的是_______ 。 A) unsigned B) 5ab C) INT# D)_num2 3. 若float x ;x = 10/4 ;x的值是。 A、2.5 B、2.0 C、3 D、 2 4. 表达式!x 等价于。 A、x==0 B、x==1 C、x != 0 D、x != 1 5. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为。 A、算术运算、赋值运算、关系运算 B、关系运算、赋值运算、算术运算 C、算术运算、关系运算、赋值运算 D、关系运算、算术运算、赋值运算 6. 能将高级语言编写的源程序转换为目标程序的是。 A、链接程序 B、解释程序 C、编译程序 D、编辑程序 7. 下列语句定义pf为指向float类型变量f的指针,是正确的。 A、float f, *pf = f; B、float f, *pf = &f; C、float *pf = &f, f; D、float f, pf = f; 8. 一个C程序的执行是从。 A、本程序的main函数开始,到main函数结束 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 9. 能正确表示“当x的取值在[1,10]或[[200,210]范围内为真,否则为假”的表达式是________。 A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B、(x>=1)||(x<=10)||(x>=200)||(x<=210) C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D、(x>=1)||(x<=10)&&(x>=200)||(x<=210) 10. 对两个数组a和b进行如下初始化 char a[]=“ABCDEF”;char b[]={ …A?,?B?,?C?,?D?,?E?,?F?}; 则以下叙述正确的是。 A、a和b数组完全相同 B、a和b长度相同 C、a和b中都存放字符串 D、a数组比b数组长度长 11. 是不正确的字符常量。 A、'\n' B、'1' C、"a" D、'\101' 12. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和等价。 A、k=(a>b)?1:0; B、k=a>b; C、k=a<=b; D、a<=b ? 0 : 1; 13. 设变量定义为“int x, *p=&x;”,则&*p相当于。 A、p B、*p C、x D、*&x 14. 有两个字符数组a、b,则以下正确的输入语句是。 A)gets(a,b); B) scanf(“%s%s”,a,b); C) scanf(“%s%s”,&a,&b); D) gets(“a”),gets(“b”); 15. C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是。 A、地址传递 B、单向值传递

C语言程序设计试题A

四川职业技术学院2005—2006学年第 1 学期期末考试 《C语言程序设计》(A) (供04电气、04机电班使用) 考试时间:120分钟满分:100分命题人:陈科 ………………………………………………………………………………………… 一、单项选择题,答案不写入答题栏的一律不得分!(每题分,共分) 1、结构化程序设计的3种结构是。 A)顺序结构、选择结构、转移结构 B)分支结构、等价结构、循环结构 C)多分支结构、赋值结构、等价结构 D)顺序结构、选择结构、循环结构 2、以下叙述中正确的是。 A)C语言比其他语言高级 B)C语言可以不用编译就能被计算机识别执行 C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D)C语言出现的最晚,具有其他语言的一切优点 3、C语言中最简单的数据类型包括。 A)整型、实型、逻辑型B)整型、实型、字符型 C)整型、字符型、逻辑型D)字符型、实型、逻辑型 4、若变量已正确定义并赋值,以下符合C语言语法的表达式是。 A)a:=b+1 B)a=b=c+2 C)int %3 D)a=a+7=c+b 5、若变量a,i已正确定义,且i已正确赋值,合法的语句是。 A)a= =1 B)++i; C)a=a++=5; D)a=int(i); 6、已知: int t=0; while(t=1){...} 则以下叙述正确的是。 A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法D)以上说法都不对7、若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a 赋予,b赋予,c赋予,下列不正确的输入形式是。 A)10<回车>22<回车>33<回车> B),,<回车> C)<回车>回车> D)10 22<回车>33<回车> 8、有如下程序: main() { int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2: a++;b++; } printf("a=%d,b=%d\n",a,b);} 该程序的输出结果是 A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 9、有以下程序 main() {int i=1,j=1,k=2; if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k); } 执行后输出结果是。 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 10、有如下程序 main() {float x=,y; if(x<)y=; else if(x<)y=x; else y=; printf("%f\n",y);} 该程序的输出结果是。 A)B)C)D) 11、有如下程序: main() {int n=9; while(n>6){n--; printf("%d",n);}

c语言模拟试卷A

《C语言程序设计》模拟试卷A (闭卷考试) 一、选择题(每题 分,共 分) 、以下不正确的 语言标识符是 。 、设有说明: 则表达式 值的数据类型为: 。 、根据下述定义,可以输出字符 的语句是 。

、以下说法中正确的是: 。 语言程序总是从第一个定义的函数开始执行 在 语言程序中,要调用的函数必须放在 函数中定义 语言程序总是从 函数开始执行 语言程序中的 函数必须放在程序的开始部分 、在定义 之后,对 的引用正确的是 。 、以下不能正确赋值的是 。 、设 和 都是 类型,则 循环语句 。 最多执行 次 最多执行 次 是无限循环 循环体一次也不执行 、 语言中表示“在使用 之前,先使 的值加 ”的正确方式是 。 、设有说明 其中 是 。

个指向整型变量的指针 指向 个整型变量的函数指针 一个指向具有 个整型元素的一维数组的指针 具有 个指针元素的一维指针数组,每个元素都只能指向整型量 、在下面关于指针的说法中,错误的一条是 。 变量的指针就是变量的地址 可以将一个整型量或任何其他非地址类型的数据赋给一个指针变量 一个指针变量只能指向同一类型的变量 指针变量中只能存放地址(指针) 二、读程序写结果(每题 分,共 分) 、以下程序运行后输出的结果是: 、若输入 ,以下程序的输出结果是:

、以下程序的输出结果是 、以下程序的输出结果是

、以下程序的输出结果是 、以下程序的输出结果是

; 、以下程序的输出结果是 三、程序填空(每空 分,共 分) 、将一个数组中的元素按逆序重新存放。例如原来的顺序为: 要求改为: 。 初始数组

C语言考试试卷及答案

2011-2012学年第一学期 C语言程序设计A 课程A卷考试题 共 4 页此第 1 页成绩 一、单项选择题(每小题2分,共40分) 1. C语言中合法的字符常量是() A.n B.’\n’ C.110 D.”n” 2. 有以下程序: main( ) { char ch=’A’; printf(“ch(1)=%d,ch(2)=%c\n”,ch,ch+1); } 程序运行后的输出结果是() A. ch(1)=65,ch(2)=A B. ch(1)=97,ch(2)=A C. ch(1)=65,ch(2)=B D. ch(1)=97,ch(2)=B 3. 能表示a不能被2整除且a、b不相等,但a、b的和等于0的C语言逻辑表达式是() A. a==-b&&a%2==0 B. a!=b&&a+b==0&&a%2 C. !(a%2)&&a==-b D.a%2==0&&a+b==0 4. 以下程序段中语句” printf("i=%d,j=%d\n",i,j);”的执行次数是() int i, j; for(i=3;i ;i--) for(j=1;j<5;j++) printf("i=%d,j=%d\n",i,j); A. 12 B. 20 C. 15 D. 24 5. 执行以下程序段后,x[2]的值是() int x[10]={1,2,3,4,5,6,7,8,9,10},i,j,t; i=0;j=9; while(i

C语言模拟试卷A

安徽农业大学经济技术学院 《C语言程序设计》模拟试卷(A) 所有答案写在答题卡上,否则不得分 一、单项选择题(每题1分,共30分) 1.以下选项中叙述正确的是___C_____。 A)C语言程序总是从第一个定义的函数开执行 B)在C语言程序中,被调用的函数必须在main( )函数中声明 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 2.C语言程序的三种基本结构是 A 结构。 A)循环、选择、顺序 B)递归、转移、嵌套 C)for while do-while D)if break continue 3以下选项中不属于C语言的基本数据类型的是__D______。 A)int B)double C)char D)bool 4.以下选项中正确的C语言标识符是_B_______。 A)2b B)x_1 C)a@b D) h#3 5.有以下程序段:int m=0,n=0;char c=’a’; scanf(“%d%c%d”,&m,&c,&n); printf(“%d,%c,%d\n”,m,c,n); 若从键盘上输入98A56(回车)输出结果是____B____。 A)98,A,56 B)98,a,56 C)98,a,0 D)98,A,6 6.以下选项中,和语句k=n++;等价的是__A______。 A)k=n,n=n+1; B)n=n+1,k=n; C)k=++n; D)k=n+1; 7.已知:int i=3,j=2;,则执行语句j*=i+2;printf("%d",j);后,输出结果是____B____。 A)8 B)10 C)12 D)14 8.已知:int a=2,b=3,c;,执行语句c=(a=2,b=2),a+b;后,c的值是____A____。 A)2 B)3 C)4 D)5 9.已知:int x,y;float z;,若要给变量x,y,z输入数据,以下正确的输入语句是__C______。 A)scanf("%d,%d,%f",x,y,z); B)scanf("%d,%d,%f\n",&x,&y,&z); C)scanf("%d,%d,%f",&x,&y,&z); D)scanf("%2d,%2d,%3.2f",&x,&y,&z); 10.设有int m=9,n; 则表达式( B )不能使n的值为1。 A.n=m%2 B.n=m/10 C.n=m-1<10?1:2 D.n= m %8 11.一个C程序中要调用sqrt()函数时,应在程序中包含的头文件是_B_______。 A)stdio.h B)math.h C)string.h D)stdlib.h 12.已知:char c='a';,则执行语句printf("%c",c-32);后输出结果是____A____。 A)A B)65 C)97 D)出错 13.能正确表示逻辑关系“a≥5或a≤-1”的C语言表达式是__D______。 A)a>=5|a<=-1 B) a≥5||a≤1

C语言期末试卷A

1 C 语言 期末试卷(A 卷) 一、单选(20%,每题1分) 1、以下叙述不正确的是( )。 A 、一个C 源程序可由一个或多个函数组成。 B 、一个 C 源程序必须包含一个main( )函数。 C 、C 程序的基本组成单位是函数。 D 、在C 程序中,注释说明只能位于一条语句的后面。 2、以下选项中,能用作用户标识符的是( )。 A 、void B 、8_8 C 、_0_ D 、unsigned 3、若有定义:int x=3,y=4;则表达式!x||y 的值为( )。 A 、1 B 、0 C 、3 D 、4 4、对于类型相同的指针变量,不能进行的运算是( )。 A 、+ B 、 - C 、= D 、== 5、以下程序段的运行结果是( )。 enum weekday{aa,bb=2,cc,dd,ee}week=ee; printf(“%d ”,week); A 、ee B 、5 C 、 2 D 、4 6、下面程序中,结构体变量a 所占的内存字节数是( ) union U {char st[4]; int i; long l;}; struct A {int c; union U u;}a; A 、4 B 、5 C 、 6 D 、8 7、以下程序的输出结果是( )。 main( ) {int a[]={1,2,3,4,5,6},*p; p=a; *(p+3)+=2; printf(“%d,%d\n ”,*p,*(p+3));} A 、2,4 B 、 2,6 C 、1,4 D 、1,6 8、下面说法不成立的是( )。 A 、结构体可以嵌套定义 B 、共用体可以嵌套定义 C 、结构体的成员不可以是共用体 D 、结构体的成员可以是共用体、结构体和基本数据类型 9、以下程序的输出结果是( )。 void main( ) {char a=3,b=6; char c=a^b<<2; printf(“%d ”,c);} A 、10 B 、20 C 、27 D 、28 10、以下对结构体变量stu1 中成员age 的非法引用是( )。 struct student{int age;int num;}stu1,*p; p=&stu1; A 、stu1.age B 、student.age C 、p->age D 、(*p).age 11、当调用函数时,实参是一个数组名,则向函数传递的是( )。 A 、数组的首地址 B 、数组的长度 C 、数组每一个元素的地址 D 、数组每个元素中的值 12、以下程序的输出结果是( )。 #define SUM(y) 1+y main( ) {int x=2; printf(“%d ”,SUM(5)*x);} A 、 10 B 、 11 C 、12 D 、15 13、以下运算符中优先级最高的是( )。 A 、& B 、 << C 、 | D 、~ 14、在C 语言中,用“W ”方式打开一个已含有10个字符的文本文件,并写入了5个新字符,则该文件中存放的字符是( )。 A、新写入的5个字符 B 、新写入的5个字符覆盖原有字符中的前5个字符,保留原有的后5个字符 C 、原有的10个字符在前,新写入的5个字符在后 D 、新写入的5个字符在前,原有的10个字符在后 15、若有定义:int *p,a=4; p=&a;则以下均代表地址的是( )。 A 、a,p B 、&a,p C 、&a,*p D 、a,*p 16、下面函数调用正确的是( )。 A 、fopen(…file.dat ?,?r ?); B 、fprintf(“%ld ”,data,fp) ; C 、fclose(“file.dat ”); D 、fread(&i,sizeof(int),1,fp); 17、函数调用语句fseek(fp,-10L,2);的含义是( )。 A 、将文件位置指针移动到距离文件头10个字节处。 B 、将文件位置指针从当前位置向文件尾方向移动10个字节。 C 、将文件位置指针从当前位置向文件头方向移动10个字节。 D 、将文件位置指针从文件末尾处向文件头方向移动10个字节。 18、以下程序运行后,屏幕显示File open error!,则可能的原因是( )。 main() { FILE *fp;char str[256]; fp = fopen("test.txt", "rt"); if(fp==NULL) { printf("File open error!");return;} fscanf(fp,"%s",str); 班级: 姓名: 学号 ○ ○ 密 ○ 封 ○ 装 ○ 订 ○ 线 ○ ○ 密 封 线 内 不 要 答 题

2012年C语言试卷(A)

青海大学试卷(A卷) 一.填空题(每空1分,共16分) 1.一个C程序一般由若干函数构成,程序中至少应包含一个主函数。 2.在循环控制中,break语句用于结束当前循环层,continue语句用于结束本次循环。 3. 若x和n均是int型变量,且x和n的初值均为8,计算表达式x+=n++后,x的值为 【4】,n的值为【5】。 4.若有定义int m=5,y=2;则计算表达式y+=y-=m*=y后的y值是【6】。 5. 有这样的定义: int a=10;int *p;让指针p指向a的语句【7】,当p指向a 后, 【8】与p等价,【9】与*p等价。 6.有说明char s1[40],s2[20]=“you are a teacher.”;如果想把s2中的字符串复制到s1中的函数调用语句是【10】。 7.函数直接或者间接地自己调用自己,称为函数的【11】。 8.结构体的变量定义为:struct aa{int a;char c;float x;}b1;则变量b1占用的内存空间的字节数是【12】。 9.在函数内部定义的只在本函数内有效的变量叫【13】,在函数以外定义的变量叫【14】。 10.feek(fp,-10L,1)中的fp和1分别代表文件【15】和文件【16】。二.选择题(每小题2分,共40分) 1.程序调试的任务是()。 A.设计测试用例 B.验证程序的正确性 C.发现程序中的错误 D.诊断和改正程序中的错误 2.C语言中,逻辑“真”等价于()。 A.非零的数 B.大于零的整数 C.大于零的数 D.非零的整数 3.以下程序的输出结果是()。 main(){ int a=2,b=5; printf(“a=%%d,b=%%d\n”,a,b);} A.a=%2,b=%5 B.a=2,b=5 C.a=%%d,b=%%d D.a=%d,b=%d 4.若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5赋给变量b的输入数据是()。 A.3 5 B.3,5 C.3;5 D.35 5.以下程序段的输出结果是()。 #include main(){ double a=-3.0,b=2; printf(“%3.0f %3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b));} A.9 8 B.8 9 C.6 6 D.以上三个都不对 6.若给定条件表达式(M)?(a++):(a--),则和表达式M等价的表达式为()。 A.M==0 B.M==1 C.M!=0 D.M!=1 7.有以下程序: #include main( ){ int a=1,b=0; if(--a) b++; else if(a==0) b+=2; else b+=3; printf(“%d\n”,b) ;} 程序运行后的输出结果是()。 A.2 B.1 C.0 D.3 8.以下程序段的输出结果是()。 int x=3;do { printf(“%3d”,x-=2);}while(!(--x)); A.1 B.3 0 C.1 -2 D.死循环 9.有以下程序: #include main( ){ int a=7; while(a--); printf(“%d\n”,a);} 程序运行后的输出结果是()。 A.7 B.0 C.l D. -1 10.在编译预处理中,以下有关宏替换的叙述不正确的是()。 A.宏替换不占用运行时间 B.宏名无类型 C.宏名必须用大写字母表示 D.宏替换只是字符替换 11.以下对一维数组a的正确说明是()。 A.char a(10); B.int a[ ];C.int k=5,a[k]; D.char a[ ]={‘a’,‘b’,‘c’}; 12.有以下程序: #include main( ){ char ch[3][5]={“AAAA”,“BBB”,“CC”};printf(“%s\n”,ch[1]);} 程序运行后的输出结果是()。

C语言期末试卷A

一、判断题(10分) 1、一个算法应该具备有穷性、确定性、输入、输出和有效性。(t) 2、“A”是一个字符常量。(f) 3、“++”运算符的优先级比“+”运算符的优先低。(f) 4、C语言本身并不提供输入输出语句。但可以通过输入输出函数来实现数据的输入输出。(t) 5、在标准C中,while和do_while的功能完全相同。(f) 6、在使用函数fgetc时,文件可以“w”的方式打开。(f) 7、在标准C语言中,链表和数组一样是一种静态数据类型。(f) 8、在标准C语言中,字符串是以‘\0’结束的,故字符串的长度也包括‘\0’。(f) 9、函数strcmp(“AShhjjj”,“ASHHJJJ”)的返回值是0。(f) strlen(s)的返回值为6。(f) 在每小题的四个备选答案中选出一个正确的。10分) 1、在C语言中,char型数据在内存中的存储形式是 d 。 A、补码 B、反码 C、原码 D、 ASCII码 2、下面for 循环的正确描述是 d 。 A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句后判断表达式 C、在for循环中,不能用break语句结束循环 D、for循环体语句中,可以包含多条语句,但必须用花括号括起来 3、以下有关宏替换的叙述不正确的是 d 。 A、宏替换不占用运行时间 B、宏名无类型 C、宏替换只是符号替换 D、宏名必须用大写字母表示 4、表达式!x||a==b等价于( d)。 A、!((x||a)==b) B、!(x||y)==b C、!(x||(a==b)) D、(!x)||(a==b) 5、宏定义 #define div(a,b) a/b 的引用 div(x+5,y-5) 替换展开后是。 A、x+5/y-5 B、x+5/y-5; C、(x+5)/(y-5) D、(x+5)/(y-5) 6、移位运算:int c=16;c=c<<2; 变量c的值是。 A、8 B、1 C、4 D、64 7、int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3]=a,*p=a[0] 则下列能够正确表示数组元素a[1][2]的表达式是。 A、*((*prt+1)[2]) B、*(*(p+5)) C、(*prt+1)+2 D、*(*(a+1)+2) 8、以下叙述中不正确的是 d 。 A、在不同的函数中可以使用相同名字的变量

C语言试题及答案

大学C语言考试题库 第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。

C语言测试卷A卷

C语言A卷 一、选择题(每小题3分,共42分)。 1、下列各函数的首部中,符合C语言要求的是() A)void play(var a; integer, var b:integer) B)void play( int A, B) C)void play( int A, int B) D)sub play( A as integer, B as integer ) 2、t 为 int 类型,进入下面的循环之前, t 的值为 0 。 while( t=1) { …… } 则以下叙述中正确的是() A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法 D)以上说法都不对 3、假定 int 类型变量占用二个字节,若有定义:int x[ 5 ]={3 , 6 , 9 }; ,则数组x 在存中所占的字节数是() A)3 B)6 C)10 D)20 4、以下程序的输出结果是() main() { int i , A[10]; for(i=9; i>=0; i-- ) A[ i ]=10-i; printf( “%d%d%d”,A[2], A[5], A[8]); } A)258 B)741 C)852 D)369 5、以下程序的输出结果是() main() { int A=3; printf(“%d\n”,(A+=A-=A*A)); } A)-6 B)12 C)0 D)-12 6、以下合法的赋值语句是() A)x=y=100; B)D--; C)9,2 D)10,2 7、以下程序的输出结果是() union myun { struct { int x, y, z ; } u ;

c语言试卷a

1、所有C函数的结构都包括的三部分是( ) A.语句、花括号和函数体 B.函数名、语句和函数体 C.函数名、形式参数和函数体 D.形式参数、语句和函数体 2、C语言中主函数的个数是( ) A.2个B.1个C.任意个D.10个 3、下列关于C语言的关键字的叙述中错误的是( ) A.关键字是C语言规定的具有特定意义的字符串,通常也称保留字。 B.用户定义的标识符不应与关键字相同。 C.ANSI C标准规定的关键字有64个。 D.ANSI C标准规定的关键字有32个。 4、下面可能不影响程序正常运行的是( ) A.语法错误B.逻辑错误C.警告提示D.算法错误 5、下面关于C语言用户标识符的描述,正确的是() A. 不区分大小写 B. 用户标识符不能描述常量 C. 类型名也是用户标识符 D. 用户标识符可以作为变量名 6、以下()是正确的变量名。 A. a.bee B. -p11 C. int D. p_11 7、以下()是错误的整型常量。 A. -0xcdf B. 018 C. 0xe D. 011 8、若有定义:int a=2; 则正确的赋值表达式是()。 A. a-=(a*3) B. double(-a) C. a*3 D. a*4=3 9、对do...while语句错误的描述是:() A.可构成多重循环结构 B. 循环次数不可能为0 C.循环次数可能为0 D. 先执行后判断 10、C语言中规定,if语句的嵌套结构中,else总是()配对。A.与最近的if B. 与第一个if C.与按缩进位置相同的if D. 与最近的且尚未配对的if

11、C程序是由(1)构成的,一个C程序中至少包含(2)个主函数。因此,(3)是C 程序的基本单位。 12、在C语言中,头文件的扩展名是(1)。 13、在调用一个函数的过程中直接或间接调用本身,称为函数的(1)。 14、在结构化程序设计方法中,有(1)、(2)和(3)三种基本结构。 (三个空无顺序要求) 15、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是(1)。 16、若定义:int a=511,*b=&a;, 则printf("%d\n",*b); 的输出结果为(1)。 17、程序1: #include main() { int i,a[10]; for(i=0;i<=9;i++) a[i]=i; for(i=9;i>=0;i--) printf("%5d",a[i]); printf("\n"); } 18、程序2: #include void main() { int a=2,b=3,*pa=&a,*pb=&b,t; printf("交换前:\n"); printf("a=%d,b=%d\n",a,b); printf("*pa=%d,*pb=%d\n",*pa,*pb); printf("\n");

《C语言程序设计》期末考试试卷(A卷)

专 班级 姓名 学号 注意:广州轻工职业学校(大源校区) 2015-2016学年第二学期《C 语言程序设计》期末考试试卷(A 卷) 注 意 事 项 1、请首先按要求在试卷的标封处填写您的专业、姓名、学号和所在的班级名称; 2、请仔细阅读各种题目的回答要求,在规定的位置填写您的答案; 3、不要在试卷上乱写乱画,不要在标封区填写无关内容。 4、请将答案填写到答题卡的相应位置。 使用对象:15计算机设计班 考试时间:120分钟 考试方式:考试 (一)客观题部分 一、单项选择题(每小题1分,共计40分): 1.以下叙述中正确的是 A )C 语言比其他语言高级 B ) C 语言可以不用编译就能被计算机识别执行 C )C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D )C 语言出现的最晚,具有其他语言的一切优点 2.以下叙述中正确的是 A )构成C 程序的基本单位是函数 B )可以在一个函数中定义另一个函数 C )main ()函数必须放在其他函数之前 D )所有被调用的函数一定要在调用之前进行定义 3.以下说法正确的是 A )C 语言程序总是从第一个的函数开始执行 B )在 C 语言程序中,要调用函数必须在main ()函数中定义 C )C 语言程序总是从main ()函数开始执行 D )C 语言程序中的main ()函数必须放在程序的开始部分 4.C 语言规定,在一个源程序中,main 函数的位置 A )必须在最开始 B )必须在系统调用的库函数的后面 C )可以任意 D )必须在最后 5.以下叙述不正确的是 A )一个C 源程序可由一个或多个函数组成 B )一个 C 源程序必须包含一个main 函数 C )C 程序的基本组成单位是函数 D )在C 程序中,注释说明只能位于一条语句的后面 6.下列叙述中正确的是 A )C 语言编译时不检查语法 B ) C 语言的子程序有过程和函数两种 C )C 语言的函数可以嵌套定义 D )C 语言的函数可以嵌套调用 7.以下叙述正确的是 A )在C 程序中,每行中只能写一条语句 B )若a 是实型变量, C 程序中允许赋值a=10,因此实型变量中允许存放整型数 C )在C 程序中,无论是整数还是实数,都能被准确无误地表示 D )在C 程序中,%是只能用于整数运算的运算符 8.以下说法错误的是 A )一个算法应包含有限个步骤 B )在计算机上实现的算法是用来处理数据对象的 C )算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现 D )算法的目的是为了求解 9.算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性的是 A )有零个输入或多个输入 B )高效性 C )有穷性 D )确定性 10.10 下列关于C 语言的说法不正确的是 A )C 语言既具有高级语言的一切功能,也具有低级语言的一些功能 B ) C 语言中的每一条执行语句都必须用分号结束,分号不是C 语言的一部分,是语句 之间的分隔符号 C )注释可以出现在程序中任意合适的地方 D )命令行后面不能加分号,命令行不是C 语言的语句 11.以下说法错误的是 A )高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式 B )计算机只能处理由0和1的代码构成的二进制指令或数据 C )C 语言源程序经过C 语言编译程序编译之后生成一个后缀为.EXE 的二进制文件 D )每一种高级语言都有它对应的编译程序 12.C 语言中用于结构化程序设计的3种基本结构是 A )顺序结构、选择结构、循环结构 B )if,switch,break C )for,while,do-while D )if,for,continue 13.C 语言中最简单的数据类型包括 A )整型、实型、逻辑型 B )整型、实型、字符型 C )整型、字符型、逻辑型 D )字符型、实型、逻辑型 14.C 语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符 A )必须为字母 B )必须为下划线 C )必须为字母或下划线 D )可以是字母,数字和下划线中任一字符 15.下列可用于C 语言用户标识符的一组是 A )void, define, WORD B )a3_b3, _123,Car C )For, -abc, IF Case D )2a, DO, sizeof

c语言期末试卷A

C语言学科期末试卷(A) 成绩 一、选择题(每题2分,共50分) 1、在C语言中,用户能使用的正确标识符是() A. 5for B._set C.struct D._b.8 2、以下叙述不正确的是() A.C语言本身没有输入输出语句 B.一个可执行的C源程序必须包含一个main函数 C.C程序中,注释说明只能位于一条语句的后面 D.C程序的基本组成单位是函数 3、以下对C语言源程序有关常识正确的描述是() A.main函数必须位于文件的开头 B.每个语句必须单独一行 C.标识符中大小写字母没有区别 D.宏定义#define部分不一定要放在程序的最开头位置 4、以下程序运行后,a和b的值分别为() #include main() { int a,b; a=10%3; b=5; printf(“%%%d,%%%%d”,a,b);} A.%%1,%%%5 B.%1,%%d C.%%3,%%5 D.1,5 5、已知ch是字符型变量,下边正确的赋值语句是() A.ch=?123?; B.ch=?\xff?; C.ch=?\08? D.ch=”\”; 6、已知字符?b?的ASCII码为98,语句printf(“%d,%c”,?b?,?b?+2);的输出为() A.98,b B.语句不合法 C.98,99 D.98,d 7、对于以下程序段,运行后i值为() int i=0,a=1; switch(a) { case1: i+=1; case2:i+=2;break; default:i+=3; } \A.1 B.3 C.6 D.上述程序有语法错误 8、在C语言中,正确的int类型的常数是() A. -2U B. 059 C.3a D.0Xaf 9、已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数时,正确的数据输入方式是() int a1,a2; char c1,c2; scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2); A.10A20B B.10 A 20 B C.10(TAB)A(TAB)20(TAB)B D.10A20 B 10、下列四组选项中,均是C语言关键字的选项是() A.define B.getc C.include D.while if char sanf go type printf case pow 11、下面四个选项中,均不是合法浮点数的选项是() A. 130. B.1236 C. -.14 D.-e5 0.14 2e5.2 123e4 0.254 E5 .e7 0.0 1e3 12、下面不正确的字符串常量是() A. …abc? B.”1212” C.”0” D.”” 13、已知各变量的类型说明如下 int i=4,k,a,b; unsigned long w=6; double x=1.24,y=2.4; 则以下符合C语言语法的表达式是() A. a+=a-=(b=4)*(a=3) B.a=a*3=2 C.x%(-3) D. y=float(i) 14、以下正确的叙述是() A.在C程序中,每行中只能写一条语句 B.若a是实型变量,C程序中允许赋值a=6,因此实型变量中允许存放整型数 C.在C程序中,无论是整数还是实数,都能被准确无误的表示 D.在C程序中,%是只能用于整数运算的运算符 15、在C语言中,char型数据在内存中的存储形式是() A.补码 B.反码 C.源码 D.ASCII码 16、设有说明:char c; int x; float y; double z;则表达式c*x+z-y值的数据类型为() A.float B.char C.int D.double 17、若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是() A.scanf(“%d%d1x,%le”,&x,&y,&z); B.scanf(“%3d*%d%lf”,&x,&y,&z); C.scanf(“%x%*d%o”,&x,&y); D.scanf(“%x%o%4.2f”,&x,&y,&z); 18、根据定义和数据的输入方式,输入语句的正确形式为() 已有定义:float f1,f2; 数据的输入方式: 3.12 3.1

相关文档