第14,15周作业

要求二

题目7-1数组中偶数的和

#include <stdio.h>
int main()
{
    int a[10];
    int i,s=0;
    for(i=0;i<10;i++)
    {
        scanf("%d",&a[i]);
        if (a[i]%2==0)
        {
           s=a[i]+s;
        }
    }
    printf("s=%d",s);
    return 0;
 } 

2.设计思路

(1)题目算法

第一步:定义数组a[10],循环变量i,总和s。

第二步:定义变量初始值s=0;

第三步:找到循环体s=s+a[i],i++;

第四步:输出s。

(2)流程图

3.本题调试过程及解决方法

错误截图

遇到问题:打不出正确结果。

解决方法:自己仔细琢么反复实验,最后败在了没有给s定义初始值上。

题目7-3将数组中的数逆序存放

1.实验代码

#include<stdio.h>
int main()
{
    int n;
    scanf("%d",&n);
    int i,a[n];
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(i=n-1;i>0;i--)
        printf("%d ",a[i]);
    printf("%d",a[0]);
    return 0;
}

2.设计思路

(1)题目算法

第一步:定义变量n,i,a[n];

第二步:输入循环结构(i=0,i<n;i++),并输入a[i];

第三步:输入另一个循环使程序逆向运行。(i=n-1;i<n;i--)

第四步:输出a[i]以及a[0];

(2)流程图

3遇到的问题及解决方法

错误截图

遇到的问题:没有完全理解提意。

解决方法:仔细阅读题目,询问了同学(他和我说直接定义一个i,后面的循环体需要换成(i=n-1,i<n;i--)),最后成功编译出正确结果.

7-5冒泡法排序

1实验代码

#include <stdio.h>
int main()
{
  int N,K,i,j,x,t;      

scanf("%d %d",&N,&K);            
int a[N];
  for(i=0;i<N;i++)
  {
    scanf("%d",&a[i]);
  }
   for(i=0;i<N;i++)
   {
      for(j=0;j<N-i-1;j++)
      {
        if(a[j+1] <a[j])
        {
          t=a[j];
          a[j]=a[j+1];
          a[j+1]=t;
        }
      }
    x++;
    if(x==K)
    break;
    }
    for(i=0;i<N;i++)
    {
        if(i<N-1)
        {
        printf("%d ",a[i]);
        }
        else
        {
          printf("%d",a[i]);
        }
    }
return 0;
}

2 设计思路

(1)题目算法

第一步:定义循环变量i,j以及循环次数k,N,常变量t,数组a[N];

第二步:在(i=0;i<N;i++)的条件下输入a[i];

第三步:比较a[0]与a[1];如果a[0]>a[1]则交换,否则不交换,以此类推直到把最大值放到最后;

第四步:在依次进行第二趟排序最大值放到第n-1个位置,共进行n-1趟排序。

第五步:输出a[i];

(2)流程图

3遇到的问题及解决方法

错误截图

遇到的问题:不知道如何才能出现第几次排序出现的结果

解决方法:增加一个变量x,在循环之后输入,如果x=k,则直接跳出;

7-3 求矩阵的局部极大值

1.实验代码

#include <stdio.h>
int main()
{
    int M;
    int N;
    scanf("%d %d",&M,&N);
    int a[M][N];
    int i,j,m,n,flag=0;
    for(i=0;i<M;i++)
    {
        for(j=0;j<N;j++)
        {
            scanf("%d",&a[i][j]);
         }
    }
    for(i=1;i<M-1;i++)
    {
        for(j=1;j<N-1;j++)
        {
            if(a[i][j]>a[i-1][j]&&a[i][j]>a[i][j-1]&&a[i][j]>a[i][j+1]&&a[i][j]>a[i+1][j])
            {
                m=i+1;
                n=j+1;
                printf("%d %d %d\n",a[i][j],m,n);
                flag = 1;
            }
        }
    }
    if(flag == 0)
    {
        printf("None %d %d",M,N);
    }
    return 0;
 } 

2.设计思路

(1)题目算法

第一步:定义变量i,j,m,n,,M,N,t,flag=0;

第二步:输入M,N,输入a[i][j];

第三步:把满足的条件放在循环中(中间数大于四周上下左右的数);

第四步:如果flag=0则输出“None M N”否则输出“a[i][j],m,n."

(2)流程图

3.遇到问题及解决方法

错误截图

遇到的问题

输出结果串码打出

解决问题方法

把scanf()放到a[M][[N]前面就可以了。

要求三

git地址

https://git.coding.net/hezongyan321/text.git

项目截图

要求四

个人总结

(1)本周你学习了哪些内容?

一维数组

二维数组

收获了什么?

懂得如何定义数组初始化。

(2)那些是难点?

冒泡排序和选择排序就是难点,很难理解,最后只能靠背。

哪些知识点还不明白?

不懂冒泡排序第二层循环的意义;

选择排序也看不太明白

这两个排序的流程图不太会画。

要求五

1.我评论的博客

王佳乐

http://www.cnblogs.com/wjl1124/p/7966897.html

姚爽

http://www.cnblogs.com/yaoshuang/p/7875318.html

孙娜

http://www.cnblogs.com/sun-na-/p/7875394.html

2.表格及折线图

时间: 2024-11-06 22:14:08

第14,15周作业的相关文章

第14.15周作业

要求一:已完成 要求二: 题目7-1 输出数组元素 1.实验代码 #include<stdio.h> int main() { const int N=10; int i,a[N],b[N],n; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=1;i<n;i++) { b[i]=a[i]-a[i-1]; } for(i=1;i<n;i++) {

第14/15周作业---郭志康

7-3 求整数序列中出现次数最多的数 #include<stdio.h> int main() { int N,i,j,count=0; scanf("%d",&N); int num[N]; for(i=0;i<N;i++) { scanf("%d",&num[i]);//给数组一一赋值 } int sum=0,index=0;//引进sum的目的:为了防止下一趟循环的count值与这本次累加 //所以每次都需要将count归零,

第 14 15周作业

要求一: 7-3 将数组中的数逆序存放 一 实验代码: #include <stdio.h> int main() { int i, n, swap, array[10]; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &array[i]); for (i = 0; i < n/2; i++) { swap = array[i]; array[i] = array[n

14、15周作业

要求二 题目7-4 fibonacci 1.实验代码 #include <stdio.h> int main(void) { int i; int fib[12]; fib[0]=1; for(i=1;i<12;i++) fib[i]=fib[i-1]+fib[i-2]; for(i=0;i<12;i++){ printf("%6d",fib[i]); if((i+1)%3==0) printf("\n"); } return 0; } 2.

第14、15周作业。

2.(1)第一步:利用循环计算平均值.     第二步:将每个数与平均值比较并将小于平均值的输出.   (2) 需要定义的a[i]的值没有放到正确位置,经过反复实验解决. 二. 1. #include<stdio.h> #define m 4 #define n 4 int main() { int a[m][n]={0},i,j,sum=0; for(i=0;i<4;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]);

第14、15周作业

---恢复内容开始--- #include<stdio.h> int main() { int n,i,a[10],b=0; scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&a[i]); } for(i=0;i<n;i++){ if(a[0]<a[i]){ a[0]=a[i]; b=i; } } printf("%d %d",a[0],b); return

第14丶15周作业

一.题目: 1. 求矩阵各行元素之和: 代码: #include<stdio.h> int main() { int m,n,i,j; scanf("%d %d",&m,&n); int a[m][n],b[i]; for ( i = 0; i < m;i++ ) { for ( j = 0; j < n;j++ ) { scanf("%d", &a[i][j]); } } for ( i = 0; i < m;

软件工程第三周作业:微软必应词典案例分析

0x01 :微软必应词典案例分析 0x0104 :微软必应词典功能性BUG说明       0x010404 : BUG – 1 – 模块功能未实现 运行环境或平台 iOS 9.0.1 必应词典软件版本 版本3.5,版权所有@2014 Microsoft 软件测试BUG特征 [优先级1]应用程序模块功能未实现,包含整个模块不能正常运行 重现步骤 1. 打开必应词典软件进入设置中,选择跨软件查词设置,设置为打开和一直运行 2. 按照使用说明所说随意打开某一App(这里选择提醒事项) 3. 按使用说

python基础周作业

python基础周作业 1.执行python脚本的两种方法 脚本前面直接指定解释器 在脚本开始前声明解释器 2.简述位,字节的关系 每一个字节占用八个比特位 3, 简述ascii.unicode.utf- ‐8.gbk的关系 utf--‐8 <-- unicode <-- gbk <-- ascii 按此方向兼容 4..请写出"李杰"分别用utf- ‐8和gbk编码所占的位数 "李杰" 占用utf -8 占6字节 , gbk 占用4字节 5.pyt