第一次作業


一.  分支結構中題目7-10 出租車計價

  1.實驗代碼

#include <stdio.h>
int main() 
{
	int time;//定義一個整數值time
	double fare,distance;//定義兩個浮點數
	scanf("%lf%d", &distance, &time);//輸入距離和時間
	if(time >= 5)
		fare = (time / 5) * 2;//營運過程中,因路阻及乘客要求臨時停車的,按每5分鍾2元計收(不足5分鍾則不收費)
	if(distance <= 3) {
		fare = 10 + fare;//起步里程為3公里,起步費10元,再加上臨時停車的費用
     }
	else if(distance <= 10) {
		fare = 10 + (distance - 3) * 2 + fare;//超起步里程后10公里內,每公里2元,再加上臨時停車的費用
	}
	else if(distance > 10){
			fare = 10 + 7 * 2 + (distance - 10) * 3 + fare;//超過10公里以上的部分加收50%的回空補貼費,即每公里3元,同樣加上臨時停車的費用
	}
	printf("%d\n", (int)(fare + 0.5));//輸出計算結果(結果四舍五入)
	return 0;
} 

  2.設計思路

  (1)文字描述

      第一步:先定義時間,金錢和距離

      第二步:營運過程中,因路阻及乘客要求臨時停車的,按每5分鍾2元計收(不足5分鍾則不收費)(fare = (time / 5) * 2)

      第三步:起步里程為3公里,起步費10元,再加上臨時停車的費用(fare = 10 + fare)

      第四步:超起步里程后10公里內,每公里2元,再加上臨時停車的費用(fare = 10 + (distance - 3) * 2 + fare)

      第五步:超過10公里以上的部分加收50%的回空補貼費,即每公里3元,同樣加上臨時停車的費用(fare = 10 + 7 * 2 + (distance - 10) * 3 + fare)

         第六步:最后輸出計算結果(結果四舍五入)(fare + 0.5)

  (2)流程圖

  3.錯誤提示

  (1)最開始沒有每一步都加上臨時停車的費用

  (2)不知道怎么四舍五入

  4.解決方法

  (1)在最前計算臨時停車的費用,並在以后的每次計算中都加上臨時停車的費用

  (2)百度了一下,在所得結果上加上0.5就會在輸出的整數上達到四舍五入的結果

二. 循環1中題目7-3 統計素數並求和

  1.實驗代碼

#include<stdio.h>
int main()
int prime(int p){
    int isPrime=1 , i;//定義當isPrime=0為素數
    if(p<2){
        isPrime = 0;//當定義的數小於2時為素數
    }
    else{
        for(i=2; i<=(int)sqrt(p); i++){//for循環
            if(p%i == 0){
                isPrime = 0;//取余等於0,為素數
                break;//結束當前循環
            }
        }
    }
    return isPrime;
}
{
	int M, N, i, count=0, sum=0;//定義區間的兩個數,for循環的i和所要輸出的兩個結果
	scanf("%d %d",&M,&N);//輸入區間兩邊的數
	for(i=M;i<=N;i++){//for循環定義區間
		if(prime(i)){
			count++;//count+1
			sum += i;//計算sum
		}
	}printf("%d %d",count,sum);輸出結果
	return 0;
}

  2.設計思路

  (1)文字描述

    第一步:先定義一個素數(假設定義當isPrime=0為素數)

    第二步:所以當定義的數小於2時為素數

    第三步:在for循環中取余等於0則為素數並結束當前循環

if(p%i == 0){
    isPrime = 0;//取余等於0,為素數
    break;//結束當前循環
    }

    第四步:然后定義區間的兩個數,for循環的i和所要輸出的兩個結果

    第五步:在for循環中定義區間並求得sum(sum += i)

    第六步:最后輸出所求結果

  (2)流程圖

  3.錯誤提示

  4.解決方法

  (1)定義isPrime等於0時為素數,從而計算素數的和還有平均數

  (2)考慮isPrime不等於0時的情況

三. 循環2中題目7-5 最佳情侶身高差

  1.實驗代碼

#include<stdio.h>
int main()
{
	int n ;
	char x;
	double height;
	scanf("%d",&n);//輸入一個整數
	int i;
	for(i=0;i<n;i++){
		scanf(" %c %lf",&x,&height);//在for循環中輸入性別和體重
		if(x == 'M')//若為男性
		printf("%.2f\n",height / 1.09);//輸出計算所得的女性身高
		if(x == 'F')//若為女性
		printf("%.2f\n",height * 1.09);//輸出計算所得的男性身高
	}
	return 0;
}

  2.設計思路

  (1)文字描述

    第一步:分別定義一個可輸入字母的類型和一個可輸入數字的類型

    第二步:在for循環中分別輸入性別和體重

    第三步:輸入若為男性則根據(height / 1.09)輸出計算所得的最佳女性身高

    第四步:輸入若為女性則根據(height * 1.09)輸出計算所得的最佳男性身高

  (2)流程圖

  3.錯誤提示

  4.解決方法

  查閱了部分資料,將for循環中定義性別的字母替換為%c(char對應着%c)

四.總結

  1.總結

  a.所學內容

  (1)有關分支結構的一些必要步驟

  (2)有關for,while循環的一些知識

  b.遇到問題

  (1)如何定義素數

  (2)如何四舍五入

  (3)怎么定義字母

  c.解決方法

  (1)計算每一步都需要考慮是否加全

  (2)在所得結果上加上0.5就會在輸出的整數上達到四舍五入的結果

  (3)計算與素數有關的問題時要定義isPrime等於何值時時為素數,從而計算素數的和還有平均數

  (4)要考慮isPrime不等於0時的情況

  (5)int 是整形數據,int a = 3;這里int 是類型, a 是整形變量,3是賦值;char s = 'A'; char是字符類型,s是字符型變量,A是賦值給變量s;

  2.點評

徐鳳隆的作業

楊仕奇的作業

李銳的作業

 

  3.表格

周數 此周代碼行數/行 碼代碼所用時長/h 所寫博客字數/字 寫博客所用時長/h 所涉及的知識點
第9周 2800 13 0 有關分支結構的知識
第10周 3200 15 0 有關四則運算的知識
第11周 3500 15.5 0 有關while,for循環的知識 
第12周 3500 15.5  1000  5 加深對循環的知識 

  折線圖

 

 


免責聲明!

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



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