要求二
一,計算分段函數
1,實驗代碼
#include <stdio.h> int main(){ float x; float y; scanf("%f",&x); if (x!=0) y = 1.0/x; else printf("f(%.1f) = %.1f",x,y); return 0; }
2.設計思路
第一步:首先定義兩個浮點型變量x,y(因為題目要求保留一位小數,故用float型變量)
第二步:用scanf函數輸入x
第三步:確定使用if else型函數,然后確定好范圍,輸入判斷條件若x不等於0,y=1.0/x;若x=0,y=0
第四步:輸出結果,即輸出y的值
3.遇到的問題及解決方法
遇到的問題:編譯沒有錯誤但輸出結果並不是f(10)=0.1
解決方法:開始沒有理解題目要求,后發現f(x)中的x與輸入的值是一致的,然后將f(x)中的x應改成%d,輸出結果就是f(10)=0.1
4.運行結果圖
5.程序框圖
6.提交列表
二.A除以B
1.實驗代碼
#include <stdio.h> int main(){ int a,b; float c; scanf("%d %d", &a, &b); c = (float)a / b; if (b = 0) printf("%d/0=Error", a); if (b < 0) printf("%d/(%d)=%.2f", a, b,c); if (b>0) printf("%d/%d=%.2f", a, b,c); return 0; }
2.設計思路
第一步:定義兩個整型變量分子a,分母b和一個浮點型變量商c(題目要求a,b為整數所以定義為整形,要求結果保留小數所以c定義為浮點型)
第二步:用scanf函數輸入a,b
第三步:確定使用if else函數,在確定好范圍,並輸入運算公式,c=a/b
第四步:輸入判斷條件b=0/b<0/b>0
第五步:輸出結果,即a/b等於幾
3.遇到的問題及解決方法
遇到的問題:輸入數字后無法輸出結果
解決方法:經檢查發現第一個判斷條件b=0在程序中應寫成b==0,而b=0在程序中是賦值的意思,改正后問題就解決了
4.運行結果圖
5.程序框圖
6.提交列表
三.階梯電價
1.實驗代碼
#include<stdio.h> int main() { float use,cost; scanf("%f",&use); if(use<0) printf("Invalid Value!"); else { cost=use*0.53; if(use>50) cost+=0.05*(use-50); printf("cost = %.2f",cost); return 0; }
2.設計思路
第一步:定義兩個浮點型變量use和cost,(題目要求保留兩位小數所以二者都用浮點型),use為用電的多少,cost為應支付的金額數量
第二步:用scanf函數輸入用電量多少use
第三步:確定使用if else函數的嵌套結構並寫出判斷條件(use<0和use>50)和相應范圍內的運算公式
第四步:輸出結果,即輸出應花多少錢cost
3.遇到的問題及解決方法
遇到的問題:提示else后的括號有錯誤
解決方法:檢查過程中並沒有發現錯誤,后再課上做的練習中找到了類似的題目,發現使用if else的嵌套結構若else中還有判斷條件須將其括起來,即printf后缺一個括號,加上就正確了
4.運行結果圖
5.程序框圖
6.提交列表
四.出租車計價
1.實驗代碼
#include <stdio.h> int main() { float s,p1,p2,p; int t,n; scanf("%lf%d",&s,&t); if (s<=3) p1=10; else if(s>3 && s<=10) p1=10+2*(s-3); else if(s>10) p1=24+3*(s-10); if (t<5) p2=0; else if(t>=5) n=t/5; p2=n*2; p=p1+p2; printf("%.lf\n",p); return 0; }
2.設計思路
第一步:定義兩個浮點型變量s,p1,p2,p兩個整型變量t,n(題目中費用和路程都要求保留小數,所以s,p,p1,p2用浮點型,時間和n都是整數,所以用整型),s表示路程,p1,p2表示在一定范圍內花的錢,p表示總費用,t表示時間,n表示有多少個五分鍾
第二步:用scanf函數輸入路程s和時間t
第三步:確定使用if和else if結構,寫出判斷條件和相應路程范圍內的車費運算公式
第四步:輸出結果,即最后一共花的錢p
3.遇到的問題及解決方法
遇到的問題:開始只會寫到第一個else if,后面就不會做,然后自己上網查找,最后按照網上說的寫代碼,但是輸出結果不正確
網上找到的截圖
解決方法:將最后一個else if 中的前兩個運算公式括起來就好了
4.運行結果圖
5.程序框圖
6.提交列表
要求三
五,上傳文件截圖
六,git地址:
時間 | 代碼行數 | 時間1(min) | 博客字數 | 時間2(min) | 知識點 |
2017.10.26 | 144 | 218 | 309 | 64 | if else結構,字符型數據的基礎知識 |
