C语言第三次博客作业---单层循环结构
一、PTA实验作业
题目1
1.实验代码
int N,i;
double height1,height2;
char sex;
scanf("%d\n",&N);
for(i=1;i<=N;i++){
scanf("%c %lf",&sex,&height1);
getchar();
if(sex=='M'){
height2=height1/1.09;
}
else{height2=height1*1.09;
}
printf("%.2f\n",height2);
2 设计思路
1.定义整形变量N,i,双精度浮点型变量height1,height2,字符型变量sex
2.输入N,i=1
3.输入一个sex和height1
4.如果sex==M,则height2=height1/1.09;否则height2=height1*1.09。
5.保留两位小数输出height2,
6.i=i+1
7如果满足i<=N,重复步骤3,直到不满足条件退出程序
3.本题调试过程碰到问题及解决办法
1.就是对于字符型变量的输入中出错,用于换行的字符被存在sex中,导致sex中不是M。由于对字符型变量的输入输出方面的知识掌握不是很好,我是在舍友的帮助下还有老师上课时的讲解中慢慢理解
4.本题PTA提交列表
题目2
1.实验代码
#include<stdio.h>
int main()
{
int a,n,s,item,i;
scanf("%d %d",&a,&n);
item=0;
s=0;
for(i=1;i<=n;i++){
item=a*pow(10,(i-1))+item;
s=s+item;
}
printf("s = %d",s);
return 0;
2 设计思路
1.定义整形变量a,n,s,item,i
2.输入a,n
3.item=0,s=0
4.表达式i=1,item=a*10^(i-1)+item,s=s+item
5.表达式i=i+1
6.若满足i<=n,重复步骤4,直到不满足条件退出程序
3.本题调试过程碰到问题及解决办法
本题没有遇到问题
4.本题PTA提交列表
题目3
1.实验代码
int n,i,min,a;
scanf("%d",&n);
scanf("%d",&a);
min=a;
for(i=1;i<n;i++){
scanf("%d",&a);
if(a<min){
min=a;
}
else{
min=min;
}
}
printf("min = %d",min);
return 0;
2 设计思路
1.定义整形变量n,i,min,a
2.输入n,a
3.给min赋初值min=a
4.i=1
5.输入a,如果a<min,则min=a;否则min=min即min值不变
6.输出min的值
7.如果满足i<n,重复步骤5,直到不满足条件退出程序
3.本题调试过程碰到问题及解决办法
1.本题也没有遇到问题
4.本题PTA提交列表
题目4
1.实验代码
int N,mynumber,yournumber,i,flag;
scanf("%d %d",&mynumber,&N);
for(i=1;i<=N;i++){
scanf("%d",&yournumber);
if(yournumber<0){
goto out;
}
else if(yournumber>0&&yournumber<mynumber){
printf("Too small\n");
}
else if(yournumber>0&&yournumber>mynumber){
printf("Too big\n");
}
else{
break;
}
}
if(i==1){
printf("Bingo!\n");
}
else if(i>1&&i<=3){
printf("Lucky You!\n");
}
else if(i>3&&i<=N){
printf("Good Guess!\n");
}
else{
out: printf("Game Over\n");
}
return 0;
2 设计思路
1.定义整形变量N,mynumber,yournumber,i
2.输入mynumber,N
3.给i赋初值i=1
4.输入yournumber
5.如果yournumber<0直接跳到输出输出Game Over结束程序
6.如果yournumber>0&&yournumber<mynumber,输出Too small;如果yournumber>mynumber,输出Too big;否则跳出循环。
7.i=i+1
8.只要满足i<=N,重复步骤4
9.如果i=1,输出Bingo!;否则如果i>1且i<=3输出Lucky You!;否则如果i>3且i<=N输出Good Guess;否则输出Game Over
3.本题调试过程碰到问题及解决办法
1.没看清题意,以为所以数字都要输入到yournumber,然后每次循环i++,这样的话就算yournumber=yournumber后,i++依旧执行,根本不能够准确i的值,以至于刚刚想没思路
2.直接退出这项指令还是不太会把握,上网查了goto-out才解决
4.本题PTA提交列表
二、截图本周题目集的PTA最后排名
三、本周学习总结
1.你学会了什么?
1.学会了多种循环结构,for,while,do-while
2.还有这些循环结构的不同点,通过是否知道循环次数来选结构
2.本周的内容,你还不会什么?
复杂一点的的循环或者嵌套的循环还是不太会使用
3.分支结构上机考试总结。
(1)哪些地方错了,为什么?
由于上机不像平常打代码,多少有些紧张吧,连分段函数都错了,心态很重要
而且一旦限时就觉得调试浪费时间就没进行
(2)后续要怎么找程序错误?
脚踏实地的挑变量进行调试
(3)对自己成绩满意么?不满意的话要怎么改进?
并不满意,多尝试不一样的题目不要局限于老师的作业