第六周编程总结

本次作业所属课程

C语言程序设计||

本次作业要求

https://edu.cnblogs.com/campus/zswxy/MS/homework/2829

我在这个课程的目标是

学会熟练使用指针

本次学习在哪些具体方面帮组我实现目标

学会画流程图

参考文献

C primer plus第六版

 一、基础题

题目一:求两数平方根之和

1)实验代码

#include<stdio.h>
#include <math.h> 
double fun (double *a, double *b); 
int main (void )
{ 
double a, b, y;

scanf ("%lf%lf", &a, &b );

   y=fun(&a, &b);
   printf ("y=%.2f\n", y );
return 0; }
double fun (double *a, double *b) { double t ; t=sqrt(*a)+sqrt(*b); return t; }

2)设计思路

 

 

 

3)本题调试过程中遇到的问题及解决方案

这个题目一遍过了,难度不大

4)运行结果截图

 

题目二:利用指针返回多个函数值

1)实验代码

#include<stdio.h>
int max_min(int *a,int *b,int str[],int n);
int main(void)
{
int n,str[10000],i,max,min;
scanf(
"%d",&n);
for(i=0;i<n;i++) { scanf("%d",&str[i]); } max_min(&max,&min,str,n);
printf(
"max = %d\n",max); printf("min = %d",min);
return 0; }
int max_min(int *a,int *b,int str[],int n) { int i,temp=0;
for(i=1;i<n;i++) { if(str[temp]>str[i]) temp=i; } *b=str[temp]; temp=0;
for(i=1;i<n;i++) { if(str[temp]<str[i]) temp=i; } *a=str[temp]; }

 

2)设计思路

 

 

3)本题调试过程中遇到的问题及解决方案

这个题目问题不是特别大,在函数定义那里出了点小问题,换一个新的一个数组名就解决了

4)运行结果截图

二、预习题

题目一:最小数放前最大数放后

1)实验代码

#include<stdio.h>
void input(int *arr,int n);
void max_min(int *arr,int n);
void output(int *arr,int n);
int main()
{
 int a[10];
input(a,10);
 max_min(a,10);
 output(a,10);
 return 0;
}
void input(int *arr,int n)
{
  int i;
  
  for(i=0;i<n;i++)
  {
    scanf("%d",&arr[i]);
  }
}

void max_min(int *arr,int n)
{
  int i,j,temp;
  
  for(i=1;i<n;i++)
  {
    if(arr[i]>arr[temp])
    temp=i;
  }
  
 j=arr[n-1];
 arr[n-1]=arr[temp];
 arr[temp]=j; 
 temp=0;
 
 for(i=1;i<n;i++)
  {
    if(arr[i]<arr[temp])
    temp=i;
  }
  
  j=arr[0];
  arr[0]=arr[temp];
  arr[temp]=j;
}

void output(int *arr,int n)
{
    
int i;

   for(i=0;i<n;i++)
    {
    printf("%3d",arr[i]);
    }
}

 

 

2)设计思路

 

 

3)本题调试过程中遇到的问题及解决方案

这次的指针我是真的没怎么搞懂,指针的调用和声明那块概念特别模糊

4)运行结果截图

 

 

四、思考题

1)为什么要使用指针?它有什么用

我认为使用指针的目的在于它可以让我们间接的访问各种数据,可以减少我们的代码和工作量
2)指针变量在内存中暂用多大的空间?它的大小由什么决定?

 

 我认为指针变量在内存中所占的空间应该由它的数据类型决定,大小应该是由多个因素共同决定的

 

五、学习进度条

时间

这周所花时间

代码行数

学到的知识简介

目前比较迷惑的问题

第一周

5小时

80

初步了解数组

数组的引用

第二周

6小时

200

指针的了解

完全没听懂老师上课在讲什么,继续努力

第三周

7小时

200

文件与数组的使用

没看到代码运行后文件的内容发生改变

第四周

9小时

120

冒泡法,选择排序法

冒泡法不会

第五周

9小时

120+

字符型数组

把代码改成文件格式

第六周

4小时

130左右

指针

指针的调用

 

六、累积代码行数和博客字数

 

七、结对编程感想

对于这次的结对编程,我感觉到了一些优缺点,假如两个人的实力差距过大,那么势必会导致两个人的效率都降低。还有我认为结对编程时不应该大声说话,声音能够让队友听见就行,而现状我们班的声音是整个楼层中最吵的,这不是我认为的结对编程

 

总结:总的来说,感觉这次老师真的放水了,题目难度设置的比上周的低多了,谢谢琛姐的良苦用心

 

posted @ 2019-04-05 19:47  ღ阿ོ茶꧔ꦿ༊  阅读(221)  评论(2编辑  收藏  举报