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


    一、PTA实验作业

    题目1

    1.代码

        int n;
        char sex;
        float height;
        scanf("%d",&n);
        for (int i=0;i<n;i++) {
            scanf("\n%c %f",&sex,&height);
            if (sex=='M')
                printf("%.2f\n",height*1.0/1.09);
            else if(sex=='F') 
                printf("%.2f\n",height*1.09);
            else 
               printf("error\n");
        }
    

    2.设计思路

    • (1)定义一个整型变量n代表查询的用户数,定义一个字符型变量sex代表用户性别,定义一个浮点型变量height代表用户身高。
    • (2)输入查询用户数n。
    • (3)输入用户性别sex,身高height。
    • (4)若sex=='M',则输出height*1.0/1.09(保留两位小数)。
    • (5)若sex=='F',则输出height*1.09(保留两位小数)。
    • (6)若输入的sex为非法字符,则输出error。
    • (7)i=i+1。
    • (8)重复步骤三,直到i>n时,结束循环。

    3.本题调试过程碰到问题及解决办法

    • (1)无。

    4.本题PTA实验结果

    贴图展示。如图:

    题目2

    1.代码

        int a,n,i,s,item;
        scanf("%d %d",&a, &n);
        s=0;
        item=a;
        for(i=1;i<=n;i++){
        	s=s+item;
        	item=item*10+a;
    	}
        printf("s = %d",s);
    

    2.设计思路

    • (1)定义五个整数型变量a代表不超过9的正整数,i代表环境变量,n代表a的最大个数,item代表第i项的特殊a串数列,sum代表特殊a串数列的和。
    • (2)输入整数a,n。
    • (3)s=0,item=a。
    • (4)累加s,s=s+item。
    • (5)计算第i项的item,item=item*10+a。
    • (6)i++。
    • (7)重复步骤4,直到i>n,结束循环。
    • (8)输出s。

    3.本题调试过程碰到问题及解决办法

    • (1)item的表达错误,结果格式错误。
    • 解决办法:修改计算方法。



    4.本题PTA实验结果

    贴图展示。如图:

    题目3

    1.代码

        int n,number,i,min;
        scanf("%d",&n);
        if(n==1){
           scanf("%d",&number);
           printf("min = %d",number); 
        }
      else if(n>1){
    	for(i=1;i<=n;i++){
        	scanf("%d",&number);
        	if(number<min)
        	min=number;
    	}
    	printf("min = %d",min);
        }
    

    2.设计思路

    • (1)定义四个整型变量n代表输入数据的数量,number代表输入的数据,i代表环境变量,min代表最小值。
    • (2)输入整数n。
    • (3)若n=1,则直接输出number。
    • (4)若n>1,则输入number。
    • (5)若number<min,则将number的值赋予min。
    • (6)若number>min,则不执行。
    • (7)i++.
    • (8)重复步骤4,直到i>n,结束循环。
    • (9)输出min。

    3.本题调试过程碰到问题及解决办法

    • (1)没有考虑n为1的情况。
    • 解决方法:通过pta的问题分析补善代码。


    4.本题PTA实验结果

    贴图展示。如图:

    题目4.

    1.代码

        int result,times,i,guess;
        scanf("%d %d",&result, &times);
        for(i=1;i<=times;i++){
        	scanf("%d",&guess);
        	if(guess<0){
        	i=times+1;
        	break;
        }
        	if(guess<result)
        	printf("Too small\n");
        	else if(guess>result)
        	printf("Too big\n");
        	else
        	break;
    		}
    	 if(i==1)
    	printf("Bingo!");
    	else if(i<=3)
    	printf("Lucky You!");
    	else if(i>3&&i<=times)
    	printf("Good Guess!");
    	else
    	printf("Game Over");
    

    2.设计思路

    • (1)定义四个整型变量result代表随机数,times代表猜的最大次数,i代表环境变量,guess代表猜的数。
    • (2)输入正整数result,times。
    • (3)输入guess。
    • (4)若guess<0,i=items+1,跳出循环。
    • (5)若guess<result,则输出Too small。
    • (6)若guess>result,则输出Too big。
    • (7)若guess=result,则跳出循环。
    • (8)i++。
    • (9)重复步骤4,直到i>times,结束循环。
    • (10)若i=1,则输出Bingo!
    • (11)若1<i<=3,则输出Lucky You!
    • (12)若3<i<=times,则输出Good Guess!
    • (13)若i为其他则输出Game Over。

    3.本题调试过程碰到问题及解决办法

    • (1)没有看清题目要求,在输入负数时直接退出。
    • 解决方法:对输入的guess进行判断,若不符合则直接Game over。

    4.本题PTA实验结果

    贴图展示。如图:

    二、截图本周题目集的PTA提交列表及最后排名。

    PTA提交列表

    PTA排名

    三、本周学习总结

    1.你学会了什么?

    • (1)学会了while,for,do-while几种循环结构的基本使用。
    • (2)学会了如何选择恰当的循环结构敲写代码。
    • (3)懂得了scanf语句输入时的一些注意点。
    • (4)利用flag来进行变化。

    2.本周的内容,你还不会什么?

    • (1)循环结构较为繁琐,容易犯错且代码有时较为繁琐。
    • (2)结构使用不够灵活。

    3.分支结构上机考试总结

    • 在考试时因为对switch结构的使用不够熟练,导致一些语法忘记,所以平时应该将各种结构都掌握并且熟练使用,而不是单一的使用一种结构。
  • 相关阅读:
    C语言博客05--指针
    网络1911、1912 D&S第2次作业--批改总结
    JAVA课程设计——愤怒的小鸟(个人)
    JAVA课程设计——愤怒的小鸟(团队)
    网络1911、1912 C语言第1次作业批改总结
    Python--安装第三方库的方法
    Eclipse中文插件安装教程
    DS博客作业08--课程总结
    DS博客作业07--查找
    DS博客作业06--图
  • 原文地址:https://www.cnblogs.com/oracler0103/p/7772552.html
Copyright © 2020-2023  润新知