1.實驗代碼
#include <stdio.h> #include<math.h> int main() { double x,result; scanf("%lf",&x); if(x<0) { result=pow(x+1,2)+2*x+1/x; }else { result=pow(x,0.5); } printf("f(%.2lf) = %.2lf",x,result); return 0; }
2.設計思路
(1)文字描述
第一步:調用函數。定義兩個變量x和result。
第二步:輸入x。
第三步:如果x,<0,result=pow(x+1,2)+2*x+1/x。否則, result=pow(x,0.5)。
第四步:輸出f(x)=result的值。x和result保留兩位小數。
(2)流程圖
3.本題調試過程碰到問題及解決辦法
(1)問題:沒有插入聲明數學的代碼,沒有保留小數點后兩位。
(2)解決辦法:在開頭打入代碼#include<math.h>
循環1 7-1 統計學生平均成績與及格人數
1.實驗代碼
#include<stdio.h> int main() { int n,i,a, count=0, sum=0; float d; scanf("%d",&n); if(n==0) { printf("average = 0.0\n"); printf("count = 0"); }else { for(i = 0; i < n; i++) { scanf("%d",&a); sum=sum+a; if(a>=60) count++; } d=(float)sum/(float)n; printf("average = %.1f\n",d); printf("count = %d", count); } return 0; }
2.設計思路
(1)文字描述
第一步:調用函數。定義三個變量n,i,a。
第二步:輸入n,a。
第三步:如果n=0,average=count=0;如果a>=60,average=sum/n。
第四步:輸出成績均值(average)和及格人數(count)。
(2)流程圖
3.本題調試過程碰到問題及解決辦法
(1)問題:忘記n=0的情況了,沒有敲打n=0情況下的代碼。平均值沒精確到小數點后一位。
(2)解決辦法:加入n=0情況下的代碼。如下
if(n==0)
{
printf("average = 0.0\n");
printf("count = 0");
}
要打入float.
循環2 7-1 找出最小值
1.實驗代碼
#include<stdio.h>
int main()
{
int n,i,a,min;
scanf("%d",&n);
scanf("%d",&a);
min=a;
for(i=1;i<n;i++)
{
scanf("%d",&a);
if(min>a)
min=a;
}
printf("min = %d",min);
return 0;
}
2.設計思路
(1)文字描述
第一步:調用函數。定義三個變量n,i,a。
第二步:輸入n,然后把n個數中最小的數賦值給a。
第三步:輸出最小值。
(2)流程圖
3.本題調試過程碰到問題及解決辦法
在編程時,沒有太大的問題,但要注意的是當最小值為負數時的情況和for循環的后面不加分號。
三.總結
所學內容
(1)學習了簡單的編程,比如"hello world",比較大小等
(2)學習了分支結構中switch,break,和if,else的語句
(3)學習了循環結構當中while,do-while和for的循環語句,和他們之間的轉換
(4)學習了函數當中的局部變量和全局變量
問題
(1)在循環結構中,我很難區分for,while,do-while這三種語句,不確定在什么情況下用哪種語句比較好,
(2)還有在編程時,有時會在for的循環語句后面加分號,
(3)有時也會馬虎的拼寫錯或忘加分號,
(4)還有忘記保留小數后幾位的形式等很多錯誤,
辦法
我會努力的,爭取每天多打一些代碼,多多的練習,積累更多的編程方法。同時也要經常復習以前做過的題,進行反復的練習,要理論與實踐相結合。
2.評論同學的作業
評論王文琪:https://www.cnblogs.com/qqovo/p/10021305.html
評論謝雨欣:https://www.cnblogs.com/xyxxl/p/10000609.html
評論蘇欣:https://www.cnblogs.com/suxin18945116750/p/10015615.htm
3.表格
4折線圖