产品设计程序与方法期末考试试卷(产品设计期末作业)

程序设计 922
今天给各位分享产品设计程序与方法期末考试试卷的知识,其中也会对产品设计期末作业进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、专科c语言程序设计与实训期末考什么

今天给各位分享产品设计程序与方法期末考试试卷的知识,其中也会对产品设计期末作业进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

专科c语言程序设计与实训期末考什么

1. 填空 1.在类中必须声明成员函数的 引用 3. 或 类型或 抽象 类型 指针 原型 类型。 个数 ,成员函数的 实现 部分可以写在

2. 阅读下列程序,写出其运行时的输出结果如果程序运行时会出现错误,请简要描述错误 1.请在以下两题中任选一题,该题得分即为本小题得分。如两

3. 阅读下列程序及说明和注释信息,在方框中填写适当的程序段,使程序完成指定的功 能 程序功能说明:从键盘读入两个分别按由小到大次序排列的整数序列,

求大一C++期末考试试卷,感激不尽!!!

(一)选择题(共10题,每题1分,共10分)

1. 以下不属于程序设计三要素的内容是: 。

A. 算法 B. 语言 C. 环境 D. 应用

2. 以下描述中,包含了5个典型的计算机硬件结构部分的内容是: 。

A.CPU、硬盘、主存 B. CPU、存储器、I/O设备

C. 存储器、I/O设备、系统总线 D. CPU、存储器、系统总线

3. 以下不同数制表示的数中最小的数值是: 。

A. 二进制11011111 B. 十六进制DF

C.十进制217 D. 八进制337

4. 设一个栈的输入元素序列为a1,a2,a3,a4,输入过程中允许出栈,规定每个元素入栈、出栈只能各一次,则所得到的输出元素序列,不可能出现的是 。

A. a1,a2,a3,a4 B. a4,a3,a2,a1

C.a1,a3,a4,a2 D. a4,a1,a2,a3

5.在计算机中表示一个浮点数, 下面说法不正确的是 。

A. 尾数反映浮点数的精度,阶反映浮点数后表示范围

B. 尾数表示数的有效数字,阶表示数中小数点的位置

C. 尾数为二进制定点纯整数,阶为二进制定点纯小数

D. 浮点数由尾数和阶两部分组成

6.十进制数 -27,用8位二进制数表示的原码和补码为 。

A. 11011111、10011011 B. 10011011、11100101

C. 00011011、00011011 D. 10011011、10011011

7. 微型计算机的内存储器是 。

A. 按二进制位编址 B. 按字节编址

C. 按字长编址 D. 根据微处理器型号不同而编址不同

8. 根据计算机执行一条指令过程的基本步骤,下面选择正确的是 。

① 分析指令 ② 取下一条指令 ③ 执行指令

④ 取指令 ⑤ 执行过程结束

A. ①②③④⑤ B. ①③②⑤ C.②③④① D. ④①③②

9. 有一个数值152,它与十六进制数6A相等,那么该数值是 。

A. 二进制数 B. 八进制数 C. 十进制数 D. 四进制数

10.微型计算机总线上的信号有 。

A. 控制信号、数据信号 B. 地址信号、控制信号

C. 数据信号、地址信号、控制信号 D. 二进制信号

(二)填空题(共10题,每题1分,共10分)

1. 64K的内存空间需要 条地址线,其最大地址为 H。

2. 最主要和最基本的三种逻辑运算为逻辑非 、 、 。

3. 常用的排序算法包括 、 。

4. 从一组给定的数据中找出所需的数据的过程称为 。将问题的候选解按某种顺序逐一枚举和检验,若发现当前的候选解不可能是最终解时,就放弃它而选下一个候选解的过程称为 。

5. 有一数组a长度为11,其中前10个元素已按升序排序。输入一个数,要求按顺序放入数组中,请在下面N-S图的@和#处填写相应的语句。

输入待插入的数值 → number

numbera[9]

T F

for( i=0; i10; i++)

#

T F

@ 将a[9]到a[i]元素顺

序向后移动一个位置

number → a[i]

输 出 结 果

#:

@:

二.Visual C++程序设计语言部分(共计80分)

(三)选择题(每题1.5分,计15分)

1.设整型变量a的值是1,则C++条件表达式2 = a 3的值是 。

A:1 B:0 C:不确定 D:非法的表达式

2.设有枚举类型定义:

enum Drinking{cola, coffee = 4, tea, water = 0};

则枚举量tea的值是 。

A:3 B:2 C:5 D:-1

3. 定义下列函数max实现比较3个整数中最大的一个,并返回该最大值:

int max(int a, int b, int c)

{

int t = 0;

t = a b ? a : b c ? t : c;

return t;

}

则执行下列语句,int r = max(2, 9, 8); 变量r的值是 。

A:9 B:8 C:2 D:0

4.下列关于成员函数特性的描述中, 是不正确的。

A:成员函数可以重载

B:成员函数一定为内联函数

C:成员函数可以是静态的

D:成员函数可以设置参数的默认值

5.在while(a)中,a与下列哪个条件表达式等价

A:a == 0 B:a != 0 C:a == 1 D:a != 1

6.执行下列程序段的输出是 。

for(int i = 1; i 6; i++){

if(i%3 == 0) break;

couti"\t";

}

A:1 2 3 4 5 B:1 2 4 5 C:1 2 D:3

7.浮点型变量f当前值是19.5,则执行下列语句后f的值是 。

float f = 19.5;

int n = int(f);

A:20 B:19.5 C:19 D:20.0

8.设有函数声明

double function(double a, double b);

定义变量

double x, y;

则下面对函数正确的调用是 。

A:function(x, 1.0) B:function(x, y)

C:function(1.0, x) D:function(x, 1.0+y)

9.以下哪些函数可以构成重载函数 。

(1). int function(int a, int b, int c);

(2). double function(int a, int b, double c);

(3). int function(int a, int b);

(4). double function(int a, int b, int c);

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

10.有关类的说法不正确的是 。

A:类是一种用户自定义的数据类型

B:只有类中的成员函数才能直接存取本类中的私有数据

C:类的构造函数与析构函数均可以重载

D:类的成员函数可以是重载函数,或者是有缺省参数的函数

(四)填空题(每题1.5分,计15分)

1.整型变量n的当前值是17,执行以下switch语句后n的值是 。

switch(n){

case 16: ++n;

case 17: n += 2;

case 18: ++n;

default: n++;

}

2.已知小写字母a的ASCII码值是97,则下列语句执行后输出是 。

char c = 102;

coutc;

3.若有下列程序,则程序运行后的输出是 。

#includeiostream

using namespace std;

int main()

{

int i = 0;

do{

couti", ";

} while(i++ 5);

couti;

return 0;

}

4.定义以下字符数组,则该数组的长度是 。

char szName[ ] = "mySEU";

5.若有下列程序,则程序运行后的输出是 。

#includeiostream

using namespace std;

void f(int n);

int main()

{

f(789);

return 0;

}

void f(int n)

{

if(n = 10)

f(n/10);

coutn%10;

}

6.下列语句执行后整型变量nCode的值是 。

int nCode = 0xAC;

nCode = 0x8;

nCode = 3;

7.类是对具有共同属性和行为的一类事物的抽象描述,共同属性被描述为类中的成员数据,共同行为被描述为类中的 。

8.下列语句执行后整型变量nCount的值是 。

int nCount = 0;

for(int j = 0; j 6, nCount++; j++)

nCount++;

9.全局与静态变量在程序运行时自动初始化为0;下列语句的本意是求出1~10共10个数的和,但结果却不对,其原因是 。

int sum;

for(int i =1; I = 10; i++)

sum = sum + i;

10. 运算符重载的两种形式:作为类的成员函数,以及 。

(五)阅读程序并填空(每空1-3分,共25分)

1. 写出下列程序的执行结果

#include iostream

using namespace std;

void fun(int a,int b)

{

int p; p=a; a=b; b=p;

}

void exchange(int a,int b,int c)

{

if(ab) fun(a,b);

if(ac) fun(a,c);

if(bc) fun(b,c);

}

int main()

{

int a,b,c;

a=94; b=16; c=178;

cout"First:" '\t'"a="a",b="b",c="cendl;

exchange(a,b,c);

cout"Second:" '\t'"a="a",b="b",c="cendl;

return 0;

}

(1) (1分)

(2) (3 分)

2. 阅读下列程序

#include iostream

using namespace std;

int main()

{

int x=9,n=8,y,i;

for(i=0;in;i++) x/=3;

y=1+x;

i=0;

do{

y*=2;

i++;

}while(i=n);

cout"y="yendl;

return 0;

}

(3)y的表达式为: (3分)

(4)程序的运行结果为: (2分)

3. 设输入的5个整数是:32 64 53 87 54。

#includeiostream

using namespace std;

int main()

{

int a,b,c,x;

a=b=c=0;

cout"Input 5 integers:"endl;

for(int i=0;i5;i++)

{

cinx;

switch(x%3)

{

case 0:a+=x;break;

case 1:b+=x;break;

case 2:c+=x;break;

}

}

couta';'b';'cendl;

return 0;

}

程序运行时屏幕输出为:

(5) (1分)

(6) (1分)

(7) (3分)

4. 阅读下列程序

#include iostream

using namespace std;

int add(double , double);

double a;

int main()

{

const int n=5;

int num,i;

double d[n]={7.2,5.7,6.0,4.2,9.9};

for(i=0;in;i++)

if (d[i]=6) num=add(a,d[i]);

a/=num;

cout"The average is:"a'\n'"The number is:"numendl;

return 0;

}

int add(double a,double d){

static int c;

a+=d;

c++;

return c;

}

程序的运行结果为:

(8) (2分)

(9) (3分)

5. 阅读下列程序

#includeiostream

using namespace std;

class MyTestClass

{

private:

int NumA;

public:

MyTestClass(int a)

{

couta'\t'"is Constructor."endl;

NumA=a;

}

MyTestClass(MyTestClass b)

{

cout"Copy Constructor."endl;

NumA=b.NumA;

}

void Print()

{

cout"The private data is: NumA="NumAendl;

}

~MyTestClass()

{

coutNumA'\t'"is Destructor."endl;

}

};

int main()

{

MyTestClass Myclass1(5), Myclass2(Myclass1);

Myclass2.Print();

return 0;

}

程序的运行结果为:

(10) (1分)

(11) (2分)

(12) (1分)

(13) (1分)

(14) (2分)

(六)完善程序题(共25分)

1、编写程序求π的值(每空2分,共6分。)

其中arctan( )用如右形式的级数计算:

计算直到级数某项绝对值不大于10-15为止;π和 x 均为double型。

#includeiostream

using namespace std;

double arctan( double x ) ; //函数原型声明

int main( )

{

double a, b;

a = ; //注意:整数相除结果将会取整!

b = …… ; //此处略,b将计算出 的值

cout "PI=" a-b endl;

return 0;

}

double arctan( double x )

{

int i , sign = 1;

double sum, e, f, sqr;

sum = 0; e = x; i = 1 ;

while ( ) //终止条件

{

f = e / i ;

sum += sign * f ;

e = ; //递推公式

sign *= -1;

i += 2;

}

return sum ;

}

2、输入一个8位二进制数,将其转换为十进制数输出。(每空2分,共4分。)

#includeiostream

using namespace std;

const int n = 8 ; //输入数据的位数

int main( )

{

char bin[ n]; //用来放输入的数据,数据的每一位以字符方式存放

int x = 2 ; //x表示几进制,此时处理的是二进制

int a, dec, i ;

cout "输入二进制序列:" endl ;

for( i = n-1; i = 0; i-- )

; //输入的是字符,且先输入的是二进制数的高位

dec = 0 ;

for( i = n-1; i = 0; i-- )

{

a = ; //字符转换为数字,例如’1’1,’0’0

dec = dec*x + a ;

}

cout "转换为十进制,值为:" dec endl;

return 0;

}

3、用递归算法实现正整数的倒序输出。(每空2分,共4分。)

#includeiostream

using namespace std;

void backward( int x )

{ /* 这个数非0时,倒序输出总是先输出最后一位,然后在剩下的数中进行同样思路的倒序输出 */

if ( x0 )

{ ;

;

}

}

int main( )

{

int n;

cout “输入正整数:" endl; cin n;

cout “原整数” n “倒序输出为:";

backward ( n ) ;

cout endl ;

return 0;

}

4、定义复数类,可完成复数基本运算,并应用它进行复数运算。(共11分。)

#include iostream

#include cmath

using namespace std;

class Complex{

double Real, Image ; //复数的实部和虚部

public:

Complex ( double r = 0.0, double i = 0.0 ) //定义构造函数

{ } (1.5分)

Complex ( Complex com ) //定义复制构造函数

{ } (1.5分)

void Print( )

{ cout "Real=" Real '\t' "Image=" Image '\n' ; }

Complex operator+ ( Complex );

//Complex operator+ ( double );

Complex operator= ( Complex );

Complex operator+= ( Complex );

//double abs(void);

//Complex operator* ( Complex );

//Complex operator/ ( Complex );

};

Complex Complex::operator+ ( Complex c)

{

Complex Temp( ) ;//显式说明局部对象(此空2分)

return Temp ;

}

Complex Complex::operator+= (Complex c)

{

Complex temp;//定义temp为了返回Complex类的值,使+=可以连续使用

temp.Real = ; (1.5分)

temp.Image = ; (1.5分)

Real = ; (1.5分)

Image = ; (1.5分)

return temp;

}

Complex Complex::operator= ( Complex c )

{// 此处略 ……

}

int main(void){

Complex c1( 1.0, 1.0 ) , c2(2.0, 2.0) , c3(4.0, 4.0) , c;

c1.Print( );

c = c2 + c3 ; //将调用运算符‘+’的重载函数,运算符‘=’的重载函数

c.Print( );

c += c1 ; //将调用运算符‘+=’的重载函数

c.Print( );

return 0;

}

笔试模拟题答案

一.大学计算机基础部分

1. 选择题 (共10题,每题1分,共10分)

A、B、C、D、C、B、B、D、B、C

2. 填空题 (共5题,每题2分,共10分)

(1)16,FFFF (2)逻辑与、逻辑或

(3)冒泡排序 、 选择排序 或交换排序 (4)查找 回溯

(5)# : a[i]number 或 numbera[i]

或 a[i]=number 或 number=a[i]

@: number → a[10]

二.C++程序设计部分(共计80分)

(三)选择题(每题1.5分,计15分)

A、C、D、B、B、 C、B、B、C、C

(四)填空题(每题1.5分,计15分)

(1)21; (2)f; (3)0, 1, 2, 3, 4, 5, 6; (4)6; (5)789;

(6)1; (7)成员函数; (8)1;(9)局部变量sum未初始化;

(10)友元函数

(五)阅读程序并填空(每空1-3分,共25分)

1. (1)First: a=94,b=16,c=178 (1分)

(2)Second: a=178,b=94,c=16 (3 分)

2. (3) 或 (3 分)

(4) y=512 (2分)

3. (5) Input 5 integers: (1 分)

(6) 32 64 53 87 54 (1 分)

(7) 141;64;85 (3 分)

4. (8) The average is:7.7 (2 分)

(9) The number is:3 (3 分)

5. (10) 10 is Constructor. (1 分) (11) Copy Constructor. (2 分)

(12) The private data is: NumA=10 (1 分)

(13) 10 is Destructor. (1 分)

(14) 10 is Destructor. (2 分)

(六)完善程序题(共25分)

1、编写程序求π的值(每空2分,共6分)

(1) 16.0 * arctan( 1/5.0 ) ;

(2) e / i (1e-15 )

(3) e*x*x ;

2、输入一个8位二进制数,将其转换为十进制数输出。(每空2分,共4分)

(4) cin.get( bin[ i ] ) ; 或cin bin[ i ]; 或bin[ i ] = cin.get( );

(5) bin[i] - '0' ;

3、用递归算法实现正整数的倒序输出。(每空2分,共4分)

(6) cout x%10 ‘\t’ ;

(7) backward( x/10 ) ;

4、定义复数类,并应用它进行复数运算。(共11分)

(8) Real = r; Image = i; (1.5分)

(9) Real = com.Real ; Image = com.Image ; (1.5分)

(10) Real+c.Real , Image+c.Image ) ; (此空2分)

(11) Real + c.Real ; (1.5分)

(12) Image + c.Image ; (1.5分)

(13) temp.Real ; (1.5分)

(14) temp.Image ; (1.5分)

题型设计的产品是试题和试卷吗

题型设计的产品是试题和试卷。根据查询相关公开信息显示,题型设计工作可分为两部分:试卷整体设计和试题单题设计,设计的程序是整卷—单题—整卷,并且需经多次循环,题型设计效果的好坏,以试题和试卷的使用结果进行评判。

求一张C语言的期末考试卷,我是大一的新生,想看看试卷的大概格式和内容。

本试卷共8页,共5大题,考生在作答前应先检查是否有缺页、白页,以防漏答。答题前,请先填写学号、姓名、专业及班级。

一、单项选择题(共10题,每题2分,共20分。在备选答案中选择一个最佳答案。多选、错选、不选不得分)

1、不是C语言基本数据类型的是( )。

A、指针类型 B、整型

C、字符型 D、实型

2、设有:int a=3, b= 4, c= 5,x , y; 表达式0 (x=a)(y=b)的值为( )。

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

3、设有语句 int a=3 ; 则执行了语句 a+=6;后,变量a 的值为( )。

A、18 B、-3 C、9 D、12

4、执行以下程序段后,输出的y值为( )

void main()

{ int a[]={2,4,6,8,10};

int y, *p;

p=a[0];

y=*p; printf(“%d”,y);

}

A、2 B、4 C、6 D、8

5、有定义语句:float a[4];则分配给数组a的内存空间为( )字节。

A、 20 B、 12 C、 16 C、10

6、以下描述错误的是( )。

A、break语句可用于while语句。

B、break语句和continue语句的作用是一样的。

C、在循环语句中使用break语句是为了跳出循环,提前结束循环。

D、在循环语句中使用continue语句是为了结束本次循环,而不终止整个循环。

7、C语言中规定,if语句的嵌套结构中,else总是( )。

A、与最近的if 配对 B、与第一个if 配对

C、按缩进位置相同的if配对 D、与最近的且尚未配对的if 配对

8、说明语句“int (*p)( ); ”的含义是( ) 。

A、p是一个指向一维数组的指针变量。

B、p是指针变量,指向一个整型数据。

C、p是一个指向函数的指针,该函数返回一个int型数据。

D、以上都不对。

9、以下对二维数组c的正确声明是 ( ) 。

A、int c[3][ ]; B、int c(3,4);

C、int c(2)(2); D、int c[3][2];

10、下述程序段执行后输出结果为( )。

int x=100, y=200;

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

A、100 B、200 C、100,200 D、编译出错

二、填空题(共7题,共10空,每空1分,共10分。将答案填在题中横线上)

1、C语言提供的三种逻辑运算符是 、 || 和!;

2、函数的返回值是通过函数中的 return 语句获得的。

3、在"int a[ ][3]={{1},{3,2},{4,5,6},{0}};"定义后,a[2][2]的值为_6__ _;

4、对于"int *pa[5];" pa是一个具有5个元素的_数组指针_,每个元素是一个指向int型变量的__指针__;

5、单向链表的尾节点next指针应赋值__ NULL___;

6、在语句for(x=1,y=3;xy;y++)中循环体执行的次数为 0 。

7、int a[5];数组a的首地址为2000,则元素a[1]的地址为 2002 ,元素a[2]的地址为 2004 。

三、程序填空题(共2题,共5空,每空4分,共20分)

1、以下程序完成计算1-1/2+1/3-1/4+1/5+……前n 项和,请填空。

#include stdio.h

int main( )

{ int i, n, flag;

float sum;

scanf("%d", n);

flag= 1 ;

sum=0;

for(i=1;i=n; i++ )

{ sum+=(float)flag/i;

flag=-flag ;

}

printf("%.3f\n", sum);

}

2、以下程序的功能是从键盘输入n个整数,统计其中正数、0、负数的个数,请填空。

#include stdio.h

void main( )

{int a, i, count1,count2,count3;

count1=count2=count3=0 ;

for(i=1;i=n;i++)

{ scanf(“%d”, a);

if(a0) count1++;

else if(a==0) count2++ ;

else count3++;

}

printf(“正数:d个,零:%d个,负数:%d个\n”, count1,count2,count3 );

}

四、运行程序结果题(共4题,每题6分,共24分)

1、写出程序运行结果。

void main( )

{ int x=1,y=2,t;

int *p1,*p2;

p1=x; p2=y;

t=*p1;*p1=*p2;*p2=t;

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

}

运行结果为:

程序有错,不能运行!或写:

x=2,y=1

2、写出程序运行结果。

#includestdio.h

int max(int a,int b)

{ int c;

c=ab?a:b;

return(c);

}

int min(int a,int b)

{int c;

c=ab?a:b;

return(c);

}

void main()

{ int a=2,b=6;

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

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

}

运行结果为:

程序有错,不能运行!或写:

max=6

min=2

3、写出程序运行结果。

#include stdio.h

void main()

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

int i,j,sum=0;

for (i=0;i3;i++)

for(j=0;j3;j++)

if(i==j) sum=sum+a[i][j];

printf(“sum=%d\n”,sum);

}

运行结果为:

程序有错,不能运行!或写:

sum=15

4、写出程序运行结果。

void main( )

{ int n,f;

n=1;

while(n=10)

{ f=f*n;

n+=2;

}

printf(“f=%d\n”,f);

}

运行结果为:

程序有错,不能运行!或写:

f=不确定

五、程序设计题(共2题,每题13分,共26分)

1、将一个数组按逆序存放,如元素1、2、3、4、5,按逆序存放后为5、4、3、2、1。

2、求出1!+2!+3!+…+8!的和并输出。

#includestdio.h

float fact(int n)

{ float f;

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

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

return(f);

}

void main( )

{float sum;

int i;

sum=0;

for(i=1;i=8;i++)

sum+=fact(i);

printf("sum=%f\n",sum);

}

求一份C语言程序设计的期末考试试题!!!谢谢了

一. 选择题 (共15题, 每题2分,共30分)

1. 定义结构体的关键字是( )

A. union B. enum C.struct D.typedef

2. 设整型变量a为5,使b不为2的表达式是( )

A. b=a/2 B. b=6-(--a) C. b=a%2 D. b=a3?2:1

3. 下面哪一项是不正确的字符串赋值或赋初值的方法( )

A. char *str; str= “china”;

B. char str[7]= {‘c’, ‘h’, ‘i’, ‘n’, ‘a’};

C. char str1[]= “china”,str2[]=“123”;

D. char str1[10]; str1= “china”;

4. 以下对二维数组a进行正确初始化的是( )

A. int a[2][3]={{1,2},{3,4},{5,6}}; B. int a[ ][3]={1,2,3,4,5,6};

C. int a[2][ ]={1,2,3,4,5,6}; D. int a[2][ ]={{1,2},{3,4}};

5. 选出下列标识符中不是合法的标识符的是( )

A. hot_do B. cat1 C. _pri D. 2ab

6. 以下说法中正确的是( )

A. C语言程序总是从第一个的函数开始执行

B. 在C语言程序中,要调用的函数必须在main()函数中定义

C. C语言程序总是从main()函数开始执行

D. C语言程序中的main()函数必须放在程序的开始部分

7. 若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )

A. p+1 B. a+1 C. a++ D. ++p

8. 若有说明: int i,j=7, *p=i;, 则与i=j; 等价的语句是( )

A. i= *p; B. *p=*j; C. i=j; D. i=* *p;

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

A. ‘a’=c= ‘z’ B. (c= ‘a’) || (c= ‘z’)

C. (‘a’=c) and (‘z’=c) D. (c= ‘a’) (c= ‘z’)

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

main()

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

p=a;

*(p+3)+=2;

printf( “%d,%d\n”,*p,*(p+3) ); }

A. 0, 5 B. 1, 6 C. 1, 5 D. 0, 6

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

main()

{ int a=5;

float x=3.14;

a*=x*(‘E’- ‘A’);

printf(“%f\n”,(float)a); }

A. 62.000000 B. 62.800000 C. 63.000000 D. 62

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

#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

13. 定义如下变量和数组:int i; int x[3][3]={1,2,3,4,5,6,7,8,9};

则语句for(i=0;i3;i++) printf("%d ",x[i][2-i]); 的输出结果是( )

A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9

14. 下列程序段的输出结果是 ( )

void main( )

{ int k;

for (k=1;k5;k++)

{ if(k%2!=0)

printf( “#” );

else

printf(“*”) ; }

}

A. #*#* B . *#*# C. ## D. **

15. 下列程序执行后输出的结果是( )

int d=1;

fun (int p)

{ int d=5;

d + =p + +;

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

main( )

{ int a=3;

fun(a);

d + = a + +;

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

A. 8, 4 B. 9, 6 C. 9, 4 D. 8, 5

二. 填空题(共7题,每空2分,共30分)

1. 数组 int a[3][5]; 共定义了_______________个元素。

2. 有float f=3.1415927; 则 printf(“%5.4f”, f );输出的结果是_______________。

3. 下面程序的功能是:输出 100以内(不包含100)能被 3整除且个位数为 6的所有整数,请填空。

main( )

{ int i;

for(i=1; _______________; i++)

if (_______________)

printf("%d", i);

}

4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是 _______________

5. 以下是使用指针,进行字符串复制的程序,请填空。

main()

{ char a[]= “Tsinghua University”, b[30], *p1,*p2;

p1=a;

p2=b;

for(; *p1!= ‘_______________’; p1++, p2++)

_______________=_______________;

*p2= ‘_______________’;

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;i4;i++)

for(j=0;j_______________;j++)

if( _______________ _______________ )

{ m=a[ j];

a[ j]=a[ j+1];

a[ j+1]= m; }

for(i=0;i5;i++)

printf("%d ",a[i]);

}

7. 函数fun的功能是:使一个字符串按逆序存放,请填空。

void fun (char str[])

{ char m; int i,j;

for(i=0,j=strlen(str);i_______________;i++,j--)

{ m=str[i];

str[i]= _______________;

str[j-1]=m;

}

printf("the rotated string is %s\n",_______________);

}

关于产品设计程序与方法期末考试试卷和产品设计期末作业的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

扫码二维码