c语言程序填空题

  • 格式:docx
  • 大小:14.65 KB
  • 文档页数:9

下载文档原格式

  / 13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序填空题

1.下述程序是一个选择排序程序,请填完整空缺部分。

Void select _sort (int p [ ], int n )

{ int i, j, k, temp;

for ( i =0 ;i

{ k = i;

for ( j=i+1; j

if ( p[j]

if (k!=i) { temp= p[k]; p[k]=p[i];p[i]=temp;}

}

}

main()

{ int i,a[20];

for (i =0; i<20; i++) scanf (“%d”,&a[i]);

select_sort(a,20);

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

printf (“%d\t”,a[i];printf (“\n”);

}

2.下面程序的功能是:计算1到10之间的奇数之和及偶数之和,请填空。

# include

main()

{ int a, b, c , i;

a = c = 0 ;

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

{ a + = i ;

b=i+1;

c += b ;

}

printf ( “偶数之和= %d \n “, a ) ;

printf ( “奇数之和= %d \n “, c –11 );

}

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

main()

{ int i , j ;

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

{ j = i * 10 + 6 ;

if ( j%3!=0 ) continue ;

printf ( “ %d” , j ) ;

}

}

4.程序读入20个整数,统计非负数的个数,并计算非负数之和。#include “stdio.h”

main()

{ int I,a[20],s,count;

____s=count=0____;

for(I=0;I<20;I++)

scanf(“%d”,_&a[i]__);

for(I=0;I<20;I++)

{

if(a[I]<0)

continue;

s+=a[I];

count++

}

printf(“s=%d\t count=%d\n”,s,count);

}

5.下面的程序用以分别求出数组两条对角线上的各元素之和。

#include “stdio.h”

main()

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

int sum1,sum2,k,j;

sum1=sum2=0;

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

sum1+=a[i][i];

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

for(j=2;j>=0;j--)

if(_(i+j)==2________)

sum2+=a[k][j];

printf(“sum1=%d\tsum2=%d\n”,sum1,sum2);

}

6.已知整型数组w中的元素已经由小到大排序,函数fun用以将整数x插入到数组w中,要求插入后的数组元素依然有序。其中n所指的存储单元中存放着数组元素的个数。

void fun(int *w, int x, int *n)

{

int k,p=0;

w[*n]=x;

while(x>w[p])

__p++____;

for(k=*n;k>p;k--)

w[k]=__w[k-1]__;

___w[p]=x____________;

++*n;

}

7.函数strlen用于确定一个给定字符串str的长度(不包括‘\0’)。

strlen(char *str)

{

int num=0;

while(*str++!=’\0’)

++num;

return(_num___);

}

8.已知第一个学生的年龄为10岁,,第二个学生年比第一个学生的年龄大2岁,……以此类推,以下程序用于计算学生年龄,请补充完整。

#include “stdio.h”

age(int n)

{

int c;

if(n= =1) c=10;

else c=__age(n-1)+2____;

return( c ) ;

}

main()

{

int n=5;

printf(“age:%d\n”,age(n));

}

9.以下是一个求字符串长度的函数的递归算法,请补充完整(不包括‘\0’)

int strlen(char * str)

{

if(*str==’\0’)

return(0);

else

return(__1+strlen(str+1)___);

10. 以下程序将用户从键盘上随机输入的30个学生的学号、姓名、数学成绩、计算机成绩及总分写入数据文件score.txt中,假设30个学生的学号从1~30连续。输入时不必按学号顺序进行,程序自动按学号顺序将输入的数据写入文件。请在程序中的空白处填入一条语句或一个表达式。

# include

FILE *fp;

Main( )

{

struct st

{ int number;

char name[20];

float math;

float computer;