第二次作業


第二次作業

作業要求https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_3/homework/2503

一.(函數)判斷給定整數奇偶性的函數。

1.實驗代碼

int even(int n )
{
  if(n%2==0)
   
     return 1;
   
    return 0;
}

2.解題思路

1)主要描述題目算法。

第一步:輸入整數,調用主函數。

第二步:判斷整數的奇偶性,和題目要求賦值給整形函數返回主函數。

2)流程圖

 

3.本題調試過程遇到的問題及解決辦法

因為是書上的例題編譯過程沒有任何問題,只是在提交答案時,把主函數也給打上了,所以提交時總顯示錯誤,后來問過同學才明白不用再寫主函數了。

二.(數組1)交換最大值與最小值

1.實驗代碼

#include <stdio.h>
main()
{
    int n,i,a[10],c,d,min,max,j;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    min=max=a[0];
    for(i=0;i<n;i++)
    {
        if(a[i]<=min)
          {
              min=a[i];
              j=i;
          }
    }
    c=a[0];
    a[0]=min;
    a[j]=c;
    for(i=0;i<n;i++)
    {
        if(a[i]>=max)
          {
              max=a[i];
              j=i;
          }
    }
    d=max;
    a[j]=a[n-1];
    a[n-1]=d;
    for(i=0;i<n;i++)
    printf("%d ",a[i]);
}

2,解題思路

1)主要描述題目算法。

第一步:給數組賦值。

第二步:根據循環求出最大值與最小值。

第三步:交換最大值與最小值。

2)流程圖

 

3.本題調試過程遇到的問題及解決辦法。

遇到問題:交換時忘記了找一個中間的介質,導致代碼錯誤。

解決辦法:根據提示只有兩個交換元素,在其中加入一個中間介質,重新運行結果正確。

 

三,(數組2)簡化的插入排序。

1.實驗代碼

#include <stdio.h>
main()
{
    int n,i,j,x,a[11];
    scanf("%d",&n);
    for(i=0;i<n;i++)
    scanf("%d",&a[i]);
    scanf("%d",&x);
    i=0;
    while(a[i]<x&&i<n)
         i++;
    for (j=n-1;j>=i;j--)
    {
        a[j+1]=a[j];
    }
    a[i]=x;
    for(i=0;i<n+1;i++)
    printf("%d ",a[i]);
    return 0;
 }

2,解題思路

1)主要描述題目算法。

第一步:原本就是升冪的數列,依次比較此項與下一項的大小。

第二步:若大於此項再依次比較下去。

第三步:直到找到比輸入值大的一項,把數插在此項的前一個。

2)流程圖

 

 

3.本題調試過程遇到的問題及解決辦法

 

遇到問題:出現重復數據。

 

 

 

解決辦法:多次循環后發現忘記在最后一個循環之前重新給a[i]賦值,更改后可以正常運行。

個人總結

1,最近學習了函數與數組,類型題包括數字金字塔,輸出所有大於平均值的數,一維數組,二維數組。在慕課網上學習了switch語句,但還是不太懂。

2,在學習過程中遇到了許多問題,1)總是忘記從零開始計數,通過多打代碼熟悉。2)數組這部分的代碼非常的不能理解,通過自己閱讀教材,問同學,漸漸的明白一點了。

 互評和學習進度。

1,互評

梁德輝同學的作業;作為第一個提交作業的人,我認為簡直是太厲害的,對本作業的重視程度非常高,但是我認為流程圖畫的有點太龐大了,有點亂。https://www.cnblogs.com/wsaldh/p/10127051.html

王文琪同學的作業:王文琪同學總結寫的非常認真對所學內容很清晰,但是第二個流程圖好像部分線條重合了。

https://www.cnblogs.com/qqovo/p/10134759.html

於   桐同學的作業:於桐同學的作業很清晰,但是折線圖的各條線代表什么沒有給出,我認為這是美中不足的地方。https://www.cnblogs.com/4399yt/p/10139089.html

2,學習進度

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM