湖南大学C语言程序设计试卷

合集下载

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计

期末考试试题及其答案

一、单项选择题(本大题共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>后(〈CR>表示回车),x的值是( ) 。

#include〈stdio.h〉

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<stdio。h>

int i=10,j=10;

printf(”%d,%d\n”,++i,j——);

湖南科技大学C语言程序设计题库及答案

湖南科技大学C语言程序设计题库及答案

湖南科技大学

C语言程序设计题库

(考试时间90分钟,总分100分)

准考证号:_________________________姓名:__________________________一、单项选择题(共20题,每题2分,共计40分)

()1、若变量已正确定义并赋值,表达式 -k++ 等价于________。

A、-(k++)

B、-(k+1)

C、-(++k)

D、(-k)++

【答案】A

()2、下列赋值语句错误的是________。

A、A

B、i==0;

C、i=i+1:

D、i+=1:

【答案】B

()3、有以下程序:

main()

{

int a=3,b=4,c=5,d=2;

if(a>b) if(b>c) printf("%d",d+++ 1);

else printf("%d",++d+1);

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

}

程序运行后的输出结果是 ______。

A、2

B、3

C、43

D、44

【答案】A

【解析】

本题考查嵌套if语句中else的配对。本题中else和第二个if即if(b>c)配对。由于a>b不成立,因此整个程序只输出printf("%d\n",d),即输出2。

()4、以下不正确的是 ______。

A、语句for(i=0:;i++)表示无限循环

B、for(; ;)表示无限循环

C、for()也表示无限循环

D、while(1)表示无限循环

【答案】C

()5、c语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为________。

A、该数组的长度

B、该数组的元素个数

C、该数组中各元素的值

D、该数组的首地址

近两年湖南大学829C语言考试部分题目

近两年湖南大学829C语言考试部分题目
部分即可。【注】若”%4d”,则输出占四个位, 213,前面有一个空格。
判断题
16. 递归调用可以直接或间接调用该函数本身 T 17. c 语言的源程序必须翻译为汇编语言后才能正常执行 F,应该是机器码(二
进制文件) 18. 数组中每一元素必须属于统一数据类型 T 19. C 语言中 break 语句只能结束本次循环,而不是终止整个的循环 F,应该是
31. 简述函数的参数传递时传值和传地址的区别:
829 部分考试题目
值传递: 主调函数传递给被调函数的是值的拷贝,不是原值,只是将变量的内容 复制一份而已,函数进行操作的其实是另一个变量,只是另一个变量的值和 传递的变量值是相同的。 地址传递: 主调函数传递给被调函数的是值的地址。直接把变量的地址传递给函数, 这时函数是直接对原来的变量进行操作的,所以值会变化。 区别: 值传递被调函数中的操作不改变主调函数的值,而地址传递则不同。 32. 简述#include<stdio.h>与#include”stdio.h”的区别 用尖括号 #include <>: 一般用于包含标准的库头文件,编译器会去系统配置的库环境变量和者 用户配置的路径去搜索,而不会在项目的当前目录去查找。 用双引号 #include "": 一般用于包含用户自己编写的头文件,编译器会先在项目的当前目录查 找,找不到后才会去系统配置的库环境变量和用户配置的路径去搜索。

湖大c语言机试题

湖大c语言机试题

1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。

2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。例如输入355和113,输出

3.14159。

3.用while循环结构编写程序打印ASCII码为33-127的字符。

4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。

5.用for循环结构编写程序打印ASCII码为33-127字符。

6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。

7.输入一个整数将其倒着输出,如54321——12345。

8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。

9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。

10.用 while 循环计算1+2+……+100的和。

11.用 do while循环计算1+2+……+100的和。

12.用 for 循环计算1+2+……+100的和。

13.输入一个小于等于10的整数n ,计算n!。

14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。

15.用循环语句,计算1~100之间的所有3的倍数之和。

16.用循环语句,计算100-200之间的所有7的倍数之和。

17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。

18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。

19.输入一个整数,统计它有几位数。如输入367,则该数有3位数。

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

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

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

《C语言程序设计》期末考试试卷参考答案

一、判断题(10分)

1、对

2、对

3、错

4、错

5、对

6、错

7、错

8、错

9、错10、错

二、填空题(30分,,1到10题1分1空,10到18题2分1空)

1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=100

10. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、5

14.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch

15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值

16.p=(int*)mallo(n);

17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);

三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))

1、A

2、B

3、C

4、B

5、D

6、A

7、A

8、B

9、C 10、A

四、程序阅读题(20分,每题4分)

1、 A C E G

2、 x=3 y=2

3、the two string are same:f

the two string are same:r

4、 K=8

5、1

《C语言程序设计》期末考试试卷及参考答案

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

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

C语⾔程序设计期末考试卷及答案

C 语⾔程序设计期末考试卷及答案

⼀、单项选择题。从A 、B 、C 、D 四个选项中,选择⼀个最佳答案填⼊括号内(每⼩题1分,共计30分)。 1.⼀个C 语⾔程序的执⾏是从()。 A )本程序⽂件的第⼀个函数开始,到

本程序⽂件的最后⼀个函数结束

B )本程序的main 函数开始,到main

函数结束

C )本程序的main 函数开始,到本程

序⽂件的最后⼀个函数结束

D )本程序⽂件的第⼀个函数开始,到

本程序的main 函数结束

2.下列选项中不属于...

C 语⾔关键字的

是()。

A )switch

B )printf

C

default D )case

3.设有语句inta=4;,则执⾏了语句

a+=a-=a*a;后,变量a 的值是()。

A )24

B )-24

C )4

D )16

4.已知inti;floatd;,则正确的表达

式是()。

A )(intd)

B )int(d)%i

C )(int)d%i

D )int(d%i) 5.已知

inti,a;,执⾏语句

i=(a=3*9,a/5),a+11;后,变量i 的值是()。 A )5 B )16

C )27

D )

38

6.下列选项中合法的字符型常量是()。

A )"a"

B )'\n'

C )

7.下⾯程序的运⾏结果是()。 #include voidmain() {intk=15;

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

}

A )k=15,k=15,k=15

B )k=15,k=17,k=17

C )k=15,k=017,k=0xf

(完整版)C语言程序设计试卷及参考答案

(完整版)C语言程序设计试卷及参考答案

《C语言程序设计》期末考试模拟试卷及参考答案(B)

2012.6.5整理

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

1、# include 〈stdio.h〉的结果是______

void main ( )

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

int s=0,i;

for (i=0;i〈3;i++)

s+=(*(a+i))[i];

printf("%d",s);

}

A.9 B。12 C.14 D。15

参考答案—D

2、设有说明语句:char a= ’\123abc';则变量a __________

A. 包含7个字符

B.包含6个字符 C。包含5个字符 D。包含4个字符

参考答案-D 3、有以下程序段

int k=0

while(k=1)k++;

while 循环执行的次数是_____

A。无限次B。有语法错,不能执行 C。一次也不执行D。执行1次

参考答案—A

4、在C语言中,_____。

A。函数定义可以嵌套,但函数调用不能嵌套 B。函数定义不可以嵌套,但函数调用可以嵌套C.函数定义和调用均不能嵌套 D.函数定义和调用均可以嵌套

参考答案—B 5、以下叙述正确的是________

A)do—while语句构成的循环不能用其它语句构成的循环代替.

B)do-while语句构成的循环只能用break语句退出。

C)用do—while语句构成的循环,在while后的表达式为非零时结束循环.

D)用do—while语句构成的循环,在while后的表达式为零时结束循环。

参考答案—D 6、以下关于函数叙述中,正确的是。

2014湖南大学c语言实验题目及其答案(4)

2014湖南大学c语言实验题目及其答案(4)
第四章 构造数据类型
一 目的和要求 1、掌握结构体类型说明和结构体类型变量、数组、指针的定义方法及使用。 2、学会引用结构体中的成员。 3、掌握利用指向结构体的指针成员构成链表的基本算法。 4、了解联合体类型和枚举类型的说明、其变量的定义及赋初值的方法。 5、了解联合类型变量中各成员的存储结构,学会引用各成员中的数据。 6、学习正确引用枚举类型常量,了解如何对枚举类型变量进行操作。
二 相关知识 1、结构型变量的定义和引用 构造类型是由相同或不同的数据类型组合而成。用户自己定义的一种用来存放类型 不同的数据的数据类型,称为结构型。 ⑴ 结构型的定义 struct <结构体名 > { 类型 1 成员名 1; 类型 2 成员名 2; … 类型 n 成员名 n; }; 结构型是一种数据类型,其中的成员不是变量,系统不会给成员分配内存。已经定 义的某种结构型可以作为一种数据类型,用来定义变量、数组、指针,这时才会给 定义的变量、数组、指针分配内存。 ⑵ 结构型变量的定义 有三种方法:先定义结构型,然后定义变量、数组;同时定义结构型和变量、数组; 定义无名称的结构型同时定义变量、数组。 ⑶ 结构型变量的引用 当某种结构型的变量、数组被定义后,对其只能使用其中的成员,常见的引用方法 如下: ① 结构型变量、数组元素成员的引用 结构型变量名 ?成员名 或 结构型数组名 [ 下标 ] ?成员名 ② 结构型变量、数组元素成员地址的引用 &结构型变量名 ?成员名 或 & 结构型数组名 [ 下标 ] ?成员名 ③ 结构型变量、数组元素地址的引用 &结构型变量名 或 &结构型数组名 [ 下标 ] 结构型数组首地址的引用: 结构型数组名

HNCE网上考试系统 C语言程序设计 选择题答案

HNCE网上考试系统  C语言程序设计 选择题答案

一、单项选择题(17道小题,共20分)

1、以下叙述中正确的是( C )。(1分)

A、C语言比其他语言高级

B、C语言可以不用编译就能被计算机识别执行

C、C语言以接近英语国家的自然语言和数学语言作为语言的表达形式

D、C语言出现的最晚,具有其他语言的一切优点

2、以下说法正确的是( C )。(1分)

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

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

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

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

3、下列可用于C语言用户标识符的一组是( B )。(1分)

A、void define WORD

B、a3_b3 _123 Car

C、For abc case

D、2a DO sizeof

4、设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是( C ) 。(1分)

A、2

B、-1

C、0

D、1

5、以下关于循环体的描述中,( C )是错误的。(2分)

A、循环体中可以出现break语句

B、循环体中还可以出现循环语句

C、循环体中不能出现continue语句

D、循环体中可以出现switch语句

6、While(x)中的x相当于( D )。(2分)

A、x==0

B、x==1

C、x!=1

D、x!=0

7、以下关于switch语句和break描述中, ( A) 是正确的。(2分)

A、在switch语句中,可以根据需要使用或不使用break语句

B、switch语句中必须用break语句

C、break语句只能用于switch语句

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计

期末考试试题及其答案

一、单项选择题(本大题共20题,每题2 分,共40分)

1、以下不是C语言的特点的是( B)

A、C语言简洁、紧凑

B、能够编制出功能复杂的程序

C、C语言可以直接对硬件进行操作

D、C语言移植性好

2、以下不正确的C语言标识符是(D )

A、ABC

B、abc

C、a_bc

D、ab.c

3、一个C语言程序是由(B )

A、一个主程序和若干子程序组成

B、函数组成

C、若干过程组成

D、若干子程序组成

4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是(B )

A、有零个或多个输入

B、有零个或多个输出

C、有穷性

D、可行性

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

A、int

B、float

C、double

D、不确定

6、在C语言中,char型数据在内存中的存储形式是(D )

A、补码

B、反码

C、源码

D、ASCII码

7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( B) 。

#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,则正确的赋值语句是(B )

A、a=1,b=2

B、b++;

C、a=b=5

D、b=int(x);

9、以下程序的执行结果是( A)

#include

{

int i=10,j=10;

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

}

A、11,10

(完整版)C语言程序设计试卷及参考答案

(完整版)C语言程序设计试卷及参考答案

《C语言程序设计》期末考试模拟试卷及参考答案(B)

2012.6.5整理

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

1、# include 的结果是______

void main ( )

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

int s=0,i;

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

s+=(*(a+i))[i];

printf("%d",s);

}

A.9

B.12

C.14

D.15

参考答案—D

2、设有说明语句:char a= '\123abc';则变量a __________

A. 包含7个字符

B.包含6个字符

C. 包含5个字符

D. 包含4个字符

参考答案—D

3、有以下程序段

int k=0

while(k=1)k++;

while 循环执行的次数是_____

A. 无限次

B.有语法错,不能执行

C. 一次也不执行

D. 执行1次

参考答案—A

4、在C语言中,_____。

A.函数定义可以嵌套,但函数调用不能嵌套

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

C.函数定义和调用均不能嵌套

D.函数定义和调用均可以嵌套

参考答案—B 5、以下叙述正确的是________

A)do-while语句构成的循环不能用其它语句构成的循环代替。

B)do-while语句构成的循环只能用break语句退出。

C)用do-while语句构成的循环,在while后的表达式为非零时结束循环。

D)用do-while语句构成的循环,在while后的表达式为零时结束循环。

参考答案—D

6、以下关于函数叙述中,正确的是。

A.在函数体中可以直接引用另一个函数中声明为static类别的局部变量的值

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计

期末考试试题及其答案

一、单项选择题(本大题共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>后(<CR>表示回车),x的值是( ) 。

#include<stdio.h>

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<stdio.h>

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

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

模拟试卷一

(时间90分钟,满分100分)

一、选择题(1~10、21—40每小题2分,11~20每小题1分,共70分)

1.下列叙述中正确的是( )。

A.栈是“先进先出”的线性表

B.队列是“先进先出”的线性表

C.循环队列是非线性结构

D.有序链表既可以采用顺序存储结构,也可以采用链式存储结构

2.支持子程序调用的数据结构是( )。

A.栈B.树C.队列D.二叉树

3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。

A. 10 B.8 C.6 D.4

4.下列排序方法中,最坏情况下比较次数最少的是( )。

A.冒泡排序B.简单选择排序

C.直接插入排序D.堆排序

5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。

A.编译软件B.操作系统

C.教务管理系统D.汇编程序

6.下面叙述中错误的是( )。

A.软件测试的目的是发现错误并改正错误

B.对被调试的程序进行“错误定位”是程序调试的必要步骤

C.程序调试通常也称为Debug

D.软件测试应严格执行测试计划,排除测试的随意性

7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )。

A.提高耦合性降低内聚性有利于提高模块的独立性

B.降低耦合性提高内聚性有利于提高模块的独立性

C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度

D.内聚性是指模块间互相连接的紧密程度

8.数据库应用系统中的核心问题是( )。

A.数据库设计B.数据库系统设计

C.数据库维护 D.数据库管理员培动

9.有两个关系R,S如下:

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计

期末考试试题及其答案

一、单项选择题〔本大题共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>后〔<CR>表示回车〕,x的值是( ) 。

#include<stdio.h>

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<stdio.h>

{

int i=10,j=10;

湖大C语言程序设计期末试卷 含答案

湖大C语言程序设计期末试卷 含答案
考试中心填写: 年月日
考试用
湖南大学课程考试试卷
课程名称:C 语言程序设计 ;试卷编号:( ) ;考试时间:120 分钟
题号 一 二 三 四 五 六 七 八 九 十 应得分 10 10 20 20 20 20 实得分
总分 100 评分:
评卷人
专业班级:
学号:
一、选择题(每题 2 分,共 10 分)
1.以下叙述中正确的是( )
z=x+y; return(z); }
process(
)
{
}
第 6 页(共 6 页)
考试中心填写: 年月日
考试用
湖南大学课程考试答题纸
课程名称:C 语言程序设计 ;试卷编号:( ) ;考试时间:120 分钟
题号 一 二 三 四 五 六 七 八 九 十 应得分 10 10 20 20 20 20 实得分

C) scanf(“%d,%d,%d”,&i,&j,&k);


D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);
线 4.若 x 为 unsigned int 型变量,则执行下列语句后 x 值为(


x = 65535;
printf(“%d\n”,x);
A)65535
B)1

湘大C程序设计题库答案(3套)

湘大C程序设计题库答案(3套)
double sum = 0.0; int c = 0, i = 0; /***********FOUND***********/ while(x[i]==0) {
if(x[i]<0) {
sum=sum+x[i]; c++; } i++; } /***********FOUND***********/ sum=sum\c; return sum; } int main() { int x[1000]; int i=0;
x[i]=rand()%50; printf("%4d",x[i]); /*输出一个随机数组*/ } printf("\n"); fun(x,n,&max,&index); printf("Max=%5d,Index=%4d\n",max,index);
wwjt (); } void wwjt() {
功能:编写函数求 2!+4!+6!+8!+10+12!+14!。
------------------------------------------------------*/
#include <stdio.h>
long sum(int n) {
/**********FOUND**********/ int i,j long t,s=0; /**********FOUND**********/ for(i=2;i<=n;i++) {
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第 1 页(共 6 页)

三、写出程序运行结果(每题 5 分,共20分)

1.main()

{ int a=15,b=21,m=0;

switch(a%3)

{ case 0:m++;break;

case 1:m++;

switch(b%2)

{ default:m++;

case 0:m++;break;

}

}

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

}

程序运行后的输出结果是:

2.float fun(int x, int y)

{return (x+y);}

main()

{ int a=2,b=5,c=8;

printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}

程序运行后的输出结果是:

3.void fun(char *c,int d)

{ *c=*c+1;d=d+1;

printf("%c,%c,",*c,d);

}

main()

{ char a='A',b='a';

fun(&b,a); printf("%c,%c\n",a,b);

}

程序运行后的输出结果是:

4.struct stu

{ char num[10]; float score[3]; };

main()

{ struct stu s[3]={{"20021",90,95,85},

{"20022",95,80,75},

{"20023",100,95,90}},*p=s;

int i; float sum=0;

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

sum=sum+p->score[i];

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

}

程序运行后的输出结果是:

第 2 页(共 6 页)

四、程序改错(每题5分,共20分)

1.以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main()

{ int n,k;

float score ,sum,ave;

sum=0.0;

for(n=1;n<=10;n++)

{ for(k=1;k<=4;k++)

{ scanf("%f",&score); sum+=score;}

ave=sum/4.0;

printf("NO%d:%f\n",n,ave);

}

}

上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是哪条?并将其移到正确的位置。

2.以下函数的功能是计算s=1+1/2+1/3+……+1/n,程序运行后结果不正确,错误的语句是哪条?并改之。

main()

{float s=0.0;

int i;

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

s=s+1/i;

printf("%f",s);

}

3.以下函数的功能是:输出有10个元素的整型数组a的元素值。程序运行后结果不正确,只增加一条语句使其完成要求功能。

main( )

{ int a[10], *p=a , i;

for ( i=0; i<10; i++) scanf("%d",p++);

printf("\n");

for ( i=0; i<10; i++, p++) printf("%d ",*p);

}

4.以下函数的功能是:打印1到5的阶乘值。程序运行后结果不正确,只修改一条语句使其完成要求功能。

int fac(n)

int n;

{ int f =1;

f = f n ;

return( f );

}

main( )

{ int i;

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

printf(“%d!=%d\n”, i, fac(i));

}

第 3页(共6页)

五、程序填空(在【】中填空,每题5 分,共20分)

1.fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。

#include

#define N 4

int fun(int(*a)[N])

{ int row,col,max,min;

for(row=0;row

{ for(max=a[row][0],col=1;col

if(【】) max=a[row][col];

if( row==0) min=max;

else if(【】) min=max;

}

return min;

}

2.函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,

返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{ while(*s&&*t&&(*s-*t)【】)

{ s++;t++;}

return 【】

}

3.下面的程序是用指针来交换两个数据,请将缺省语句填上。

void exchange( int *p ,int *q)

{ int t;

t=*p; *p=*q; *q=t;

}

main()

{ int a,b,*x,*y;

a=10;b=20;

x=&a;【】

【】

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

}

4.下面的程序是将字符串a按反向存入字符串b中并输出。(如:串a为"12345",则串b为"54321")

main()

{ char *a={"abcdefg"},b[80],*p=b;

int n,m,k;

k=strlen(a);

n=k-1;

m=0;

while (n>=0)

相关文档
最新文档