C語言基礎課第二次作業


題目7-1 統計學生成績

  

  1.實驗代碼

#include<stdio.h>
int main(void){
	int N,i,A=0,B=0,C=0,D=0,E=0,f;
	scanf("%d",&N);
for(i=1;i<=N;i++){
	scanf("%d",&f);
	if(f>=90){
		A=A+1;
	}
	else if(f>=80&&f<90){
		B=B+1;
	}
		else if(f>=70&&f<80){
			C=C+1;
		}
		else if(f>=60&&f<70){
			D=D+1;
		}
		else{
			E=E+1;
		}
	}
	printf("%d %d %d %d %d",A,B,C,D,E);
	return 0;
}

  2.設計思路

(1)文字描述

  第一步:定義N,i,A=0,B=0,C=0,D=0,E=0,f。

  第二步:輸入N代表for循環循環幾次。

  第三步:使用for循環,for(i=1;i<=N;i++)。

  第四步:每次循環scanf一個數字,並用else if語句判斷ABDE哪個檔次。

  第五步:輸出ABCDE的值。

 

  (2)流程圖

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

   沒有問題。

 

7-2 計算油費 (15 分)

  1.實驗代碼

#include<stdio.h>
int main(void){
    int a,b;char c;double sum,e,f;
    scanf("%d %d %c",&a,&b,&c);
    if(b==90)
        e=6.95;    
    else if(b==93)
        e=7.44;
    else
        e=7.93;
    
  switch(c)
    {
        case 'm' : f=0.95; break;
        case 'e' : f=0.97; break;
    }

    sum=a*e*f;
    printf("%.2f",sum);
    return 0;
} 

  2.設計思路

  (1)文字描述:

  第一步:定義整數a,b。定義字符c。定義雙精度數字sum,e,f。

  第二步:輸入兩個整數與一個字符分別存於a,b,c。

  第三步:用else if判斷b的值,使e等於對應幾號油的價錢。

  第四部:用switch判斷字符c所對應的服務的價錢存於f。

  第五步:sum=a*e*f,並輸出sum。

 

    (2)流程圖

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

 

上圖習慣性的把case后的:打成;

這個一直很困惑,以為是電腦的問題,后來看到之前打的代碼發現是scanf("%d %d %c",a,b,c);中少打了&號。

二、總結和學習進度條

1.這幾周學習自定義函數,do while,switch,for語句等。

遇到問題:我會忘記%d,%c,%f的區別;語句運用上格式模糊,要經常去看書本,於是通過反復地翻書來加深印象。

2.王肖作業評價超鏈接

祝傳令作業評價超鏈接

唐衛棟作業評論超鏈接

3.


免責聲明!

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



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