C语言试卷

C语言试卷
C语言试卷

一、选择题(请选择一个最合适的答案填在题前面的括号中,每题2分,15

题,计30分)

1、一个C程序的执行是从( A)

A、main()函数开始,直到main()函数结束

B、第一个函数开始,直到最后一个函数结束

C、第一个语句开始,直到最后一个语句结束

D、main()函数开始,直到最后一个函数结束

2、下列符号可以作为变量名的是( C )

A、+a

B、*p

C、_DAY

D、next day

3、若定义int m=7,n=12; 则能得到值为3的表达式是(D )

A、n%=(m%=5)

B、n%=(m-m%5)2

C、n%=m-m%5

D、(n%=m)- (m%=5)5

4、为了避免嵌套的if-else语句的二义性,C语言规定else总是与(C )组成配对关系

A、缩排位置相同的if

B、在其之前未配对的if

C、在其之前最近的未配对的if

D、同一行上的if

5、以下叙述中正确的是(A )

A、函数的定义不可以嵌套,但函数的调用可以嵌套

B、函数的定义可以嵌套,但函数的调用不可以嵌套

C、函数的定义和调用都可以嵌套

D、函数的定义和调用都不可以嵌套

6、已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘\103’是( C )

A、A

B、B

C、C

D、D

7、下列语句段中不是死循环的是(B )

A、for (i=1;;i++)

B、i=100;

Sum=sum+1; while(1)

{

i=i%100+1;

if (i= =20) break;

}

C、k=0;

D、s=3379;

do while (s++%2+3%2)

{ s++;

++k;

} while (k<=0)

8、以下关于字符数组的描述中错误的是(C)

A、字符数组可以存放字符串

B、字符数组中的字符串可以整体输入和输出

C、可以在赋值语句中通过运算符“=”对字符数组整体赋值

D、不可以用关系运算符对字符数组中的字符进行比较

9、在定义了数组int a[3][6];后,第10个元素是B

A、a[2][4]

B、a[1][3]

C、a[3][1]

D、a[4][2]

10、有以下程序

#include "stdio.h"

#include "string.h"

main()

{

char s[]="sb\n\\\'\r\b";

printf("%d,%d\n",sizeof(s),strlen(s));A

}

A、8,7

B、8,8

C、7,8

D、7,7

11、在C语言的程序中,下列叙述错误的是(D)

A、形参是局部变量

B、不同的函数中,可以使用相同名称的变量

C、在一个函数的内部,可以在复合语句中定义变量

D、main()函数中定义的变量在整个文件或程序中都有效

12、C语言中规定函数的返回值的类型是由(D )

A、return语句中的表达试类型所决定

B、调用该函数时的主调用函数类型所决定

C、调用该函数时系统临时决定

D、在定义该函数时所指定的函数类型所决定

13、已知变量a被定义为int型变量,以下定义并初始化指针变量p的语句中正确的是

(D)

A、int p=a;

B、int *p=*a;

C、int p=&a;

D、int *p=&a;

14、若有定义char s[3][4];以下对数组元素s[i][j]的各种引用形式中错误的是(A )

A、*(s[i]+j)

B、*(s+i)+j

C、s[i][j]

D、*(*(s+i)+j)

15、下面提供的一组函数中,用于按“记录”的方式进行输入和输出的是(C )

A、fread(),fwrite()

B、fscanf(),fprintf()

C、fgets(),fputs()

D、fgetc(),fputc()

二、填空题(每题2分,10题,计20分)

1、c语言的语句必须以_____;_______结尾,C语言中可以利用______强制类型转换_______将一个表达式的值转换成指定的类型。

2、利用TC或VC++6.0编辑C语言源程序,源程序的后缀为___.c______,生成的可执

行程序后缀为__.obj___________。

3、有定义int a,b,c;则“a是偶数”的表达式是 __a%2==0__________,若已经知道a、b、c为正数,则a、b、c构成一个三角形的条件是_____(a+b)>c&&(a-b)

4、C语言中do-while 与while循环的主要区别是:do-while的循环体_______执行一次循环体,后判断表达式___________________,while语句循环体____先判断表达式,再执行循环体_________________________。

5、C语言中,一个自定义函数一般由两个部分组成,它们是___函数首部__________

和____函数体________。

6、C语言中的预处理命令均以_#_______符号开头,可以出现在程序中的__任何___ 位置。

7、C语言中,将一个变量的地址称为___指针___ ,存放变量地址的变量称为____指针变量____ 。

8、若定义int (*p)( );则p是____指针___ ,而定义int * p( ); 则p是____指针函数_____ 。

9、C语言中,定义结构体类型的关键字是____ ___ ,文件(FILE)类型由系统在_______________头文件中的定义

10、C语言中,用基本类型变量作为函数参数只能进行__单向___ 传值,而通过数

组(指针、全局变量)等类型变量作为函数参数可以实现____双向_____ 传值。

三、阅读程序,按要求回答问题(每题3分,8题,计24分)

1、以下程序的运行结果是________________________

#include

main()

{

int i=5,j=6,m=i+++j;

printf("%d,%d,%d\n",i,j,m);

}

2、下面程序的运行结果是____________ __________

#include

main()

{

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

switch(x)

{

case 1:

switch(y)

{

case 0: a++; break;

case 1: b++; break;

}

case 2:

a++;b++; break;

case 3:

a++;b++;

}

printf("\na=%d,b=%d",a,b);

}

3、阅读下面程序,设编译后生成的可执行文件名为cfile

#include

main(int argc,char * argv[])

{

while (argc>1)

{

++argv;

printf("\n%s",*argv);

--argc;

}

}

如果在操作系统状态下,输入cfile computer C_LANGUAGE

将显示如下:

_____________ _____

_______________________

4、以下程序运行时,当输入Language Programming[Enter],其结果是____________ #include

main()

{

char str[30];

scanf("%s",str);

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

}

5、下面的自定义函数的功能是___________________________

int fun(int n)

{ int f;

if(n<0) printf("n<0,data error!");

else if(n= =0||n= =1) f=1;

else f=fun(n-1)*n;

return(f);

}

6、阅读下面程序,该程序的运行结果是:

#include

int i=1;

other()

{ static int a=2;

static int b;

int c=10;

a=a+2; i=i+32; c=c+5;

printf("-----OTHER------\n");

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

b=a;

}

main()

{ static int a;

register int b=-10;

int c=0;

printf("-----MAIN------\n");

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

c=c+8;

other();

printf("-----MAIN------\n");

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

i=i+10;

other();

}

7、设有定义:则对将stu1变量的出生月份置为12的语句是___ _________________;struct

student

{ int num;

char name[20];

struct date

{ int month;

int day;

int year;

}birthday;

}stu1;

8、写出下面程序的运行结果_____________________

#include "stdio.h"

main()

{

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

int *arr[3]={a[0],a[1],a[2]};

int i,**p;

p=arr;

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

printf("%d ",*(*p+i));

}

四、程序设计(1、2每题8分, 3题10分,3题,计26分)

1、编程实现求一元二次方程ax2+bx+c=0的根。

要求:从键盘输入a、b、c的值,并把方程的根(只考虑实根)显示在屏幕上。

2、编程实现统计文本文件(file.txt)中字符的个数。

3、定义一个整型二维数组并初始化,编程求该数组所有元素的和。

要求:分别用数组下标法、一级指针法、二级指针法实现。

一、选择题(请选择一个最合适的答案填在题前面的括号中,每题2分,15

题,计30分)

1A 2C 3D 4C 5A 6C 7B(B\C选择一个就算对) 8C 9B 10A 11D 12D 13D 14B 15A

二、填空题(每题2分,10题,计20分)部分对酌情给分

下面为参考答案,意思正确也可给分。

1、分号(;)强制类型转换

2、.c(.cpp) .exe

3、 a%2==0 a+b>c&&a+c>b&&b+c>a

4、do-while中循环体至少执行一次while的循环体可能一次也不执行。

5、函数首部函数体。

6、“#”任何

7、指针指针变量。

8、指针函数。

9、struct stdio.h

10、单向双向

三、阅读程序,按要求回答问题(每题3分,8题,计24分)部分对酌情给

部分答对酌情给分。

1、6、6、11

2、a=2,b=1

3、computer

C_LANGUAGE

4、Language

5、递归求n!

6、

7、stu1.birthday.month=12;

8、 1 2 3 4

四、程序设计(1、2每题8分, 3题10分,3题,计26分)

2、编程实现求一元二次方程ax2+bx+c=0的根。

要求:从键盘输入a、b、c的值,并把方程的根(只考虑实根)显示在屏幕上。

本答案为参考答案,变量定义及赋值3分,控制与表达式3分,其余2分。

# include

float x1,x2,disc,p,q;

greater_than_zero(float a, float b)

{ x1=(-b+sqrt(disc))/(2*a);

x2=(-b-sqrt(disc))/(2*a);

}

equal_to_zero(float a,float b)

{ x1=x2=(-b)/(2*a);

}

smaller_than_zero(float a,float b)

{ p= -b/(2*a);

q=sqrt(disc)/(2*a);

}

main( )

{ float a,b,c;

scanf(“%f,%f,%f”,&a,&b,&c);

disc=b*b-4*a*c;

if ( disc>0)

{ greater_than_zero(a,b);

printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

else if(disc = =0)

{ equal_to_zero( a,b);

printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

}

else

{smaller_than_zero( a,b);

printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

}

}

2、编程实现统计文本文件(file.txt)中字符的个数。

本答案为参考答案,fopen 3分,循环体3分,其余2分。

#include "stdio.h"

#include "stdlib.h"

main()

{

FILE *fp;

int count=0;

if ((fp=fopen("c:\\out.txt","r"))==NULL)

{

printf("can't open file");

exit(0);

}

while (fgetc(fp)!=EOF)

count++;

fclose(fp);

printf("it contains %d characters.",count);

}

3、定义一个整型二维数组并初始化,编程求该数组所有元素的和。

要求:分别用数组下标法、一级指针法、二级指针法实现。

参考答案略,数组定义及赋值2分,下标法3分、一级指针法2分,二级指针法2分,其余1分。

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语言程序设计》考试试卷(答案) 一、填空题(每小空1分,共10分) 1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。 2.一个C程序有且仅有一个main( ) 函数。 3.C语言描述“x和y都大于或等于z”的表达式是x>=z && y>=z。 4.C语言可以用来实现循环的结构化语句是while、do while、for。 5.数组名表示数组在内存的首地址。 6.int a=3,*p=&a;*p+2的值是5。 二、单项选择题(每小题2分,共70分) 1.__B___是C语言合法的常量。 (A).45(B)078 (C)25.6e3.4 (D)‘xy’2.一个程序的执行是从 A 。 (A)本程序的main函数开始,到main函数结束 (B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 (C)本程序的main函数开始,到本程序文件的最后一个函数结束。 (D)本程序文件的第一个函数开始,到main函数结束。 3.以下叙述正确的是 C 。 (A)在C程序中,main函数必须位于程序的最前面。 (B)C程序每行中只能写一条语句。 (C)C语言本是没有输入输出语句。 (D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 4.以下叙述不正确的是 D 。 (A)逗号运算符的运算级最低。 (B)ABC和abc是两个不同的变量。 (C)若a和b类型相同,在执行a=b后,b的自身值不变。 (D)‘a’和“a”是完全等价的常量。 5.int x=3,y=2;则表达式x+=x*=y+8的值为 C 。 (A)28 (B)30 (C)60(D)17 6.设x=2.7,a=8,y=4.9,算术表达式x+a%3*(int)(x+y)%5/3的值为 B 。 (A)2.7 (B)3.7(C)4.7 (D)4.03 7.执行下面两个语句后,输出的结果为__D___。 char c1=98; printf(“%d %c”,c1,c1-32); (A)97 66 (B)98 b (C)b 66 (D)98 B 8.执行下面语句后的结果为 C 。 y=10;x=y++; (A)x=10,y=10 (B)x=11,y=11 (C)x=10,y=11(D)x=11,y=10 9.Char w;int x;float y;double z;则表达式w*x+z-y值的数据类型是A 。 (A)double (B)char (C)int (D)float 10.C语言中要求操作数必须是整数的运算符是 B 。

C语言期末试卷A12_13_1(含答案)

黄冈职业技术学院2012~2013学年度第1学期 《 C 语言程序设计》期末考试试卷(A 卷) (本试卷适用班级:2012级软件外包服务专业) 一、选择题(本大题共20小题,每小题1.5分,共30分) 1、C 语言中最简单的数据类型包括( ) A )整型、实型、逻辑型 B )整型、实型、字符型 C )整型、字符型、逻辑型 D )字符型、实型、逻辑型 2、以下关于C 语言程序执行的描述,正确的是( )。 A)C 语言执行的程序总是从main()函数开始,到main()函数结束 B)C 语言程序的执行是从第一个函数开始,到程序文件的最后一个函数结束 C)C 语言程序的执行是从第一个函数开始,到main()函数结束 D)C 语言程序的执行总是从main()函数开始,到程序文件的最后一个函数结束 3、C 语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符( ) A )必须为字母 B )必须为下划线 C )必须为字母或下划线 D )可以是字母,数字和下划线中任一字符 4、下列可用于C 语言用户标识符的一组是( ) A )void, define, WORD B )a3_b3, _123,Car C )For, -abc, IF Case D )2a, DO, sizeof 5、以下描述错误..的是( )。 A)C 语言源程序经编译后生成后缀名为.obj 的目标程序( ) B)C 语言程序经过编译、连接等步骤之后才形成一个真正可以执行的二进制机器指令文件 C)用C 语言编写的程序被称为源程序,它以ASCII 代码的形式存放在一个文本文件中 D)C 语言每条可执行与非执行语句最终都将被转换成二进制机器指令 6、在C 语言中,char 型数据在内存中的存储形式是( ) A )补码 B )反码 C )原码 D )ASCII 码 7、C 语言中运算对象必须是整型的运算符是( ) A )% B )/ C )= D )<= 8、设有定义char a,b;若通过a&b 运算保留a 的第3位和第6位的值,则b 的二进制数应是( ). A) 00100100 B) 11011011 C) 00010010 D) 01110010 命题人 题 号 一 二 三 四 五 总 分 黄国军 应得分 30 20 24 10 16 100 实得分 评卷人 得 分 ----------- ------- --------------- --装- --------------------- ----------- ---订- ------------------------ -----------线- ------ ------------------ ----------- 教学 学院 :__ __ __ __ __ _ 年级: __ __ __ __ __ __ 专业班 级:_ __ __ __ __ __ _ 姓 名:__ __ __ __ __ __ __ 学号 :_ _ _ __ __ __ __ __ _ -------------------------------密-----------------------------------------封--------------------------------线----------------------------------------

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语言试题与答案

大学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语言试卷及答案

一、选择题(每题 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语言试题及答案

《C语言》课程综合复习资料 一、单选题 1. 在C语言中,字符型数据在存中的存储形式是 A)原码 B)补码 C)反码 D)ASCII码 2. 在C语言中,十进制数47可等价地表示为 A) 2f B) 02f C) 57 D) 057 3. 设有定义:int x=12,n=5; 则表达式 x%=(n%2) 的值为 A) 0 B) 1 C) 2 D) 3 4. 设有定义语句:char str[][20]={,"Beijing","中国石油大学"},*p=str; 则printf("%d\n",strlen(p+20)); 输出结果是 A)10 B) 6 C) 0 D) 20 5. 已定义以下函数: fun(int *p) { return *p; } 该函数的返回值是 A)不确定的值 B)形参p所指存储单元中的值 C)形参p中存放的值 D)形参p的地址值 6. C语言中,函数返回值的类型是由 A)return语句中的表达式类型决定 B)调用函数的主调函数类型决定 C)调用函数时的临时类型决定 D)定义函数时所指定的函数类型决定 7. 有以下函数定义: void fun( int n , double x ) { …… } 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是 A) fun( int y , double m ); B) k=fun( 10 , 12.5 ); C) fun( 10 , 12.5 ); D) void fun( 10 , 12.5 ); 8. 以下选项中不能正确赋值的是 A) char b[]={′H′,′e′,′l′,′l′,′o′,′!′}; B) char b[10];b="Hello!";

C语言程序设计模拟试题1附答案

《C语言程序设计》模拟试卷一 一、单项选择题(每题2分,共30分) 1、下列有关C语言的叙述中错误的是()。 A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数 C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的是()。 A) MAIN B) _HJ C) 2ong D) LINE1 3、下列符号中用来表示C语言中的回车换行的是()。 A) \r B) \n C) \b D) \t 4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。 A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 1 5、已知ch为字符型变量,下面表达式中正确的是()。 A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ” 6、以下能正确定义一维数组的是()。 A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”; C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5}; 7、以下语句中能正确定义变量并赋初值的是()。 A) char c=65; B) float f=f+1.1; C) double x=12.3e3.6; D) int m=n=2.0; 8、在执行下列程序时输入:1357924,则程序的运行结果为()。 main( ) { int x, y; scanf(“%2d%2d”,&x,&y); printf(“%2d”,x*y); } A) 13 B) 1357 C) 74 D) 741 9、执行下列程序段后输出的结果是()。

精选C语言试卷(带答案).

2006-2007学年第二学期考试试卷A卷 考试科目C语言程序设计考试方式闭卷完成时限2小时 拟题人审核人批准人2007年7 月 5 日机械、电气、信息、生化、轻工、经管、理学院2006年级各理工科专业 说明: 1.应将全部答案写在答卷纸对应的题号处;否则作无效处理; 2.编程题应写明题号,若答卷纸不够,请写在背面,不要另添卷纸; 3.考试完成后,必须将试卷与答卷同时交回。 一、判断题(10小题,每题1分,共10分;用√表示正确,用×表示错误)1.在循环体内使用break语句和continue语句的作用相同。 2.函数返回值的类型最终取决于函数定义时形参的类型。 3.else语句一定要与if语句配对使用,程序中else语句的个数一定小于或者等于if语句的个数。 4.从狭义角度讲,算法是解决一个问题采取的方法和步骤的描述。 5.1/2的结果是0,所以1.0/2的结果也是0。 6.a=b=c=5可以理解为a=(b=(c=5))。 7.假设有语句int a[10]={1,2,3},*p;p=a;则p++完全等价于a++。 8.for(;;)等价于while(1)语句。 9.假定int类型变量占用两个字节,若有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是6。 10.char *sp ={"welcome"};可以写成char *sp="welcome"; 。 二、单选题(16小题,每题1分,共16分) 1.以下数组定义中错误的是: (A) int x[][3] ={0}; (B) int x[2][3]={{1,2},{3,4},{5,6}};

(C) int x[][3]={{1,2,3},{4,5,6}}; (D) int x[2][3]={1,2,3,4,5,6}; 2.设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为: (A)EOF (B)NULL (C) 0 (D)非0值 3.有以下程序: main() {int y=10; while(y--) ; printf(“y=%d\n”,y); } 程序执行后的输出结果是: (A) y=0; (B)y=-1; (C) y=1 (D)while构成无限循环 4. 若有以下宏定义: #define N 2 #define Y(n) (N+1)*n 则执行语句int z; z=2*N+Y(5);后的值是 (A) 50 (B)34 (C)19 (D)无定值 5.以下叙述中错误的是: (A)c程序必须由一个或者一个以上的函数组成。 (B)函数调用可以作为一个独立的语句存在。 (C)若函数有返回值,必须通过return 语句返回。 (D)函数形参的值也可以传回给对应的实参。 6.设有如下定义的变量 union data { int i; char ch; float f; }b; 则变量b占用内存的字节数是(假设int类型占2个字节,char类型占1个字节,float类型占4个字节): (A) 4 (B)5 (C) 6 (D)7 7.以下叙述中错误的是:

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语言试题库(完整版)

C语言试题库 一、单项选择 第一章 C语言概述 (1)一个C程序的执行是从 A、本程序的MAIN函数开始,到MAIN 函数结束。 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C、本程序的MAIN函数开始,到本程序的最后一个函数结束。 D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。(2)以下叙述正确的是 A、在C程序中,MAIN函数必须位于程序的最前面。 B、 C程序的每行中只能写一条语句。 C、 C语言本身没有输入输出语句。 D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(3) C语言规定,在一个源程序中,MAIN主函数的位置是在: A、必须在最前面。 B、必须在系统调用的库函数的后面 C、可以在任意位置。

D、必须在最后面 (4)一个C程序是由: A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 (5)以下叙述不正确的是: A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个MAIN函数 C、 C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 第二章数据类型、运算符与表达式 (1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=( i=4, j=16, k=32) A、4 B、16 C、32

D、52 (2)下列四组选项中,均不是C语言键字的选项是 A、define , IF, type B、getc, char, printf C、include, scanf, case E、 if, struct, type (3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,do B、float,1a0, _A C、b-a, goto, int D、_123, temp, INT (4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3 B、3*a*e/bc C、3*a*e/b*c D、a*e/c/b*3 (5)已知各变量的类型说明如下:

C语言期中考试试题及答案-1

高级语言程序设计试题 答案在最后 一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出得四个选项中只有一个 选项就是符合题目要求得,请将正确选项前得字母填在题后得括号内。 1、C语言程序编译时,程序中得注释部分就是( ) A、参加编译,并会出现在目标程序中 B、参加编译,但不会出现在目标程序中 C、不参加编译,但会出现在目标程序中 D、不参加编译,也不会出现在目标程序中 2、设int a=3;则表达式a<1&&--a>1得运算结果与a得值分别就是( ) A、0与2 B、0与3 C、1与2 D、1与3 3、与语句if(a>b)if(c>d)x=1;else x=2;等价得就是( ) A、if(a>b){if(c>d)x=1;else x=2;} B、if(a>b){if(c>d)x=1;}else x=2; C、if((a>b)&&(c>d))x=1;else x=2; D、if(a<=b)x=2;else if(c>d) x=1; 4、设char x='a';则printf("x=%c,y=%c\n",x,97);得输出就是( ) A、x=a,y=97 B、x=97,y=a C、x=97,y=97 D、x=a,y=a 5、执行下列程序 int a[3][3]={{1},{2},{3}}; int b[3][3]={1,2,3}; main() {printf("%d\n”,a[1][0]+b[0][0]);} 后输出得结果就是( ) A、0 B、1 C、2 D、3 6、结构化程序设计所规定得三种基本控制结构就是( ) A) 输入、处理、输出B) 树形、网形、环形 C) 顺序、选择、循环D) 主程序、子程序、函数 7、完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行得步骤依次为( ) A、连接、编译 B、编译、连接 C、连接、运行 D、运行 8、下列各语句中,能够且仅输出整型变量a、b中最大值得就是( ) A、if(a>b) printf(″%d\n″,a);printf(″%d\n″,b); B、printf(″%d\n″,b);if(a>b) printf(″%d\n″,a); C、if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b); D、if(a

C语言试题1

C语言试题1 以下是为大家整理的c语言试题1的相关范文,本文关键词为语言,试题,高级程序设计基础(c语言),试题,选择,每题,2,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。 《高级程序设计基础(c语言)》考试题一 一、选择题(共20题,每题2分) 1.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是

()。if(a A)1b)2c)3D)62.以下程序的输出结果是()。main() {intx=2,y=-1,z=2;if(x if(y A)3b)2c)1D)0 3.若运行时给变量x输入12,则以下程序的运行结果是()。main(){intx,y; scanf(“%d”,y=x>12?x+10:x-12;printf(“%d\\n”,y);} A)0b)22c)12D)10 4.设有程序段intk=10; while(k=0)k=k—1;则下面描述中正确的是() A)while循环执行10次b)循环是无限循环c)循环体语句一次也不执行D)循环体语句执行一次 5.下面程序的功能是计算:至50中是7的倍数的数值之和,请选择填空。#includemain() {inti,sum=0;for(i=1;i A)(int)(i/7)==i/7b)(int)i/7==i/7c)i%7=0D)i%7==06.下面程序段的运行结果是a=1;b=2;c=2;while(a printf(\ A)1,2,0b)2,1,0c)1,2,1D)2,1,1 7.下面程序的功能是计算1至10之间的奇数之和及偶数之和。请选择填空 #includemain(){inta,b,c,i;a=c=0; for(i=0;i{a+=i;();c+=b;} printf(\偶数之和=%d\\n\printf(\奇数之和=%d\\n\} A)b=i--b)b=i+1c)b=i++D)b=i-17.下面程序段:for(t=1;t scanf(\if(x

c语言模拟试卷A

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

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

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

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

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

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

c语言试卷及答案1

c语言试卷及答案1

浙江理工大学 C程序设计试题(一) 试题二、语言基础题(本题共30分) (一)判断题(本题共10分,每小题1分) 说明:在以下提供的若干陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。 (16) C语言程序的三种基本结构是顺 序、选择和嵌套。 (17) 在C语言程序中,在函数内部定 义的变量称为全局变量。 (18) 运算符“=”和“&=”的优先级相 同。 (19) ‘%f’是不正确的字符常量。 (20) 运算符“+”不能作为单目运算符。 (21) 如果运算符“*”和“/”都是右 结合的,则表达式10*6/5的值是10。 (22) s(s-a)(s-b)(s-c)是合法的C语 言表达式。 (23) 表达式!!6的值是6。 (24) 表达式~(~2<<1)的值是5。 (25) 对于变量定:int a[10],*p=a+8; 数组a的最后一个元素是p[1]。

(二)单选题(本题共20分,每小题2分) (26) 执行语句printf("(26) ", "A");将得到出错信息。 A、%u B、%s C、%e D、%d (27) 设c是一个字符变量,求解表达 (27) 后,c的值不是1就是0。 A、c=getchar()!=’\n’ B、(c=getchar()!)=’\n’ C、c=’1’ D、c=EOF (28) 下列定义中,(28) 定义的变 量可以存放-123.4。 A、long a; B、 unsigned b; C、int d; D、float c; (29) 对于变量定义;char *pp[100], pp是一个(29) 。 A、函数 B、数组元素 C、指针变 量D、数组 (30) 下列程序段的输出结果是 (30) 。 char *st[ ]={ "SUM","MOON","STAR","X"}; printf("(%s,%c) ",*(st+1)+1,*(*(st+2)+2)+2)

C语言试卷及答案

一、选择题。(每空2分,共计40分) 本试卷包括第一卷和第二卷,答卷时间总共120分钟) 第一卷 第一部分:基础知识(20项,共40分) 1.一个C语言程序是由(C )组成的。 A.主程序 B.子程序 C.函数 D.过程2.转换说明符%x的输出形式是( C )。 A.十进制 B.八进制 C.十六进制 D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( ? ------------?) ;的正确说法是( C )。 A.循环体只执行一次 B.死循环 C.循环体一次也不执行 D.输出----------- 4.若x、y、z均为int 型变量,则执行下列语句后的z值为( A )。 x=1; y=2; z=3; z=(x>y)?z :y ; z = (z

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语言试卷及答案1

浙江理工大学 C程序设计试题(一) 试题二、语言基础题(本题共30分) (一)判断题(本题共10分,每小题1分) 说明:在以下提供的若干陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。 (16) C语言程序的三种基本结构是顺序、选择和嵌套。 (17) 在C语言程序中,在函数内部定义的变量称为全局变量。 (18) 运算符“=”和“&=”的优先级相同。 (19) ‘%f’是不正确的字符常量。 (20) 运算符“+”不能作为单目运算符。 (21) 如果运算符“*”和“/”都是右结合的,则表达式10*6/5的值是10。 (22) s(s-a)(s-b)(s-c)是合法的C语言表达式。 (23) 表达式!!6的值是6。 (24) 表达式~(~2<<1)的值是5。 (25) 对于变量定:int a[10],*p=a+8;数组a的最后一个元素是p[1]。 (二)单选题(本题共20分,每小题2分) (26) 执行语句printf("(26) ","A");将得到出错信息。 A、%u B、%s C、%e D、%d (27) 设c是一个字符变量,求解表达(27) 后,c的值不是1就是0。 A、c=getchar()!=’\n’ B、(c=getchar()!)=’\n’ C、c=’1’ D、c=EOF (28) 下列定义中,(28) 定义的变量可以存放-123.4。 A、long a; B、unsigned b; C、int d; D、float c; (29) 对于变量定义;char *pp[100],pp是一个(29) 。 A、函数 B、数组元素 C、指针变量 D、数组 (30) 下列程序段的输出结果是(30) 。 char *st[ ]={ "SUM","MOON","STAR","X"}; printf("(%s,%c) ",*(st+1)+1,*(*(st+2)+2)+2) A、(MOON,M) B、(OON,C) C、(OON,Q) D、(OON,A) (31) 对于以下的变量定义,表达式(31) 是不正确的。 struct node { float x,y;

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

相关文档
最新文档