湖南工程学院C语言程序考试复习题有答案 下载本文

精品文档

{ }

int a[5]={2,4,6,8,10}; float rst; rst=average(a,5);

printf(\

运行结果:result=6.000000 #include void main( ) {

char grade;

scanf(\switch (grade) {

case 'A': printf(\—100\\n\case 'B': printf(\—84\\n\case 'C': printf(\—69\\n\case 'D': printf(\default: printf(\} }

当程序运行时,从键盘输入“D”,输出的结果是:<60

6. 给定如下程序:

7. 给定如下程序: #include void main( )

{ int a[5]={2,5,3,7,6},i,j,t; for (i=0;i<4;i++) for (j=0;j<4-i;j++) if (a[j]>a[j+1])

{t=a[j];a[j]=a[j+1];a[j+1]=t;}

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

printf(\

}

该程序的功能是:用“起泡法”对数组a中的5个整数按由小到大排序并输出 输出的结果为:2 3 5 6 7 8. 给定如下程序:

#include void fun( ) { auto int b=0;

static int c=4; b++; c++;

9欢迎下载 。

精品文档

printf(\}

void main( ) { int i;

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

运行结果是: b=1 c=5 b=1 c=6 b=1 c=7 9. 给定如下程序:

#include #include void main( ) {

char *p1, *p2, c, s[50];

gets(s);

p1=s; p2=s+strlen(s)-1; for(; p1

printf(\}

此程序的功能是:从键盘输入一字符串存放到数组s中,将此字符串逆序输出

当程序运行时,从键盘输入“abc we #y”,输出的结果是:The new string is y# ew cba

c=*p1; *p1=*p2; *p2=c;

五、按要求编程

1. 编写0~100之间偶数之和的程序。 #include void main( ) { int num, sum=0;

for (num=2; num<=100; num=num+2) sum=sum+num; printf(\}

2. 编程计算1!+2!+3!+…+20!。 #include

10。欢迎下载

精品文档

void main( ) {

float s=0,t=1; int n;

for(n=1;n<=20;n++) { t=t*n; s=s+t; }

printf(\}

3. 统计由键盘输入的任意一串字符中空格的个数。 #include void main( ) {

char ch; int space=0;

while ((ch=getchar( ))!='\\n') if (ch==' ') space++; printf(\}

4. 编写程序找出1—100之间的素数,并统计素数的个数。 #include #include void main( ) {

int m,k,i,n=0; for(m=1;m<=100;m=m+2) {

k=sqrt(m); for(i=2;i<=k;i++) if(m%i==0) break; if(i>=k+1) {

printf(\ n=n+1; }

11。欢迎下载

精品文档

if(n==0) printf(\ }

printf(\}

5. 打印杨辉三角形(10行)。要求:使用二维数组和循环语句实现。

1 1 1 1

1 2 3

1 3

1

……

#include #define N 11 void main( ) {

int i,j,a[N][N]; for(i=1;i

a[i][i]=1; a[i][1]=1; }

for(i=3;i

a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=1;i

for(j=1;j<=i;j++) printf(\ printf(\ } }

6. 从键盘输入10个数,找出最大值与最小值,并计算它们的平均值。 #include void main( ) {

float a[10],aver,sum,max,min; int i;

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

scanf(\

12。欢迎下载