|
西南大学网络与继续教育学院课程考试试题卷
, @$ I. q- r+ C$ `- d5 x+ o5 Y" |, W
类别:网教 专业:计算机科学与技术,计算机应用技术,计算机教育 2016年6月5 A$ Y( W% j9 \! Q- A! c% R
课程名称【编号】: C语言程序设计 【0039】 A卷# X. ~/ L" v3 r$ x' P7 F; n
大作业 满分:100 分
4 v( d5 P C+ W( V1 r________________________________________1 ^/ B5 K9 C6 j6 i& s( [
" e( ~$ Q- [! o8 I/ h4 H
一、大作业题目
$ @4 }5 _ b3 x, [
7 B8 m0 ?$ g9 S. K( _1. 简要回答问题
; O9 P% ^# w8 I2 d(1)结构化程序设计的核心思想是什么?模块化程序设计中应该遵循的原则是什么?C语言是如何体现结构思想的?(12分)
; x' h1 ~( _2 s! f7 C+ c7 d(2)若有一个复杂问题的求解,若采用模块化程序设计方法,请你简单阐述用C语言编写一个模块化程序的基本过程。(6分)
' ^9 ~3 V* b; Y! g& |/ C- T(3)调试一个C语言程序的经历哪些步骤?调试程序过程有哪两类错误?如何排除这些错误?(9分)! i2 `" K2 H# R2 ]9 h
(4)在算法实现中,算法的正确性如何保证?(3分)
; D6 _7 _4 s: E+ x0 V) Q' `2.编程题
$ D* D/ n( r, l) m(1) 从键盘上任意输入10个正整数,并将这些整数的各位数字求和。
' C: D# c+ Q! b$ _& d, v1 p(2)编写程序打印下列图案3 f4 G* I3 \7 D" z' B. \$ H
o6 p) v; K# _2 }9 @
(3) 写一个函数实现两个字符串的复制,再写一个测试函数测试其功能。不允许使用strcpy函数
2 p3 L0 f+ f; w( h(4)编写程序计算sum=1+22+32+...+n2的值,其中n由键盘输入。
. y) Z( l( V, M0 Y$ M6 k(5)从键盘上任意输入20个3位或4位整数存放在a数组中,将其中的每个整数的低2位分离出来存放在数组b中,并对b数组的值按降序排列。* ]: L6 f' A3 P& |8 ]: J/ L9 Y
要求:
/ l; Q& M7 \1 [, \ S( \% `% y(a)程序中分别输出20个整数以及b数组排序前和排序的值。
* y0 J( `5 G6 {(b)要求用模块化方法实现。0 U- ^7 c7 }: d# v8 h
(c)程序必须有输入输出提示。
6 ^! n& E- L( h3.依据下列提供的程序回答问题1 T6 ]1 u, y9 Y' e# m
#include "stdio.h"
4 ? _7 q, O7 n9 c6 g% ]7 Jint fun(int num)
+ K+ ~$ Q) v1 x{int k=1;
4 {% n! c& O/ y. G7 b0 { do 9 }3 r4 e/ [2 C" m, Z% C t
{k*=num%10;
- ?5 r$ a& t. ~8 | num/=10;! P) S! X" G! k
}while(num);; b% Y; R- Z W( h) G
return k;6 Y( ]2 h$ n o. B, k
}
0 n& G7 w: }6 [7 A" w/ bvoid main()0 V1 \; ^& H4 t9 U* J8 u
{int x=651,y=123;
) d3 J+ l: ~9 V5 K6 P" r printf("%d,%d",fun(x),fun(y));
8 G: X/ A% Q* g! J2 w# w+ a}
* c+ f1 d, m- g- V% Q* l. a7 X$ A# K(1)上述提供程序中,函数fun的功能是什么?
! \, w' Z d7 o0 P(2)请依据提供的函数fun代码画出其中的传统流程图或N-S图。
, O. c0 L" W4 F& Q(3)在VC6.0环境下,运行上述程序时,其输出结果是什么?
' C3 x$ H) Y. T* j二、大作业要求
) @" c' F* ?* L大作业共需要完成3个大题:
8 L5 o! X: c+ z0 W第1题满分30分;
9 i, b, P% D4 N' i5 c7 |4 I- L第2题(1)-(4)小题任选两题完成,各15分,(5)小题必做, 10分,满分40分;
+ P o! r" [5 B& c第3题(1)-(3)必做,满分30分。# d% B- _& f) _
" \! v7 \7 [; a. y/ Q7 | |
|