zoukankan      html  css  js  c++  java
  • 第三次作业

    https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2359
    第七次作业
    7-3 统计学生平均成绩与及格人数

    1.代码:

    #include<stdio.h>
    int main(void)
    {
      int i=0,N=0,grade=0,count=0,sum=0;
      double average=0;
      scanf("%d",&N);
      for(i=1;i<=N;i++){
        scanf("%d",&grade);
        sum = sum+grade;
        if(grade>=60){
          count++;
        }
      }
      if(N>0)
        printf("average = %.1f
    ",sum*1.0/N);
      else
        printf("average = %.1f
    ",sum*1.0);
      printf("count = %d",count);
      return 0;
      
    }

    2.解题思路:

    1>首先定义5个整形变量 i,N,grade,count,sum和浮点型变量average;

    2>输入N;

    3>进入for循环注明i=1;i<=N;i++;

    4>赋值,令sum = sum+grade;

    5>进入if循环,若grade>=60,则count++;

    6>若N>0;average = sum*1.0/N;若N<=0,则average = sum*1.0;

    7>最后输出count;

    3.流程图:

    结果:

    调试:

    错误调试:

    遇到的问题: 

    1>还是不能准确的找到整形变量和浮点型;

    2>没掌握准确的找到整形的方法,以致不能快速的完成代码的作业;

    3>在进行If判断的时候不知道输出的average是什么,没有明确自己定义的到底是什么含义;

    4>在for和if同时出现的时候还是有一点发蒙;

    解决方法:

    1>在整数型和浮点型的问题上我翻看了课本;

    2>在if与for的处理上我询问了同学;

    3>关于average我上网搜了一下,看到了详解;

     

    第九次作业  
    7-1 求整数的位数及各位数字之和

    1.代码:

    #include <stdio.h>
    int main()
    {
      int b,N,sum;
      scanf("%d",&N);
      b=0;
      sum=0;
        do
        { 
         sum=sum+(N%10);
         b=b+1;
         N/=10;
        } while(N!=0);
       
      
      printf("%d %d",b,sum);
      return 0;
    }

    2.解题思路:

    1>定义整形变量b,N,sum;

    2>输入N;

    3>利用do,while,算出所需数值;

    4>输出b,sum;

    3.流程图:

    结果:

    调试 :

    错误调试:

    遇到的问题: 

    1>不是很明确scanf输入的是那个变量;

    2>对do,while的是使用条件还不是很了解,老是出错;

    3>在刚开始写的时候不知道N/=10是什么意思;

    解决方法:

    通过询问同学将这道题弄清楚了;

    第10次作业
    7-3 掉入陷阱的数字

    1.代码:

    #include<stdio.h>
    int main()
    {
        int num,n1 = 0,n2 = 0,i,j = 1;
        scanf("%d",&num);
        while(num != n1)
        {
            n1 = num;
            for(i = 0,n2 = 0;i < 5; i++)
            {
                n2 += num % 10;
                num /= 10;
            }
            num = n2 * 3 + 1;    
            printf("%d:%d
    ",j,num);
            j++;
        }
        return 0;
    }

    2.解题思路:

    1>定义变量num,n1 = 0,n2 = 0,i,j = 1;

    2>输入变量num;

    3>利用while和for的嵌套以及公式 n2 += num % 10;num /= 10;num = n2 * 3 + 1算出比值; 

    4>输出结果;

    3.流程图:

    结果:

    调试: 

    错误调试:

    小结:

    在这一周我们学习了while和for循环以及套用,也巩固了之前学的内容;虽然现在写代码还是很吃力,但是我相信只要我多敲多练一定能掌握;

    图表

    评论:

    1>李   敖:https://www.cnblogs.com/1a2B3c4D/p/10017402.html

    2>程   旭:https://www.cnblogs.com/chengxu230921/p/10017973.html

    3>王嘉聪:https://www.cnblogs.com/asdwadsxc/p/10028827.html

  • 相关阅读:
    [SCOI 2003] 字符串折叠
    [POJ 3252] Round Numbers
    [ZJOI 2010] 数字计数
    [POJ 2282] The Counting Problem
    [POJ 1191] 棋盘分割
    [POJ 3345] Bribing FIPA
    [POJ 2785] 4 Values whose Sum is 0
    [NOIP 2017] 列队
    [NOIP 2017] 宝藏
    基于Qt Gui的Led控制显示程序
  • 原文地址:https://www.cnblogs.com/xupeixia/p/10022581.html
Copyright © 2011-2022 走看看