第一题:

            计算两数的和与差

设计思路:

                  1:看题目:主函数与函数声明,知道它要你干什么2:理解与分析:在main中,定义两个实数a,b;要你求两数的和与差3:解答:通过调用函数sum_diff,指针psum接收&sum,指针pdiff接收&diff,实数op1接收实数a,实数op2接收实数b,计算两数的和与差:*psum=op1+op2;,*pdiff=op1-op24:输出

流程图:

实验代码:

 void sum_diff( float op1, float op2, float *psum, float *pdiff )
{*psum=op1+op2;*pdiff=op1-op2;
}

错误信息:

第二题:

拆分实数的整数与小数部分

设计思路:

               1:看题目:主函数与函数声明,知道它要你干什么2:理解与分析:在main中,给你一个实数x,要求你将他的整数与小数分离3:解答:在splitfloat中,利用实数x接收main中的x,利用指针intpart接收main中的&intpart,利用指针fracpart接收main中的&fracpart,再先分解x整数部分:*intpart=(int)x,小数等于x减去整数:*fracpart=x-*intpart

流程图:

实验代码:

void splitfloat( float x, int *intpart, float *fracpart )
{*intpart=(int)x;*fracpart=x-*intpart;
}

错误信息:

            1:求整数时,写成了*intpart=x/1

改正方式:

           1:将它改为:*intpart=(int)t;

小结:

             整数除以整数还是整数,浮点数(或者整数)除以整数(或者浮点数)是浮点数,浮点数除以浮点数还是浮点数

疑问:为什么这个也可以通过?

void splitfloat( float x, int *intpart, float *fracpart )
{*intpart=x/1;*fracpart=x-*intpart;
}

第三题:

           在数组中查找指定元素

设计思路:

                 1:看题目:主函数与函数声明,知道它要你干什么2:理解与分析:题目给你一个数组a[MAXN],里面存有一些数字,然后再让你输入一个数字x,看数组中是否存在这个数,在调用函数list{},判断这个数是否在数组中,若在,返回这个数的下标,反之,返回-1

流程图:

实验代码:

int search( int list[], int n, int x )
{int s=-1;int i;for(i=0;i<n;i++){if(list[i]==x){s=i;break;}}return s;
}

错误信息:

第四题:

            找最大值及其下标

设计思路:

                   1:看题目:主函数与函数声明,知道它要你干什么2:理解与分析:题目给你一个数组a[N],让你调用函数fun找出最大值max,,并输出它的下标p3:解答:在函数fun中,指针a接受数组a[ ],n接受数组大小N,用指针p接受最大的下标,再用一个for循环找出最大值及其下标

流程图:

实验代码:

int fun(int *a,int *b,int n)
{int i;int s=a[0];for(i=1;i<n;i++){if(s<a[i]){s=a[i];*b=i;}}return s;
}

错误信息:

改正方式:

我的总结

       在这两周中,我们学习了许多知识点,其中有通过调用函数:在数组中查找指定元素,这题目判断一个数是否在数组中;找最大值及其下标,这题目要求我们在数组中找出最大值及其下标;计算两数的和与差,这题目要求我们计算两个数的和与差;拆分实数的整数与小数部分,这题目要求我们将一个实数分解成整数部分,及小数部分;还有就是,这两周中,我的打字速度也进步了许多,以前不会用电脑画流程图,现在也会了。每次学到许多新的东西,我都会感到开心,并也感谢教我学习的人。

第五题:

            最小数放前最大数放后

设计思路:

                  1:看题目:主函数与函数声明,知道它要你干什么 2:理解与分析:在main中,给你一个数组,其中有十个整数 ,希望你通过调用函数,把最小数放前最大数放后       3:解答: 第一步:在input中,它用指针arr接收数组a[],用整数n接收数组的大小10,再用一个for循环,给数组a赋值第二步:在max_min中,它用指针arr接收数组a[],用整数n接收数组的大小10,先定义并赋值两个整形变量,分别为:max=a[0],min=a[0];利用两个for循环,找到最大值最小值,再定义一个整型变量t,实现把最小数放前最大数放后第三步:在output中,它用指针arr接收数组a[],用整数n接收数组的大小10,定义并赋值一个整型变量i =0,再用一个for循环,将数组a[]中的元素输出

流程图:

实验代码:

void max_min(int *arr,int n)
{int t,s,x=0,y=0,i,min,max;min=arr[0];max=arr[0];for(i=0;i<n;i++){if(min>arr[i]){min=arr[i];x=i;}}t=arr[0];arr[0]=arr[x];arr[x]=t;for(i=0;i<n;i++){if(max<arr[i]){max=arr[i];y=i;}}s=arr[n-1];arr[n-1]=arr[y];arr[y]=s;
}
void input(int *arr,int n)
{int i;for(i=0;i<n;i++)scanf("%d",&arr[i]);
}
void output(int *arr,int n)
{int i;for(i=0;i<n;i++)printf("%3d",arr[i]);
}

错误信息:

                    1.输出时:printf("  %d",arr[i]);2.找最大值与最小值时,只用一个for循环

改正方式:

                    1.printf("%3d",arr[i]);2.找最大值与最小值时,只用两个for循环,分别.找最大值与最小值

小结:

            “  %d”与“%3d”不同,一个是前面空两格在输出,一个是元素输出占3个字符宽

第六题:

             指针选择法排序

设计思路:

                  1:看题目:主函数与函数声明,知道它要你干什么 2:理解与分析:在main中,给你一个数组,其中有十个整数 ,希望你通过调用函数,将10个数进行由大到小的排序输出3:解答:第一步:定义t,i=0,j=i+1,max;其中t记录最大值下标,i用于选择法排序中外层for循环,而(i+1)表示进行到了第几轮交换,j用于选择法排序中内层for循环,表示x[i]后面元素的下标,max用于储存最大值第二步:进入第一个for循环:将max,t初始化,max=x[i]; t=i;第三步:进入第二个for循环:判断max<x[j]?若成立:max=x[j];t=j;第四步:离开第二个for循环后,判断t!=i?若成立:max=x[t];x[t]=x[i];x[i]=max;找到了最大值,并把它放在了第一,之后就重复第二步到第四步,直到跳出第一个for循环

流程图:

实验代码:

 void sort(int *x,int n)
{int t,i,j,max;for(i=0;i<(n-1);i++){max=x[i];t=i;for(j=i+1;j<n;j++){if(max<x[j]){max=x[j];t=j;}}if(t!=i){max=x[t];x[t]=x[i];x[i]=max;}}
}

错误信息:

第七题:

            判断回文字符串

设计思路:

                  1:看题目:主函数与函数声明,知道它要你干什么,了解“回文”是指顺读和倒读都一样的字符串2:理解与分析:在main中,给你一个字符串s,要你判断它是不是回文3:解答:第一步:在main中,定义一个数组s[MAXN]第二步:在palindrome中,指针s接收数组s,再定义i,n,k,j,其中,n=strlen(s),i=0,j=n-1第三步:再利用一个for循环,条件1:i=0,j=n-1;条件二:i<j;条件三:i++,j--第四步:在for循环中,判断:s[i]!=s[j],若成立,break;反之,继续第五步:判断i<j?成立:return false;反之:return true;

流程图:

实验代码:

bool palindrome( char *s )
{int i,n,k,j;n=strlen(s);i=0,j=n-1;for(i=0,j=n-1;i<j;i++,j--){if(s[i]!=s[j]){break;}}if(i<j)return false;elsereturn true;
}

错误信息:

第八题:

             使用函数实现字符串部分复制

设计思路:

                  1:看题目:主函数与函数声明,知道它要你干什么,希望你写一个函数,实现字符串部分复制2:理解与分析:在main中,给你一个字符串t,要求你从第m个字符开始的全部字符复制到字符串s中3:解答:第一步:在strmcpy中,用指针t接收字符串t,用指针s接收字符串s,用m接收main中m(从第几个数开始复制)第二步:定义i,j,n;其中i,j用于循环嵌套,n统计字符串s长度第三步:调用函数strcpy,将t全部复制到s中,再调用函数strlen,统计字符串s长度,并赋值给n第四步:再用两个for循环,实现数组s[]向左移动的单位为m-1,其一:for(i=m-1;i>0;i--);其二:for(j=i;j<n;j++);在里面为:s[j-1]=s[j];第五步:令s[n-m+1]等于'\0',代表结束,完成了从第m个字符开始的全部字符复制到字符串s中

流程图:

实验代码:

void strmcpy( char *t, int m, char *s ){  int i,j,n; strcpy(s, t);n = strlen(s);  for(i=m-1;i>0;i--){  for(j=i;j<n;j++){  s[j-1]=s[j];  }  }  s[n-m+1]='\0';
}

错误信息:

                    没写s[n-m+1]='\0'

改正方式:

                     加上s[n-m+1]='\0'

小结:

             字符串后面都有一个'\0'

.托管截图及网址

表格:

作业点评:

辛静瑶:http://www.cnblogs.com/X-JY/
李伍壹:http://www.cnblogs.com/chenxidream/
姜健:http://www.cnblogs.com/jj990519/
陈天胤:http://www.cnblogs.com/cty-1/
李新华:http://www.cnblogs.com/Lixinhua18/

转载于:https://www.cnblogs.com/2719610441qqcom/p/8611529.html

yuan的第二次随笔相关推荐

  1. 乔磊20155305第二次随笔

    你有什么技能比大多数人(超过90%以上)更好? 刚刚看到这个题目,我以为我没有什莫可以说的了,毕竟超过全部人的百分之九十真的很不可思议,这百分之十的人注定不会无名啊,某个领域突出的人才都是重要的,我从 ...

  2. 《软件测试技术》课程第二周随笔

    这次的博客内容为,举例解释等价类划分. 1. 问题描述 EditBox 在文本输入框内输入文字,然后按确认键. 允许接收的文字为:1至6个英文字符或数字. 2.等价类划分   有效等价类 编号 无效等 ...

  3. “希希敬敬对”队软件工程第九次作业-beta冲刺第二次随笔

    队名:  "希希敬敬对" 龙江腾(队长) 201810775001 杨希                   201810812008 何敬上 201810812004 今日讨论会 ...

  4. 一次重新的认识--第二次随笔

    一次重新的认识 你有什么技能比大多人(超过90%以上)更好? 其实我在高考后便想过这个问题了,因为我没有特别出彩的特长,我意识到这会是我的一个短板.在那个假期里,我除了出去旅行和学车,我还去报名学习了 ...

  5. [译]LINT TO SQL 介绍(数据库查询) - Part.3

     PDF版浏览:http://files.cnblogs.com/JimmyZhang/Linq-To-Sql-Part_3-Querying-our-Database.pdf 出处:Linq To ...

  6. Java开发过程中开发工具Eclipse中导入jar包的过程

    欢迎欣赏我的第二篇随笔.我们在创建好一个动态网站项目之后,如果没有部署maven的情况下,你可以按照以下的方法,直接把要用的jar包导入你的工程中,而不用再部署maven. 例如在使用JDBC编程时需 ...

  7. ES6(三)——回调地狱和promise异步任务顺序执行(传参、错误处理)

    文章目录 方法一.回调函数(回调地狱) 方法二:promise 2.1异步任务传参(单个) 2.2异步任务传参(多个) 2.3 错误处理 2.4 Promiss对象三大状态: (学名) 2.5 Pro ...

  8. 数字 阅读与创造——读戴德金之三

    标题数字 阅读与创造--读戴德金之三 17世纪末叶,德国学者莱布尼兹在设想普遍语言可能的时候,从算术加想到了逻辑加.逻辑大概从这个时候开始,就和数学有了一种天然的联系.莱氏的这个设想经历一个半世纪,大 ...

  9. 初尝微信小程序2-Swiper组件、导航栏标题配置

    swiper 滑块视图容器. 很多网页的首页都会有一个滚动的图片模块,比如天猫超市首页,滚动着很多优惠活动的图片,用来介绍优惠内容,以及供用户点击快速跳转到相应页面. Swiper不仅可以滚动图片,也 ...

  10. 2014年12月23日 平常心

    第一章 平常心 --A contented mind is thegreatest blessing a man can enjoy in this world. 知足是人生在世最大的幸事. 回家后和 ...

最新文章

  1. Squid如何提高命中率
  2. 一张图看懂微软人工智能的布局
  3. mod php是什么意思,mod函数是什么意思
  4. 如何更规范化编写 Java 代码
  5. 专家谈家教中的心理健康教育
  6. 阿里架构师教你处理高并发:2种方法,解决Redis和Mysql一致性
  7. Java分布式锁的概念以及使用优点
  8. 论为什么需要软件工程
  9. 我也撸了一个古诗词网站
  10. 太厉害了,阿里大牛把Java服务端做成一张超全的知识微缩地图
  11. 隐私政策-第三方SDK汇总
  12. 异贝,通过移动互联网技术,为中小微实体企业联盟、线上链接、线上线下自定义营销方案推送。案例62
  13. Microsoft Office word 2019教程 - word中的excel表格随着excel表格的变化而变化
  14. 面试突击51:为什么单例一定要加 volatile?
  15. STM32F4_外部中断详解(EXTI)
  16. JVM堆内存(heap)
  17. android代码实现手机加速功能,神奇的安卓手机提速方法 只需设置两步立即提速70%以上...
  18. 筛查肌肉病变,首选磁共振
  19. linux Ubuntu10.04操作系统不显示顶部和底部菜单
  20. Asp.Net Core 6.0 Mvc入门 图书查询系统 附带源码下载

热门文章

  1. keytool错误: java.lang.RuntimeException: 用法错误,and 不是合法的命令【转】
  2. 框架学习 Spring之概念
  3. Linux之文件基础操作命令
  4. 第二章 算法——程序的灵魂
  5. 20155336虎光元 Exp1PC平台逆向破解及Bof基础实践
  6. linux下C获取系统时间的方法
  7. [WARNING]考前必读?!
  8. 软件测试第五周 - 编码的 UI 测试
  9. [转]java中的io笔记
  10. [CTO札记]社区领域模型-SRC抽象模型