填空题

请补充main函数,该函数的功能是:如果数组aa的前一个元素比后一个元素小,则把它保存在数组比中并输出。 例如,输入“40,51,62,33,35,52,48,95,66, 73”,则结果输出“40,51,33,35,48,66”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include <stdio. h> #define N 10 main ( ) { int i, n=0; int aa [N]={40, 51, 62,33, 35, 52, 48, 95, 66,73}; int bb[N]; clrscr (); for (i=0; i< 【1】 ; i++) if (aa [i] <aa [i+l] ) 【2】 ; printf("\n*** display bb ***In"); for (i=0; i<n; i++) printf("bb[%d]=%2d ", 【3】 ); }

【参考答案】

[1]N-1 (2)bb[n++]=aa[i] (3)i,bb[i]
热门 试题

问答题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。例如,输入的分数是60和69,则应当把分数在60到69的学生数据进行输出,包含60分和69分的学生数据。主函数中把60放在low中,把69放在heigh中。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:#include <stdio.h>#define N 16typedef struct{ char num[10];int s ;} STREC;int fun (STREC *a, STREC *b, int 1, int h ){}main (){STREC s [N] ={ { GA005 , 85 }, { GA003 , 76 },{ GA002 , 69}, { GA004 , 85}, { GA001 , 96 } ,{ GA007 , 72}, { GA008 , 64}, { GA006 , 87 } ,{ GA015 , 85}, { GA013 , 94}, { GA012 , 64 } ,{ GA014 , 91}, { GA011 , 90}, { GA017 , 64 } ,{ GA018 , 64 } , { GA016 , 72 } };STREC h [N], tt;FILE *out;int i, j, n, low, heigh, t;printf( Enter 2 integer number low &heigh: );scanf ( %d%d , &low, &heigh);if (heigh<low){t=heigh;heigh=low; low=t; }n=fun (s,h, low, heigh);printf ( The student’s data between%d--%d: n , low, heigh);for (i=0; i<n; i++)printf( %s %4d n ,h[i] .num, h[i].s); *输出指定分数范围内的学生记录* printf( n );out=fopen ( out74.dat , w )fprintf(out, %d n ,n)-n=fun (s,h, 80, 98);for (i=0; i<n-1; i++) * 分数在80~98之间的学生记录按他数从低到高排序* for (j=i+l; j<n; j++)if (h[i] .s>h [j] .s){tt=h [i] ;h [ii =h [j] ;h [j] =tt; }for (i=0; i<n; i++)fprintf(out, %4d n ,h[i] .s);fprintf(out, n );fclose (out);}