{char text[10];int constant;};
void encrypt(struct pp *x)
{int i;
for(i=0;itext);i++)
x->text[i]=x->text[i]+x->constant;
}
main()
{struct pp source[N]={{"amknsrcp",2},{"oqnbdctqd",1}};
int i=0;
while(i
{encrypt(&source[i]);
i++;}
for(i=0;i
printf("%s\n",source[i].text);}
2、程序填空(每空5分,共45分)
(1)、下面程序的功能是实现左右循环移位,当输入位移的位数是一正整数时循环右移,输入一负整数时循环左移。请补充程序,使其实现功能。
main()
{unsigned a;
int n;
printf(“请输入一个八进制数:”);
scanf(“%o”,&a);
printf(“请输入位移的位数:”);
scanf(“%d”,&n);
if(
)
{moveright(a,n);
printf(“循环右移的结果为:%o\n”,moveright(a,n));
}
else
{_____________;
moveleft(a,n);
printf(“循环左移的结果为:%o\n”,moveleft(a,n));
} }
moveright(unsigned value,int n)
{unsigned z;
z=(value>>n)|(value<
return(z);
}
moveleft(unsigned value,int n)
{unsigned z;
____________;
return(z);
}
(2)、下面程序的功能是对十个整数按从小到大进行排序并输出。请完善程序。
#include "stdio.h"
{
int
a,b,t;
for(a=1;a<=9;a++)
{t=aa[a];
b=a-1;
while((b>=0)&&(t
{
; b--;}
;
}
return aa; }
void main()
{int a[10];int i;
printf("\nEnter 10 number:");
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
insert(a);
printf("\nThe is 10 number:");
for(i=0;i<10;i++)
printf("%d ",a[i]); }
(3)、下面程序的功能是用递归法将一个整数存入到一个字符数组中。存放时按逆序存放。如483存放成“384”,请完善程序。
#include
void convert(char *a,int n)
{int i;
if((i=n/10)!=0)
convert(
,i);
*a=
; }
main()
{int number;
char
str[10]=" ";
scanf("%d",&number);
; puts(str); }
3、程序改错:已知head指向单链表的第一个结点,以下函数del完成从单向链表中删除值为num的第一个结点。程序中有三处错误,请先用波浪线标出错误语句,并在相应错误语句的右边写出正确的语句。(每处5分,共15分)。
#include “stdio.h”
struct student
{int info;
struct student *link; };
struct student *del(struct student *head,int num)
{struct student *p1,*p2;
if(head==NULL)
printf(“\nlist null!\n”);
else
{p1=head;
while(num!=p1->info||p1->link!=NULL)
{p2=p1;p1=p1->link;}
if(num=p1->info)
{if(p1==head) head=p1->link;
p2->link=p1->link;
printf(“delete:%d\n”,num); }
else printf(“%d not been found!\n”,num); }
return(head); }
4、程序设计题:若某数与其本身的平方数低位部分相等,则称之为同构数,如6的平方为36,则6为一个同构数,以下程序的功能是求[5,1000]内的所有同构数。(共15分)。
五、综合题:(每题15分,共60分)
1、下面是一个数据透视表,完成下列操作:
(1)指出页字段名( ),行字段名( )。
(2)显示出“加油站”为“河西”的信息。写出操作步骤。
(3)对“金额”进行求平均的汇总,写出操作要点。
2、Internet接入应用:现有一用户使用ADSL宽带上网,该用户家有3台电脑要共享上网,而该用户的ADSL不带路由功能,列举两种共享上网方案,并画出示意图.(15分)
3、阅读下列说明,回答问题1至问题5。
某一网络地址块192.168.75.0中有5台主机A、B、C、D和E,它们的IP地址及子网掩码如下表所示。(每题3分)
表 主机IP地址及子网掩码表
主 机
IP地址
子网掩码
A
192.168.75.34
255.255.255.240
B
192.168.75.146
255.255.255.240
C
192.168.75.158
255.255.255.240
D
192.168.75.177
255.255.255.240
E
192.168.75.173
255.255.255.240
①5台主机A、B、C、D、E分属几个网段?哪些主机位于同一网段?
②主机D的网络地址为多少?
③若要加入第六台主机F,使它能与主机A属于同一网段,其IP地址范围是多少?
④若在网络中另加入一台主机,其IP地址设为192.168.75.46,它的广播地址是多少?哪些主机能够收到?
⑤在该网络地址块中采用VLAN技术划分子网,何种设备能实现VLAN之间的数据转发?
4、计算机故障分析题(每题5分,共15分)
在调整系统显示时超出了显示范围,应如何解决?
②现有如下症状:在BIOS里突然无法识别硬盘,或即使能够识别,在操作系统中也无法找到硬盘。试分析其原因,并解决此故障。
③显示器屏幕无显示,前面板的指示灯闪烁。试分析其原因,并解决此故障。
六、选考题(每一名考生根据自己的专业方向,从2组题目中任选一组答题,多选的只计前一组的成绩,每小题15分,共30分)
【第一组:计算机网络与维护】
1、网络命令:假设目前使用的服务器设置如下:
DNS 服务器的 IP 地址:202.99.96.98 和
61.136.18.10 网关:10.10.0.1;本机 IP
地址:10.10.0.77;子网掩码:255.255.255.0
(1)验证网卡工作正常与否:(3分)
点击“开始”→“运行…”→“cmd”
,提示符后输入“( )”回车运行。
(2)验证网络线路正常与否:(4分)
点击“开始”→“运行…”→“cmd”
,提示符后输入“( )”回车运行。
(3)验证 DNS 配置正确与否:(4分)
点击“开始”→“运行…”→“cmd”
,提示符后输入“( )”回车运行。
(4)验证网关配置正确与否:(4分)
点击“开始”→“运行…”→“cmd”
,提示符后输入“( )”回车运行。
2、(每空1.5分)在下列空格中填出图示位置名称的标号
①键盘接口 ②CMOS电池 ③内存条插槽 ④并行接口 ⑤PCI插槽 ⑥声卡接口 ⑦CPU插槽 ⑧网卡接口 ⑨主板电源接口 ⑩USB接口
【第二组:程序设计方向】
1、程序的功能是调用fun函数建立班级通讯录,通讯录中记录每位学生的编号、姓名和电话号码,班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。完成程序。
#include
#define N 5
typedef struct
{int num;
char name[10];
char tel[10];
}STYPE;
void check();
int
fun(
*std)
{
*fp;int i;
if((fp=fopen("myfile5.dat","wb"))==NULL)
return(0);
printf("\nOutput data to file!\n");
for(i=0;i
fwrite(&std[i],sizeof(STYPE),1,
);
fclose(fp);
return(1); }
main()
{STYPE
s[10]={{1,"aaaaa","111111"},{2,"bbbbb","222222"},{3,"ccccc","333333"},{4,"ddddd","444444"},{5,"eeeee","555555"}};
int k;
k=fun(s);
if(k==1)
{printf("succeed!");
check();}
else
printf("fail!"); }
void check()
{FILE *fp;int i;
STYPE s[10];
if((fp=fopen("myfile5.dat","rb"))==NULL)
{printf("Fail!!\n");exit(0);}
printf("\n read file and output to screen:\n");
printf("\n num name tel\n");
for(i=0;i
{fread(&s[i],sizeof(STYPE),1,fp);
printf("%6d %s %s\n",s[i].num,s[i].name,s[i].tel);
} fclose(fp); }
2、程序设计题:求出10到999之间的所有可逆质数,例如:17是一个质数,其逆序71也是一个质数,所以17是可逆质数。并按每行5个输出。