一、PTA实验作业

题目1

1.实验代码

    int N,i;               //N为用户数
char sex; //sex表示性别
double High; //Hight表示身高
scanf("%d",&N);
for(i=0;i<N;i++){
scanf(" %c%lf",&sex,&High);
if(sex=='F')
printf("%.2f\n",High*1.09);
else
printf("%.2f\n",High/1.09);
}

2.设计思路

(1)定义整型变量N为用户数;定义字符型变量 sex表示性别;定义浮点型变量Hight表示身高;

(2)输入N的值;

(3)赋i的初值为0;

(4)当i小于N时,输入性别sex和身高Hight;

(5)如果用户性别为女(F)则输出(High*1.09),否则输出(High/1.09);

(6)重复执行第3步骤,直到条件不满足时结束。

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

  • 判断性别的地方没处理好,字符型的变量没弄好;上网查询后稍微理解了,而且今天上课老师重新讲解了一遍。
  • 条件没判断好,仔细审题并请教同学后才明白。

4.本题提交列表



题目2

1.实验代码

       int i,s,a,value,n;                // s代表总和,value表示每一项的数
s=0;
scanf("%d %d",&a,&n);
value=a;
for(i=0;i<n;i++){
s=s+value;
value=value*10+a;
} printf("s = %d\n",s);

2.设计思路

(1)定义整型变量a为正整数,n为最后一项的a的个数,s为对应的和

(2)赋s的初值为0,i的初值为0;

(3)输入a的值和n的值;让value等于a;

(4) s=s+value;

(5)value=value*10+a;

(6)重复执行第4步骤,每重复一次,i加一,直到i不小于N时结束;

(7)输出此时s的值。

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

  • 表达式没表述好导致结果错误,监测变量发现问题。



4.本题提交列表



题目3

1.实验代码

	int i,n,value1,value2,min;         //n表示总共的个数,value1表示第一个数, value2用于存放接下来输入的数, min为最小值
scanf("%d",&n);
scanf("%d",&value1);
min=value1;
if(n!=1){
for(i=1;i<=n;i++){
scanf("%d",&value2);
if(min>value2)
min=value2;
}
printf("min = %d",min);
}
else
printf("min = %d",min);

2.设计思路

(1)定义整型变量n表示总共的个数,value1表示输入的第一个数, value2用于存放接下来输入的数, min为最小值,i等于0;

(2)输入n的值和第1个数value1的值;

(3)如果输入的n不为1,则执行第4步骤,否则执行第6步骤;

(4)输入value2的值,与min进行比较,若value2比较小则min等于value2;否则继续执行下一步;

(5)重复执行第4步骤,每重复一次,i加一,直到i大于N时结束;

(6)输出min的值。

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

  • 没有判断n=1的情况:虽然算法没有错,但是调试的时候无法进行下一步,找到错误后就改正了。

4.本题提交列表

题目4

1.实验代码

        int number1,number2,N,i;                     // number1为随机数,number2用于存放输入的数
scanf("%d%d",&number1,&N);
for(i=1;i<=N;i++){
scanf("%d",&number2);
if(number2<0){
printf("Game Over");
break;
}
else if(number2>number1){
printf("Too big\n");
}
else if(number2<number1){
printf("Too small\n");
}
else if(i==1&&number1==number2){
printf("Bingo!");
break;
}
else if(i>1&&i<=3&&number1==number2){
printf("Lucky You!");
break;
}
else if(i>3&&number1==number2){
printf("Good Guess!");
break;
}
}
if(i>N){
printf("Game Over");
}

2.设计思路

(1)定义整型变量N为猜数次数,number1为随机数,number2用于存放猜测数,i=0;

(2)输入number1和N的值;

(3)当i小于等于N时,执行下一个步骤;

(4) 输入number2;

(5)如果number2小于0,则输出“gameover”后直接结束程序;

(6)如果number2大于number1,则输出“Too big”;

(7)如果number2小于number1,则输出“Too small”;

(8)如果i==1同时number1等于number2,则输出“Bingo!结束”;

(9)如果i>1同时i<=3同时number1等于number2,则输出“Lucky You!结束”;

(10)如果i>3同时number1等于number2,则输出“Good Guess!”结束;

(11)当i大于N时,输出“Game Over”。

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

  • 没有考虑好条件

    结果一直错误,调试后发现条件写错了。

4.本题提交列表

二、截图本周题目集的PTA最后排名

三、本周学习总结

1.你学会了什么?

  • 掌握了循环结构的基本运用,比如像最佳情侣身高差,之前只能求一个用户,加上循环结构后就可以一下子求出多个结果,明显提高了效率。
  • 学会了调试,利用调试找出错误比之前自己找错误方便很多,特别是编辑没有错答案错误的时候,监测变量可以更快的确定错误的地方。
  • 对于比较复杂的问题有了更好的解决方式,不用像之前那样做很复杂的过程。
  • 现在会有先写算法的意识了,有了解题思路再开始打代码而不是直接开始写。

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

  • 掌握的还不是很熟练,所以对于比较难的题还是没有什么好的思路,本次作业中很多题目都没有采取比较好的解题方式;只会用基本的循环结构,利用的还不是很好。

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

  • 平时写题目比较随便,很多细节都不以为然,所以考试的时候会一直出错;当时还不太会调试,所以错误找不出来。
  • 写作业的时候没有控制时间,考试的时候就有点手忙脚乱的,有点太着急。
  • 以后作业尽量独立并限时完成,多请教老师和同学。

C语言第三次博客作业—循环结构的更多相关文章

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

    一.PTA实验作业 题目1 1.实验代码 int N,i; //N为用户数,i记录循环变量 double height; //height放身高 char sex; //sex放性别F为女,M为男 s ...

  2. C语言第三次博客作业

    一.PTA实验作业 1 1.实验代码 int i,N; char sex; float high; scanf("%d",&N); for(i =1;i <=N;i ...

  3. OO第三次博客作业——规格

    OO第三次博客作业——规格 一.调研结果: 规格的历史: 引自博文链接:http://blog.sina.com.cn/s/blog_473d5bba010001x9.html 传统科学的特点是发现世 ...

  4. [2017BUAA软工]第三次博客作业:案例分析

    第三次博客作业:案例分析 1. 调研和评测 1.1 BUG及设计缺陷描述 主要测试博客园在手机端上的使用情况. [BUG 01] 不能后退到上一界面(IOS) 重现步骤:打开博客首页中任意博文,点击博 ...

  5. C语言博客作业06——结构体&文件

    C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...

  6. [BUAA OO]第三次博客作业

    OO第三次博客作业 1. 规格化设计的发展 我认为,规格化设计主要源自于软件设计的两次危机.第一次是由于大量存在的goto语句,让当时被广泛应用的面向过程式的编程语言臃肿不堪,在逻辑性上与工程规模上鱼 ...

  7. C语言第七次博客作业--一二维数组

    一.PTA实验作业 题目1:找鞍点 1. 本题PTA提交列表 2. 设计思路 定义n,i,j,ii,jj,a[7][7],flag,max 输入n for i=0 to i=n for j=0 to ...

  8. C语言最后一次博客作业

    1.当初你是如何做出选择计算机专业的决定的? 一开始选专业的时候,说实话我很纠结也很迷茫,对我来说,中学时代,似乎就只要考好试,做好题就可以了,对于未来想要做啥并没有那么多的规划和想法,偶尔跟基友畅聊 ...

  9. 北航OO(2020)第三单元博客作业

    一.JML理论基础及相关工具链 1.JML理论基础 该部分梳理本单元作业中涉及到的JML知识. 1.1注释结构 JML采用javadoc注释的方式来表示规格,且每行以@开头.通过使用//@annota ...

随机推荐

  1. My SQL 登录命令,创建表与删除表

    一.连接MYSQL. 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -u ...

  2. EF Core下利用Mysql进行数据存储在并发访问下的数据同步问题

    小故事 在开始讲这篇文章之前,我们来说一个小故事,纯素虚构(真实的存钱逻辑并非如此) 小刘发工资后,赶忙拿着现金去银行,准备把钱存起来,而与此同时,小刘的老婆刘嫂知道小刘的品性,知道他发工资的日子,也 ...

  3. 如何通过java反射的方式对java私有方法进行单元测试

    待测试的私有方法: import org.testng.Assert;import org.testng.annotations.BeforeClass;import org.testng.annot ...

  4. 元素定位-----Selenium快速入门(二)

    一.eclipse设置 工欲善其事必先利其器,在说元素定位之前,先来设置下eclipse. 首先放大一下字体,点击windows-preferences 其次,eclipse对于java的智能提示默认 ...

  5. [BZOJ3293] [Cqoi2011] 分金币 (贪心)

    Description 圆桌上坐着n个人,每人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等.你的任务是求出被转手的金币数量的最小值. Inpu ...

  6. [BZOJ2048] [2009国家集训队] 书堆

    Description Input 第一行正整数 N M Output 一行(有换行符),L,表示水平延伸最远的整数距离 (不大于答案的最大整数) Sample Input #11 100 #22 1 ...

  7. 使用JSONP实现跨域

    什么是跨域? 简单的来说,出于安全方面的考虑,页面中的JavaScript无法访问其他服务器上的数据,即"同源策略".而跨域就是通过某些手段来绕过同源策略限制,实现不同服务器之间通 ...

  8. oracle 裸设备划分 --centos6.5

    主题思想:物理卷PV->卷组VG->逻辑卷LV(类型:raw)->添加表空间 操作过程 vg_orcl         8g 一:划分 二:创建裸设备 方法1:目前最常用的方法 #c ...

  9. log4j日志输出性能优化-缓存、异步

     转载 1.log4j已成为大型系统必不可少的一部分,log4j可以很方便的帮助我们在程序的任何位置输出所要打印的信息,便于我们对系统在调试阶段和正式运行阶段对问题分析和定位.由于日志级别的不同,对系 ...

  10. Android实时直播,一千行java搞定不依赖jni,延迟0.8至3秒,强悍移动端来袭

    项目首页:https://github.com/ossrs/srs-sea SRS服务器项目:https://github.com/ossrs/srs 一个支持RTMP推流的版本:https://gi ...