2014年全国计算机二级C语言上机模拟试题及答案9

发布时间:2019-02-04 19:03:56

人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。 

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 

注意:源程序存放在考生文件夹下的BLANK1.C中。 

不得增行或删行,也不得更改程序的结构! 

给定源程序: 

#include  

#define N 8 

typedef struct 

{ int num; 

int year,month,day ; 

}STU; 

int fun(STU *std, STU *k, int year) 

{ int i,n=0; 

for (i=0; i

解题思路: 

本题是从给定的人员数据中找出年龄相同的记录存入k中,并返回符合条件的人数。 

第一处:断结构变量中的编号year是否相等,所以应填:std[i].year。 

第二处:把符合条件的记录依次存入实参k中,所以应填:std[i]。 

第三处:返回符合满足条件的人数,所以应填:n。 

*************************************************** 

给定程序MODI1.C的功能是:读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有为素数的因子)。 

例如,若输入整数:2310,则应输出:2、3、5、7、11。 

请改正程序中的语法错误,使程序能得出正确的结果。 

注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 

给定源程序: 

#include  

IsPrime ( int n ); 

{ int i, m; 

m = 1; 

for ( i = 2; i < n; i  ) 

if !( n%i ) 

{ m = 0; break ; } 

return ( m ); 

main( ) 

{ int j, k; 

printf( "nPlease enter an integer number between 2 and 10000: " ); scanf( "%d", 

&k ); 

printf( "nnThe prime factor(s) of %d is( are ):", k ); 

for( j = 2; j <= k; j  ) 

if( ( !( k%j ) )&&( IsPrime( j ) ) ) printf( "n M", j ); 

printf("n"); 

}

阅读更多其他试题,请访问生活日记网 用日志记录点滴生活!考试试题频道。
喜欢考试试题,那就经常来哦

该内容由生活日记网提供.