大连理工大学2012c语言期末模拟试题及答案

更新时间:2023-11-27 08:08:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、

1/字符串\的长度是:( ).

A、3 B、11 C、7 D、5

2、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。

A、double B、不确定 C、int D、float

3、下列语句的结果是()。 main() { int j; j=3;

printf(\printf(\}

A、3,3 B、4,4 C、3,4 D、4,3

4、逻辑表达式!(2-1)&&x||0的值是( )

A、1 B、0 C、3 D、2

5、int a=1,b=2,c=3; if(a>b)a=b; if(a>c)a=c; 则a的值为()。

A、3 B、2 C、1

D、不一定

6、执行语句 for(i=1;i++<4;); 后变量 i 的值是()。

A、3 B、5 C、4 D、不定

7、以下正确的描述是( ).

A、只能用continue语句来终止本次循环 B、switch语句中不能出现continue语句 C、在循环中break语句不能独立出现 D、goto语句只能用于退出多层循环

8、下面合法的语句定义是( ).

A、char a[ ]={'0','1','2','3','4','5'}; B、int a[ ]=\

C、int a[5]={0,1,2,3,4,5}; D、char a=\

9、char a[10];不能将字符串\存储在数组中的是()。

A、int i;for(i=0;i<3;i++)a[i]=i+97;a[i]=0; B、a=\

C、strcpy(a,\

D、a[0]=0;strcat(a,\

10、在C语言中,一维数组的定义方式为:类型说明符 数组名()。

A、[整型常量]或[整型表达式] B、[正整型常量表达式] C、[整型表达式] D、[常量表达式]

11、在定义全局变量和局部静态变量的同时赋值,变量的初始化在( )时确定的.

A、运行 B、编辑 C、编译 D、调试

12、关于建立函数的目的,以下正确的说法是()。

A、提高程序的可读性 B、减少程序文件所占内存 C、减少程序的篇幅

D、提高程序的执行效率

13、以下函数调用语句中实参的个数是()。 func((e1,e2),(e3,e4,e5));

A、3 B、5

C、语法错误 D、2

14、设有宏定义#define SUB(x,y) (x)*y,且a=3,b=4,则 SUB(a++,b++) 的值为( ).

A、13 B、16 C、20 D、12

15、变量p为指针变量,若p=&a,下列写法不正确的是()。

A、*(p++)==a++ B、&*p==&a

C、(*p)++==a++ D、*&a==a

16、下列程序正确的运行结果为( ). #include main() {

union u

{char *name; int age; int income; } s;

s.name=\s.age=28;

s.income=1000;

printf(\}

A、8 B、28 C、1000 D、不确定

17、定义my_file 为文件型指针变量,使用fopen只读方式打开一个已存在的二进制文件,以下正 确的调用形式为( ).

A、my_file=fopen(\B、my_file=fopen(\C、my_file=fopen(\D、my_file=fopen(\

二、

1、若i =3,则printf(\输出的值为 -4。 2、格式字符%x用来以八进制形式输出整数.

3、设u=1,v=2,w=3,则逻辑表达式u||v-w&&v+w的值为0. 4、已知a=4,b=2,c=3,d=5,表达式a>b?a:c

int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0; for(i=0;i<3;i++) sum+=a[i][2-i];则sum=21.

8、二维数组在内存中存贮时,是按行的顺序进行存储的。 9、C语言中引用数组元素的方括号可以用花括号代替.

10、每次调用函数时,都要对静态局部变量重新进行初始化.

11、在程序中的第二个函数之后定义了某全局变量,则该程序的所有函数均可使用它. 12、在C程序中 , 函数既可以嵌套定义 , 也可以嵌套调用 13、在定义宏时,在宏名与带参数的括弧之间不应加空格. 14、数组名与指针变量是相互等价的.

15、两个类型相同的结构体变量,可以互相赋值.

16、C语言中,在打开文件时,必须说明文件的使用方式,\用于打开一个不存在的文件. 三、

1、设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为_____.

2、在C语言中,long类型数据占_____个字节, short类型数据占_____个字节. 3、int x=2,y=3,z=4; 则表达式x+y>z&&y==z的值为_____. 4、int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____.

5、C语言中,二维数组在内存中的存放方式为按_____优先存放. 6、函数调用时的实参和形参之间的数据是单向的_____传递.

7、结构体是不同数据类型的数据集合,作为数据类型, 必须先说明结构体_____,再说明结构体变量.

8、调用 fopen 函数打开一文本文件,在\使用方式\这一项中, 为输入而打开需填入_____. 四、 1、/*-------------------------------------

----------- 【程序设计】

--------------------------------------------------

功能:求出二维数组外围元素之和,作为函数值返回。二

维数组的值在主函数中赋予。

-------------------------------------------------*/ #define M 4 #define N 5

#include \

int fun(int a[M][N]) {

/*********Begin**********/

/********** End **********/ }

main() {

int

a[M][N]={{1,3,5,7,9},{2,4,6,8,10},{2,3,4,5,6},{4,5,6,7,8}}; void TestFunc(); int y; y=fun(a); 2、

/*------------------------------------------------ 【程序设计】

--------------------------------------------------

功能:找出一个大于给定整数且紧随这个整数的素数,并

作为函数值返回。

------------------------------------------------*/

#include \

printf(\ TestFunc(); }

void TestFunc() {

FILE *IN,*OUT;

int iIN[M][N],iOUT; int i,j,k;

IN=fopen(\if(IN==NULL)

{printf(\Dir..It May Be Changed\}

OUT=fopen(\if(OUT==NULL)

{printf(\The Current Dir.. It May Be Changed\}

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

fscanf(IN,\

iOUT=fun(iIN);

fprintf(OUT,\}

fclose(IN); fclose(OUT); }

#include\

int fun(int n) {

/*********Begin**********/

/********** End **********/ }

void TestFunc() {

FILE *IN,*OUT; int s ; int t; int o;

IN=fopen(\ if(IN==NULL) {

printf(\ }

OUT=fopen(\ if(OUT==NULL) {

printf(\ }

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

五、 1、

/*------------------------------------------------------ 【程序改错】

--------------------------------------------------------

功能:一个5位数,判断它是不是回文数。即12321是回文数,个

位与万位相同,十位与千位相同。

------------------------------------------------------*/

#include \main( ) 2、

/*------------------------------------------------------ 【程序改错】

--------------------------------------------------------

功能:用下面的和式求圆周率的近似值。直到最后一项的绝对值

小于等于0.0001。

{

fscanf(IN,\ o=fun(t);

fprintf(OUT,\ }

fclose(IN); fclose(OUT); }

main() {

int m;

printf(\ scanf(\ printf(\result is %d\\n\fun(m)); TestFunc(); }

{

/**********ERROR**********/ long ge,shi,qian;wan,x; scanf(\

/**********ERROR**********/ wan=x000;

qian=x000/1000; shi=x0/10; ge=x;

/**********ERROR**********/ if (ge==wan||shi==qian)

printf(\ else

printf(\huiwen\\n\}

π/4= 1- 1/3 + 1/5 - 1/7 ....

------------------------------------------------------*/ #include \

/**********ERROR**********/ #include \

本文来源:https://www.bwwdw.com/article/saqt.html

Top