⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 7.htm

📁 很好的c语言习题解答
💻 HTM
📖 第 1 页 / 共 3 页
字号:
              <OPTION 
              value=#00FF00>绿色</OPTION>
              <OPTION value=#0000FF>蓝色</OPTION>
              <OPTION value=#00cccc>青色</OPTION>
              <OPTION 
            value=#ffff00>黄色</OPTION>
            </SELECT>
            背景     
            <SELECT 
            style="WIDTH: 60px; HEIGHT: 20px; fontsize: 9pt" 
            onchange=setBgColor(this.value); name=selbkcolor>
              <OPTION 
              value=#FFFFFF selected>白色</OPTION>
              <OPTION 
              value=#000000>黑色</OPTION>
              <OPTION value=#FFCCFF>粉红</OPTION>
              <OPTION value=#CCCCCC>灰色</OPTION>
              <OPTION 
              value=#CCFFCC>绿色</OPTION>
              <OPTION value=#99CCFF>蓝色</OPTION>
              <OPTION value=#CCFFFF>青色</OPTION>
              <OPTION 
            value=#FFCCCC>综色</OPTION>
            </SELECT>
            字号     
            <SELECT 
            style="WIDTH: 60px; HEIGHT: 20px; fontsize: 9pt" 
            onchange=setFontSize(this.value); name=selfontsize>
              <OPTION 
              value=9pt selected>9 pt</OPTION>
              <OPTION value=10pt>10 pt</OPTION>
              <OPTION value=12pt>12 pt</OPTION>
              <OPTION value=14pt>14 pt</OPTION>
              <OPTION value=16pt>16 pt</OPTION>
              <OPTION 
              value=19pt>19 pt</OPTION>
            </SELECT>
            </font></TD>
          <TD class=zi width=85><font size="2"><a href="javascript:saveit();" onMouseOver="MM_showHideLayers('Layer1','','show')" onMouseOut="MM_showHideLayers('Layer1','','hide')"><img src="images/save.png" width="23" height="22" name="s" onMouseOver="MM_swapImage('s','','images/save2.png',1)" border="0" align="absbottom"></a>保存设置</font></TD>
          <TD class=zi width=2 ><font size="2">&nbsp;</font></TD>
                      <TD class=zi width=164><font size="2"> &nbsp;&nbsp;人气指数:<font color="#FF0000">58377</font>&nbsp; 
                        &nbsp;</font></TD>    
        </TR>
        </TBODY> 
      </TABLE>
    </TD>
  </TR>
  <TR vAlign=center align=left>
    <TD bgColor=#BDCFF7 colSpan=2 height=370>
      <TABLE height=360 cellSpacing=0 borderColorDark=#4275D6 cellPadding=5 
      width=640 align=center bgColor=#ffffff borderColorLight=#ffffff 
        border=1>
        <TBODY> 
        <TR vAlign=top align=left>
          <TD id=thetd style="FONT-SIZE: 10pt">
                        <div align="left" style="width: 626; height: 132"> 
                          <p align="left"> 
                            <html>
<head>
<style type="text/css">
td { font-size: 9pt }
body { color: #000000; font-size: 9pt; line-height: 150% }
a:link { color: #000000; text-decoration: none }
a:visited { color: #000000; text-decoration: none }
a:active { color: #000000; text-decoration: none }
a:hover { color: #ff0000; text-decoration: underline }
</style>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<p align="left"><font color="#FF9933"><b><font size="5">    <font color="#3300CC">经典c程序100例==71--80</font></font></b></font></p>
<p><font color="#990000">【程序71】</font><br>
  题目:编写input()和output()函数输入,输出5个学生的数据记录。<br>
  1.程序分析:<br>
  2.程序源代码:<br>
  #define N 5<br>
  struct student<br>
  { char num[6];<br>
   char name[8];<br>
   int score[4];<br>
  } stu[N];<br>
  input(stu)<br>
  struct student stu[];<br>
  { int i,j;<br>
   for(i=0;i&lt;N;i++)<br>
   { printf(&quot;\n please input %d of %d\n&quot;,i+1,N);<br>
    printf(&quot;num: &quot;);<br>
    scanf(&quot;%s&quot;,stu[i].num);<br>
    printf(&quot;name: &quot;);<br>
    scanf(&quot;%s&quot;,stu[i].name);<br>
     for(j=0;j&lt;3;j++)<br>
     { printf(&quot;score %d.&quot;,j+1);<br>
      scanf(&quot;%d&quot;,&amp;stu[i].score[j]);<br>
     }<br>
    printf(&quot;\n&quot;);<br>
   }<br>
  }<br>
  print(stu)<br>
  struct student stu[];<br>
  { int i,j;<br>
  printf(&quot;\nNo. Name Sco1 Sco2 Sco3\n&quot;);<br>
  for(i=0;i&lt;N;i++)<br>
  { printf(&quot;%-6s%-10s&quot;,stu[i].num,stu[i].name);<br>
   for(j=0;j&lt;3;j++)<br>
    printf(&quot;%-8d&quot;,stu[i].score[j]);<br>
   printf(&quot;\n&quot;);<br>
  }<br>
  }<br>
  main()<br>
  {<br>
   input();<br>
   print();<br>
  }<br>
  ==============================================================<br>
  <font color="#990000">【程序72】</font><br>
  题目:创建一个链表。<br>
  1.程序分析:           <br>
  2.程序源代码:<br>
  /*creat a list*/<br>
  #include &quot;stdlib.h&quot;<br>
  #include &quot;stdio.h&quot;<br>
  struct list<br>
  { int data;<br>
  struct list *next;<br>
  };<br>
  typedef struct list node;<br>
  typedef node *link;<br>
  void main()<br>
  { link ptr,head;<br>
  int num,i;<br>
  ptr=(link)malloc(sizeof(node));<br>
  ptr=head;<br>
  printf(&quot;please input 5 numbers==&gt;\n&quot;);<br>
  for(i=0;i&lt;=4;i++)<br>
  {<br>
   scanf(&quot;%d&quot;,&amp;num);<br>
   ptr-&gt;data=num;<br>
   ptr-&gt;next=(link)malloc(sizeof(node));<br>
   if(i==4) ptr-&gt;next=NULL;<br>
   else ptr=ptr-&gt;next;<br>
  }<br>
  ptr=head;<br>
  while(ptr!=NULL)<br>
  { printf(&quot;The value is ==&gt;%d\n&quot;,ptr-&gt;data);<br>
   ptr=ptr-&gt;next;<br>
  }<br>
  }<br>
  ==============================================================<br>
  <font color="#990000">【程序73】</font><br>
  题目:反向输出一个链表。   <br>
  1.程序分析:<br>
  2.程序源代码:<br>
  /*reverse output a list*/<br>
  #include &quot;stdlib.h&quot;<br>
  #include &quot;stdio.h&quot;<br>
  struct list<br>
  { int data;<br>
   struct list *next;<br>
  };<br>
  typedef struct list node;<br>
  typedef node *link;<br>
  void main()<br>
  { link ptr,head,tail; <br>
   int num,i;<br>
   tail=(link)malloc(sizeof(node));<br>
   tail-&gt;next=NULL;<br>
   ptr=tail;<br>
   printf(&quot;\nplease input 5 data==&gt;\n&quot;);<br>
   for(i=0;i&lt;=4;i++)<br>
   {<br>
    scanf(&quot;%d&quot;,&amp;num);<br>
    ptr-&gt;data=num;<br>
    head=(link)malloc(sizeof(node));<br>
    head-&gt;next=ptr;<br>
    ptr=head;<br>
   }<br>
  ptr=ptr-&gt;next;<br>
  while(ptr!=NULL)<br>
  { printf(&quot;The value is ==&gt;%d\n&quot;,ptr-&gt;data);<br>
   ptr=ptr-&gt;next;<br>
  }}<br>
  ==============================================================<br>
  <font color="#990000">【程序74】</font><br>
  题目:连接两个链表。<br>
  1.程序分析:<br>
  2.程序源代码:<br>
  #include &quot;stdlib.h&quot;<br>
  #include &quot;stdio.h&quot;<br>
  struct list<br>
  { int data;<br>
  struct list *next;<br>
  };<br>
  typedef struct list node;<br>
  typedef node *link;<br>
  link delete_node(link pointer,link tmp)<br>
  {if (tmp==NULL) /*delete first node*/<br>
   return pointer-&gt;next;<br>
  else<br>
  { if(tmp-&gt;next-&gt;next==NULL)/*delete last node*/<br>
    tmp-&gt;next=NULL;<br>
   else /*delete the other node*/<br>
    tmp-&gt;next=tmp-&gt;next-&gt;next;<br>
   return pointer;<br>
  }<br>
  }<br>
  void selection_sort(link pointer,int num)<br>
  { link tmp,btmp;<br>
   int i,min;<br>
   for(i=0;i&lt;num;i++)<br>
   {<br>
   tmp=pointer;<br>
   min=tmp-&gt;data;<br>
   btmp=NULL;<br>
   while(tmp-&gt;next)<br>
   { if(min&gt;tmp-&gt;next-&gt;data)<br>
   {min=tmp-&gt;next-&gt;data;<br>
    btmp=tmp;<br>
   }<br>
   tmp=tmp-&gt;next;<br>
   }<br>
  printf(&quot;\40: %d\n&quot;,min);<br>
  pointer=delete_node(pointer,btmp);<br>
  }<br>
  }<br>
  link create_list(int array[],int num)<br>
  { link tmp1,tmp2,pointer;<br>
  int i;<br>
  pointer=(link)malloc(sizeof(node));<br>
  pointer-&gt;data=array[0];<br>
  tmp1=pointer;<br>
  for(i=1;i&lt;num;i++)<br>
  { tmp2=(link)malloc(sizeof(node));<br>
   tmp2-&gt;next=NULL;<br>
   tmp2-&gt;data=array[i];<br>
   tmp1-&gt;next=tmp2;<br>
   tmp1=tmp1-&gt;next;<br>
  }<br>
  return pointer;<br>
  }<br>
  link concatenate(link pointer1,link pointer2)<br>
  { link tmp;<br>
  tmp=pointer1;<br>
  while(tmp-&gt;next)<br>
   tmp=tmp-&gt;next;<br>
  tmp-&gt;next=pointer2;<br>
  return pointer1;<br>
  }<br>
  void main(void)<br>
  { int arr1[]={3,12,8,9,11};<br>
   link ptr;<br>
   ptr=create_list(arr1,5);<br>
   selection_sort(ptr,5);<br>
  }<br>
  ==============================================================<br>
  <font color="#990000">【程序75】</font><br>
  题目:放松一下,算一道简单的题目。<br>
  1.程序分析:<br>
  2.程序源代码:<br>
  main()<br>
  {<br>
  int i,n;<br>
  for(i=1;i&lt;5;i++)<br>
  { n=0;<br>
   if(i!=1)<br>
   n=n+1;<br>
   if(i==3)<br>
   n=n+1;<br>
   if(i==4)<br>
   n=n+1;<br>
   if(i!=4)<br>
   n=n+1;<br>
   if(n==3)<br>
    printf(&quot;zhu hao shi de shi:%c&quot;,64+i);<br>
   }<br>
  }<br>
  ==============================================================<br>
  <font color="#990000">【程序76】</font><br>
  题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数<br>
     1/1+1/3+...+1/n(利用指针函数)<br>
  1.程序分析:<br>
  2.程序源代码:<br>
  main()<br>
  #include &quot;stdio.h&quot;<br>
  main()<br>
  {<br>
  float peven(),podd(),dcall();<br>
  float sum;<br>
  int n;<br>
  while (1)<br>
  {<br>
   scanf(&quot;%d&quot;,&amp;n);<br>
   if(n&gt;1)<br>
    break;<br>
  }<br>
  if(n%2==0)<br>
  {<br>
   printf(&quot;Even=&quot;);<br>
   sum=dcall(peven,n);<br>
  }<br>
  else<br>
  {<br>
   printf(&quot;Odd=&quot;);<br>
   sum=dcall(podd,n);<br>
  }<br>
  printf(&quot;%f&quot;,sum);<br>
  }<br>
  float peven(int n)<br>
  {<br>
  float s;<br>
  int i;<br>
  s=1;<br>
  for(i=2;i&lt;=n;i+=2)<br>
   s+=1/(float)i;<br>
  return(s);<br>
  }<br>
  float podd(n)<br>
  int n;<br>
  {<br>
  float s;<br>
  int i;<br>
  s=0;<br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -