📄 cjj110.htm
字号:
if(year%4==0&&year%100!=0||year%400==0)
/*是闰年*/<BR>
return 1;<BR>
else
/*不是闰年*/<BR>
return 0;<BR>}<BR>void
compute::sort()<BR>{<BR> int
i,j;<BR> struct person
temp;<BR>
for(i=0;i<N-1;i++)<BR>
for(j=0;j<N-i-1;j++)<BR>
{<BR>
if(st[j].d>st[j+1].d)<BR>
{<BR>
temp=st[j];<BR>
st[j]=st[j+1];<BR> st[j+1]=temp;<BR>
}<BR> }<BR>}<BR>void
compute::getdata()<BR>{<BR> int
i;<BR>
for(i=0;i<N;i++)<BR>
{<BR>
printf("输入第%d个学生姓名:",i+1);<BR>
scanf("%s",st[i].name);<BR>
printf("
出生日期:");<BR>
scanf("%d.%d.%d",&st[i].date.year,&st[i].date.month,&st[i].date.day);<BR>
st[i].d=daynum(1900,1,1,st[i].date.year,st[i].date.month,st[i].date.day);<BR>
}<BR>}<BR>void
compute::disp()<BR>{<BR> int
i;<BR>
printf("输出结果:\n");<BR>
printf(" 姓名
出生日期\n");<BR>
for(i=0;i<N;i++)<BR>
printf("
%-8s%d.%d.%d\n",st[i].name,st[i].date.year,st[i].date.month,st[i].date.day);<BR> printf("\n");<BR>}<BR><BR>void
main()<BR>{<BR> compute
obj;<BR>
obj.getdata();<BR>
obj.sort();<BR>
obj.disp();<BR>}<BR>本程序的执行结果如下:<BR>输入第1个学生姓名:
Li<BR>
出生日期:1982.3.5<BR>输入第2个学生姓名:
Zheng<BR>
出生日期:1982.12.15<BR>输入第3个学生姓名:
Chen<BR>
出生日期:1981.12.25<BR>输入第4个学生姓名:
Ma<BR>
出生日期:1981.2.19<BR><BR>输出结果:<BR>
姓名
出生日期<BR>
Ma 1981.2.19<BR> Chen 1981.12.25<BR> Li 1982.3.5<BR> Zheng
1982.12.15<BR> </FONT></P>
<P>---------------------------------------------------------<BR><BR><FONT
color=#0000ff>题25.设计一个词典类Dic,每个单词包括英文单词及对应的中文含义,并有一个英汉翻译成员函数,通过查词典的方式将一段英语翻译成对应的汉语。
<BR></FONT><FONT
color=#000000>解:<BR>
词典类Dic包括top(当前词典指针)、words(英语单词库)、men(对应中亠含义库)数据成员,以及一个构造函数、add()(添加单词)和trans(英汉翻译)成员函数。<BR>本题程序如下:<BR>#include<iostream.h><BR>#include<string.h><BR>#define
Max 100<BR>class Dic<BR>{<BR>
int top;<BR> char
words[Max][12];<BR> char
mean[Max][20];<BR>
public:<BR>
Dic(){top=0;}<BR>
void add(char w[],char
m[])<BR>
{<BR>
strcpy(words[top],w);<BR>
strcpy(mean[top],m);<BR>
top++;<BR>
}<BR>
void trans(char
str[])<BR>
{<BR>
int
i=0,j=0,k=0,s;<BR>
char
w[12],h[200];<BR>
while(1)<BR>
{<BR>
if(str[i]!='
'&&str[i]!='\0')<BR>
w[j++]=str[i];<BR>
else<BR> {<BR>
w[j]='\0';<BR>
for(s=0;s<top;s++)<BR>
if(strcmp(words[s],w)==0)<BR>
break;<BR> if(s<top)
//
找到了,翻译成对应的mean[s]<BR> {<BR>
strcpy(w,mean[s]);<BR>
j=strlen(w);<BR>
}<BR>
else //
未找到,翻译成(unknown)<BR>
{<BR>
strcpy(w,"(unknown)");<BR>
j=9;<BR>
}<BR>
for(s=0;s<j;s++)<BR>
h[k++]=w[s];<BR>
j=0;<BR>
if(str[i+1]=='\0');<BR>
{<BR>
h[k]='\0';<BR>
break;<BR>
}<BR>
}<BR>
i++;<BR>
}<BR>
cout<<"英语:"<<str<<endl;<BR>
cout<<"汉语:"<<h<<endl;<BR>
}<BR>};<BR>void main()<BR>{<BR>
Dic obj; //
建立一本词典<BR>
obj.add("a","一个");<BR> obj.add("I","我");<BR>
obj.add("am","是");<BR>
obj.add("student","学生");<BR>
obj.trans("I am a
student");<BR>}<BR>本程序的执行结果如下:<BR>英语: I am a
student<BR>汉语:
我是一个学生</FONT></P><BR>
</TD>
</TR>
</TBODY>
</TABLE>
</TD>
</TR>
<TR>
<TD height=35 width="100%">
<DIV align=center></DIV>
</TD>
</TR>
</TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=750>
<TBODY>
<TR>
<TD bgColor=#c1c1c1 height=1></TD>
</TR>
</TBODY>
</TABLE>
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<td align=center>
<div align="center">
<p><a href=mailto:jjsun36@sohu.com ><span class="body14black">mailto:jjsun36@sohu.com</span></a><span class="body12red">
热线电话:0523-4864559</span></p>
</div>
</td>
</TBODY>
</TABLE>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -