|
一、大作业题目+ X7 A' J" `1 I/ C: x% Z
1.简述题(共30分)* s- x/ i2 n1 U5 p+ E' t
(1)“构建程序设计的思想和方法、提升阅读程序能力和编写程序能力”是C语言程序设计的课程学习目标。请简要说明你在C语言程序设计学习过程中学习了哪些内容?通过C语言的学习,你有何感受和体会?在回答问题要求真实真情表达(10分)1 k2 v6 V9 |0 g. j% j
(2)什么是算法?算法的主要特征是什么?描述算法的主要方法有哪些?(10分)
" d" k" u5 X5 l' R) {(3)依据你在学习过程中编写的体会,请你简要说明编写程序的基本步骤。在C语言中程序有哪三种基本结构?在C语言程序设计中实现这三种基本结构的主要语句有哪些?(10分)
! v% B) @% R5 t: c# b2 d% ?; I. Q0 O( Q# r5 f* y! R) n
2..编程题(共40分)) E, ^- U' L; {5 x6 B. n
(1) 编写一程序求sum= 的值。要求保留小数点后3位。
, e E$ i/ U, {. o; C9 K(2) 编写程序求100~200之间的所有奇数之和,并统计其个数
. x" W3 G1 S3 r3 x(3)从键盘上任意输入两个正整数m和n,求其最大公约数。
+ _# [- u8 r7 R( W8 y# p0 E(4)从键盘上输入一串字符串,分别统计出其中大写字母、小写字母的个数。5 E) i- p( G$ Z9 q( h' M
(5) 编写程序打印下列图案
1 a- Q% V/ i) W& B. J& D% \1
& N5 [' b) B/ e( i% L# m123 1234 12345. c! b8 F4 z H3 J! \( o" e
(6) 编写一个函数long f(int n)求Fibonacci数列第n项的值。Fibonacci数列有如下特点:第1、2两个数为1、1。从第3个数开始,该数是其前面两个数之和。并编写一个主函数产生20之内的所有Fibonacci数输出。
, S% s, E* f1 Z( k1 K( ^' {0 f @% y
3. 依据下列提供的程序回答问题(共30分)
+ o$ M$ O! @# n% k7 W; H0 m! o5 L; D#include <stdio.h>$ U4 N* U; s+ [ L8 q
#include <math.h>2 n/ M7 D) J, P6 N! K
int fun(int x)
8 L6 s: o0 x/ y s, I. o, u2 P{int s=0;
6 X) Y( L( S6 S1 V while(x!=0)
* k* n" k# [2 t1 z5 B! r{s=s+x%10 ;$ `, G. g A3 _8 H |; M
x=x/10;
8 N [. }, H# g9 H" ?4 d* d" N}7 p5 Y! R3 v4 r" n
return s;0 z/ S s7 E6 z
}, `. O% P9 H x: \ j
void main()
& h2 Q$ Q/ j4 p/ A" k' B{int a[11],b[11];
- u0 P$ x) W) j" R' `9 Kint i,j,p,temp;* f5 b k& [8 a1 ]
4 O" |5 u! ?' p5 Z/ @
for(i=0;i<10;i++)//从键盘输入10个正的整数
$ w7 W7 o- }1 P- f: v% R0 L{printf("a[%d]=",i);
- b3 {- @; l, H+ k! ~scanf("%d",&a[i]);0 L. V4 E, h* c$ Z7 V
} ?) A4 K( ~5 _7 u4 D) l3 ]# J
for(i=0;i<10;i++)
1 n2 K2 ] |+ |8 I H4 N. ~% Vb[i]=fun(a[i]);
9 y- L: [$ U2 \) D$ k4 c. c8 T, Ofor(i=0;i<9;i++) //对40个升序排列
& ?5 w' q* H+ ?& X {p=i;
% \; |( N" u& Z/ l9 @- V4 @ for(j=i+1;j<10;j++)6 `( z: e1 E) ~
if(b[p]>b[j]) p=j;
" w% X. Y/ `5 C8 B. Z if(p!=i)
3 D- Q8 q- q" J/ x+ k( l0 Y {temp=b[p]; b[p]=b[i]; b[i]=temp;}; @) a3 V( N$ r: k
}
7 P' C% `5 m# M+ ^9 kprintf("排好序的数为:\n");
' b# F5 I$ w2 s' B- p( r zfor(i=0;i <10;i++) printf("%5d",b[i]);
! `' v% |4 f$ I, Z8 d0 \}
$ l! Q( j/ n" H0 b8 i(1)上述提供程序中,函数fun的功能是什么?
. E/ c2 U0 m3 D: |. Z(2)请依据提供的函数fun的程序代码,画出该算法的传统流程图或N-S图或自然语言描述。" C+ Q8 _7 k: d6 t* D& \$ `- u* F
(3)在VC6.0环境下,运行上述程序时,若输入的数据为23,321,456,78,98,478,834,65,79,819,则输出结果是什么?
' _8 b7 r7 Y6 ~! U5 [% R0 }9 w0 K! F二、大作业要求# }( z; b2 F2 t2 Z1 k& C
大作业共需要完成3个大题:# N1 w! F4 {- ?& o7 y2 A
第1题,满分30分;) c' f% b- G6 {) {5 a% e& j4 x
第2题(1)-(5)任选两题完成,各15分,(6)题必做,10分,满分40分;
/ s( w" ^% R- u! [第3题(1)-(3)必做,满分30分。
+ {" K9 z1 m4 i) d" E5 {1 Q% C( b. ^" r. P' p
西南大学2018年6月大作业
$ |0 C% ?3 W2 o; B |
|