第六週做業

題目7-1高速公路超速處罰html

實驗代碼:git

 

#include<stdio.h>
int main()
{
  int S,L;
  float x;
  scanf("%d %d",&S,&L);
  x = (float)(S-L)/L;
  x = x*100;
  if(x<10)
  {
    printf("OK");
  }else if(x<50)
  {
    printf("Exceed %.0f%%. Ticket 200",x);
  }else
  {
    printf("Exceed %.0f%%. License Revoked",x);
  }

  return 0;
  
  
}

設計思路:算法

第一步:定義變量,並輸入。學習

第二步:根據題意分爲三類,肯定使用if語句。spa

第三步:根據條件輸出。.net

流程圖:設計

遇到的問題與解決方法:code

題中x精確到整數,因此對x定義錯誤。再不斷地修改嘗試以後發現錯誤並改正。htm

提交列表:blog

7-2 計算油費:

實驗代碼:

int main()
{
    int a = 0;
    float b,d,M,p;
    char c;
    scanf("%d %2f %c",&a,&b,&c);
    if( b == 90)
    {
        p = 6.95;
    }
    if( b == 93)
    {
        p = 7.44;
    }
    if( b == 97)
    {
        p = 7.93;
    }
    if( c == 'm')
    {
        d = 0.05;
    }
    if( c == 'e')
    {
        d = 0.03;
    }
    M = a * p * (1 - d);
    printf("%.2f",M);
 } 

設計思路:

第一步:定義變量,並輸入。

第二步:本題中須要討論汽油品種和服務類型兩個變量,先討論汽油種類再討論服務類型。

第三步:在不一樣狀況中,用不一樣的方式計算應付款額。

第四步:輸出。

流程圖:

 

遇到的問題和解決方法:

 

忽略了最後輸出數的小數位數,致使答案錯誤。

提交列表:

 

7-3 比較大小

實驗代碼:

int main()
{
    int a,b,c,x,y,z;
    scanf("%d %d %d",&a,&b,&c);
    if( a > b)
    {
      x=a;
z=b; }
else { x = b; z = a; } if( c > x) { x = c; }else { if(c < z) { z = c; } } y = a + b + c - x -z; printf("%d->%d->%d",z,y,x); }

解題思路:

第一步:定義變量,並輸入。

第二步:定義三個數x,y,z並區分它們之間的大小,將a,b,c進行比較,將其中最大和最小的賦給x,y,z中的最大最小值,最後經過數學計算得出y。

第四步:按照題目要求輸出。

流程圖:

 

遇到的問題和解決思路:

這道題一開始我徹底不知道應該怎麼去完成,由於在比較了兩個數的大小以後第三個數存在不只須要和前兩個數分別比較並且存在的結果有不少種。

最終在同窗的講解中找到解題方法。

提交列表:

 

7-4兩個數的簡單計算器:

實驗代碼:

#include <stdio.h>  
  
int main()  
{  
    int a,b;  
    char c;  
  scanf("%d %c %d", &a,&c,&b);
        int d;  
        switch (c){  
            case '-':  
            {  
               d=a-b;  
                printf ("%d\n", d);  break;  
            }  
            case '+':  
            {  
              d=a+b;  
                printf ("%d\n",d);  break;  
            }  
            case '*':  
            {  
                d=a*b;  
                printf ("%d\n",d);  break;  
            }  
            case '/':  
            {  
                d=a/b;  
                printf ("%d\n",d);  break;  
            }  
            case '%':  
            {  
                d=a%b;  
                printf ("%d\n",d); break;  
            }  
          
            default:printf("ERROR\n");  
            }    
    return 0;  
}  

解題思路:

第一步:首先根據題意應當使用switch語句。

第二步:定義輸入,根據題意輸入不一樣算法。

第三步:輸出。

流程圖:

 

遇到的問題與解決方法:

 忘記加上braek。

提交列表:

 

個人git地址是:https://git.coding.net/zhouxuan12/123.git

 

 

學習總結:最近學習內容比較豐富,總的來講收穫很大,但對各類語句的理解和熟練程度不夠。須要更加繼續努力。 

點評:

http://www.cnblogs.com/lixiaojing/p/7711650.html

http://www.cnblogs.com/fengzx/p/7745112.html

http://www.cnblogs.com/exo123/p/7737213.html

相關文章
相關標籤/搜索