首页 > 全部 > 二级C语言 > 国家二级(C语言)机试模拟试卷906

国家二级(C语言)机试模拟试卷906

本单篇文档共3820字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 模拟试卷 5603人下载
价格: 1.20 原价:¥9.00
收藏

国家二级(C语言)机试模拟试卷906

程序填空题

1.函数fun的功能是根据所给的二维数组,将二维数组每一行中的最大值,与该行中的第一个元素进行交换。

例如,如有二维数组:

51 27 44 50 99

74 58 28 62 84

45 75 71 97 76

51 35 72 67 46

91 34 42 73 32

则输出结果是:

99 27 44 50 51

84 58 28 62 74

97 75 7l 45 76

72 35 51 67 46

91 34 42 73 32

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

注意:源程序存放在BLANK1.C中。不得增行或删行,也不得更改程序的结构!

#include

#define N 5

void fun(int a[N][N])

{

int i,j,k,t;

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

{

/*********found*********/

【1】

for(j=1; j<N; j++)

/*********found*********/

if(a[i][j]>【2】)

k=j;

t=a[i][0];

a[i][0]=a[i][k];

/*********found*********/

【3】=t;

}

}

main( )

{

int i,j;

int a[N][N]={{51,27,44,50,99};

{74,58,28,62,84};

{45,75,71,97,76};

{51,35,72,67,46};

{91,34,42,73,32}};

fun(a);

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

{

for(j=0;j<N;j++)

printf(\\

(1)k=0;(2)a[i][k](3)a[i][k]

解析:(1)求数组每一行的最大值,定义变量k,保存为最大值的列下标。将其值设置为0。(2)内循环求每一行的最大值,当前元素值大于最大值时,将此行对应的列下标保存到k变量。本空答案为a[i][k]。(3)程序将求到的最大值与所在行的第一个元素交换。此空为最大值a[i][k]。

程序修改题

2.给定程序MODI1.C。已知用户记录由账号和密码两项信息构成,N名用户的数据已经存入结构体数组n中,函数fun的功能是删除用户记录中账号重复的记录,如有多个重复账号记录,则保留第一个账号的用户记录。

请改正程序中的错误,使它能得到正确结果。

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

#include

#include

#define N 10

struct user{

char name[20];

char password[20];

};

int fun(struct user users[])

{

int i=0,j,k;

int in=N:

while(i<n)

{

/*********found*********/

j=0;

while(j<n)

{

if(strcmp(users[i].name,users[j].name)==0)

{

k=j;

/*********found*********/

for(; k<n; k++)

/*********found*********/

users[k]=users[k-1];

n–;

}

j++;

}

i++;

}

return n;

}

main( )

{

int i,n=N;

struct user users[N]={{\\

(1)j=i+1;(2)for(;k<n-1;k++)(3)users[k]=users[k+1];

解析:(1)根据题干可知,删除重复的记录,将当前记录与其后的记录进行比较。变量i表示当前比较对象的下标,从下一个元素进行比较,则变量j=i+1;(2)当数组元素的name相同时,for循环的作用是将对应后面的元素移动到前面,此时n的值为常量N,这里k<n-1,则修改为for(;k<n-1;k++)。(3)for循环的作用是将后面的元素前移,即将重复的元素删除,则这里应修改为users[k]=users[k+1];

程序设计题

3.请编写函数fun,fun的功能是按顺序将形参a所指的字符串中每个单词的第一个字母取出,依次存放到形参b所指的字符串中去。

形参a所指的字符串中的单词以一个或多个空格进行分隔,字符串首部和尾部可以有一个或多个空格。

注意:部分源程序在文件PROG1.C中。请勿改动主函数main中的任何内容,仅在函数fun的花括号中填入你所编写的若干语句。

#include

#include

void NONO( );

void fun(char*a,char*b)

{

}

main( )

{

char a[50],b[50] ;

gets(a);

fun(a,b);

puts(b);

NONO( );

}

void NONO( )

{

FILE*fp=fopen(\\

void fun(char*a,char*b)

{

while(*a==’’)a++;

*b=*a;

b++;

a++;

while(*a)

{

if(*a==’’)a++;

if(*(a-1)==’’&&*a!=’’&&*a)

{

*b=*a;

b++;

}

本文档预览:3600字符,共3820字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C语言)机试模拟试卷906

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号