日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

C语言第三次博客作业---单层循环结构

發(fā)布時(shí)間:2023/12/18 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言第三次博客作业---单层循环结构 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、PTA實(shí)驗(yàn)作業(yè)。

題目1

1.實(shí)驗(yàn)代碼

int n,i; double height1,height2;//1為輸入身高,2為輸出身高。 char sex; //1<=height1<=3; //N<=1; scanf("%d",&n); while(n--){getchar();scanf("%c%lf",&sex,&height1);switch(sex){case 'M':height2=height1/1.09;break;case 'F':height2=height1*1.09;break;}printf("%.2f\n",height2); }return 0;

2.設(shè)計(jì)思路

主要描述題目算法??梢杂梦淖置枋?#xff1a;

  • 第一步:定義height1為輸入身高,height2為輸出身高,sex為性別,n為人數(shù)。
  • 第二步:輸入人數(shù)。
  • 第三步:輸入性別和輸入身高,若性別男height2=height1/1.09;break;,若為女height2=height1*1.09;break;
  • 第四步:輸出height2的值。
  • 第五步:重復(fù)步驟三,知道n>0.

    3.本題調(diào)試過(guò)程碰到問(wèn)題及解決辦法

  • (1)第一次輸出后需要一個(gè)回車,應(yīng)用getchar讀掉回車,這點(diǎn)沒(méi)注意到。
  • (2)case后面的字符需要用‘’引出來(lái) 否則編譯錯(cuò)誤。

    4.本題PTA實(shí)驗(yàn)結(jié)果

    貼圖展示:

題目2

1.實(shí)驗(yàn)代碼

int i,a,n,s; s=0; scanf("%d %d",&a,&n);//輸入a,n for(i=1;i<=n;i++)s=i*a+s*10;//計(jì)算公式printf("s = %d",s);

2 設(shè)計(jì)思路

  • (1)定義整型變量i,n,a,s存放計(jì)算結(jié)果
  • (2)輸入a,n
  • (3)計(jì)算s=ia+s10
  • (4)重復(fù)步驟3,直到i>n時(shí)結(jié)束循環(huán)
  • (5)輸出s

    3.本題調(diào)試過(guò)程碰到問(wèn)題及解決辦法

  • 1.[](http://images2017.cnblogs.com/blog/1231997/201711/1231997-20171102182159060-643569876.png

)
看題目計(jì)算a+aa+aaa+...+aa..a的和以為是a*a的意思,所以就很疑惑為什么題目的例子會(huì)輸出246的答案。

  • 2.想了很久還是沒(méi)懂這個(gè)題,就求助了室友,才明白aa是22的意思。

    題目3

    1.實(shí)驗(yàn)代碼

int i,number,min,n; scanf("%d",&n); scanf("%d",&number); //輸入number min=number; //賦值min為number for(i=1;i<n;i++){ scanf("%d",&number); //再次輸出number if(min>number) //比較min和number的大小 min=number; } printf("min = %d",min); //輸出min

2 設(shè)計(jì)思路

  • (1)定義整型變量i,n,number表示輸入的數(shù)字,min代表最小值
  • (2)輸入n.number,賦值min=number
  • (3)再次輸入number,若number小于min,賦值min=number
  • (4)重復(fù)步驟3,直到i<n結(jié)束循環(huán)
  • (5)輸出min

    3.本題調(diào)試過(guò)程碰到問(wèn)題及解決辦法

    [](http://images2017.cnblogs.com/blog/1231997/201711/1231997-20171102183202607-2020958412.png

)
通過(guò)調(diào)試發(fā)現(xiàn)忘了對(duì)min賦值,雖然對(duì)于這個(gè)題沒(méi)有影響,但有可能這種細(xì)節(jié)不注意,對(duì)于以后的編程有一定的影響。

題目4

1.實(shí)驗(yàn)代碼

int i,N,number,n;scanf("%d%d",&number,&N);//輸入電腦產(chǎn)生的數(shù)和循環(huán)次數(shù)for(i=1;i<=N;i++){scanf("%d",&n);//輸入玩家猜的數(shù)字if(n>number)//n大于numberprintf("Too big\n");else if(n<number&&n>0)//n大于0且小于numberprintf("Too small\n");else if(n==number&&i==1){//n等于number且i等于1printf("Bingo!\n");break;}else if(n==number&&i>1&&i<=3){//n等于number且i等于2或3printf("Lucky You!\n");break;}else if(n==number&&i>3&&i<=N){//n等于number且i大于3小于Nprintf("Good Guess!\n");break;}else if(n<0){//n小于0printf("Game Over");break;}}if(n!=number&&i>N)//n不等于number且i大于Nprintf("Game Over\n");

2 設(shè)計(jì)思路

  • (1)定義整型變量i,N為可以猜的次數(shù),number為電腦隨機(jī)產(chǎn)生的數(shù)字,n為玩家輸入的數(shù)字
  • (2)輸入number,N
  • (3)輸入n為玩家輸入的數(shù)字
  • (4)當(dāng)i<=N時(shí),若n大于0小于number, 輸出Too small. 若n 大于number, 輸出Too big. 若i=1且n等于number 輸出Bingo!
    若i 等于1或2且n 等于number 時(shí),輸出Lucky you! 若i 大于3小于等于N 且n 等于number 時(shí)輸出Good Guess! 若n 小于0時(shí)輸出Game Over
  • (5)當(dāng)i>=N且n不等于number時(shí)輸出Game Over

    3.本題調(diào)試過(guò)程碰到問(wèn)題及解決辦法

  • 1.[](http://images2017.cnblogs.com/blog/1231997/201711/1231997-20171102184432013-180433594.png

)
發(fā)現(xiàn)如果猜中后程序并沒(méi)有結(jié)束,通過(guò)調(diào)試想起來(lái)沒(méi)有加break語(yǔ)句跳出循環(huán)。

  • 2.對(duì)于輸出Too small的條件沒(méi)有嚴(yán)謹(jǐn),忘記n大于0的條件,輸入負(fù)數(shù)的時(shí)候會(huì)輸出Too small的情況。

題目4.

1.實(shí)驗(yàn)代碼

int main() //60/120=1/2 {int number1,number2; scanf("%d/%d",&number1,&number2); int a,b,c; a=number1,b=number2;//a=60,b=120 if(a%b==0||b%a==0){ while(c!=0){if(a<b){c=a%b;//c=60%120=60//c=60%60=0a=b;//a=120//a=60b=c;}//b=c=60//b=0else if(a>b){c=b%a;b=a;a=c;} } if(a<b){printf("%d/%d",number1/a,number2/a); } else{printf("%d/%d",number1/b,number2/b); }} else { printf("%d/%d",number1,number2);} return 0;

2 設(shè)計(jì)思路

主要描述題目算法??梢杂梦淖置枋?#xff1a;

  • 第一步:定義number1存放分子,number2存放分母
  • 第二步:如果可化簡(jiǎn),a>b,則c=a%b,a=b,b=c
  • 第三步:循環(huán)2得到結(jié)果
  • 第四步:a<b,則c=b%a;b=a;a=c;
  • 第五步:循環(huán)4得到結(jié)果

3.本題調(diào)試過(guò)程碰到問(wèn)題及解決辦法。

  • (1)運(yùn)行發(fā)現(xiàn)無(wú)論輸入什么結(jié)果都為1/1,調(diào)試后發(fā)現(xiàn)是算法中有錯(cuò)誤。
  • (2)運(yùn)行發(fā)現(xiàn)當(dāng)a大于b時(shí)不會(huì)進(jìn)行化簡(jiǎn),調(diào)試發(fā)現(xiàn)else被鑲嵌在if里,也就是if{}的有漏

    4.本題PTA實(shí)驗(yàn)結(jié)果。

二、截圖本周題目集的PTA提交列表及最后排名。(2分)

1.提交列表:





2.最后排名:

三、本周學(xué)習(xí)總結(jié)(1分)

1.你學(xué)會(huì)了什么?
我學(xué)會(huì)了循環(huán)結(jié)構(gòu)的簡(jiǎn)單用法
2.本周的內(nèi)容,你還不會(huì)什么?
對(duì)于循環(huán)的算法還不是很了解,應(yīng)學(xué)習(xí)更多算法。
3.你碰到什么困難,打算如何解決?
(1)多次出現(xiàn)編譯錯(cuò)誤,解決方法為在Dev C++中運(yùn)行,看看提示你除了什么錯(cuò)誤,實(shí)在不行發(fā)群上問(wèn)老師助教同學(xué)。
(2)格式錯(cuò)誤(答案錯(cuò)誤)是最常見(jiàn)的問(wèn)題,解決方式為將輸出樣例復(fù)制粘貼下來(lái),還是錯(cuò)誤就向老師助教尋求幫助。
(3)部分正確是最難受的,說(shuō)明你成功完成了大部分,但是還有部分沒(méi)完成,這時(shí)候應(yīng)該靜下心來(lái)好好想想是什么地方出了問(wèn)題,可以重新敲一次代碼,和原來(lái)進(jìn)行核對(duì)

轉(zhuǎn)載于:https://www.cnblogs.com/linyipeng/p/7733057.html

總結(jié)

以上是生活随笔為你收集整理的C语言第三次博客作业---单层循环结构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。