一、PTA实验作业
题目1
1.实验代码
int N = 0,i;
char sex;
float a[9], height;
scanf("%d\n", &N);
for (i = 0; i<N; i++) {
scanf("%c", &sex);
scanf("%f", &height);
getchar();
if (sex == 'M') {
a[i] = height / 1.09;
}
else
a[i] = height*1.09;
}
for (i = 0; i < N; i++)
printf("%.2f\n", a[i]);
2.设计思路
- 第一步:定义两个整形变量N,i,一个字符型变量char,一个浮点型数组a[9],和一个浮点型变量height
- 第二步:输入N的值
- 第三步:进入循环,输入sex的值和height的值
- 第四步:判断性别,若sex=M则height/1.09,并赋值给a[i]
- 第五步:不然height*1.09,并赋值给a[i]
- 第六步:重复步骤3,直到i=N为止
- 第六部:用循环语句输出a[i]的值
3.本题调试过程碰到问题及解决办法
这道题一直不知道怎么样才能循环输入并且循环输出,最后还是用数组解决了
4.PTA提交列表
题目2
1.实验代码
int a, n,t=0,i,s=0;
scanf("%d %d", &a, &n);
if (a > 0 && a < 10 && n>0 && n < 10)
for (i = 0; i < n; i++) {
t = t + a*pow(10, i);
s = s + t;
}
printf("s = %d", s);
2.设计思路
- 第一步:定义5个整形变量a,n,t,i,s
- 第二步:输入a和n
- 第三步:当a > 0 && a < 10 && n>0 && n < 10时,执行语句,进入循环
- 第四步:t = t + a*pow(10, i)
- 第五步:s = s + t
- 第六步:重复步骤4到5,知道i=n
- 第七步: 输出s
3.本题调试过程碰到问题及解决办法
刚开始是以为要输出a+a^2+a^3+....+a^n,后面才知道是输出位数上全是a的数,没有问题,一次搞定
4.PTA提交列表
题目3
1.实验代码
int n=0, num = 0, min = 0, i = 0;
scanf("%d", &n);
scanf("%d", &min);
for (i = 1; i < n; i++) {
scanf("%d", &num);
if (min > num)
min = num;
}printf("min = %d", min);
2.设计思路
- 第一步:定义4个整形变量 n,num,min和i
- 第二步:输入n
- 第三步:输入min
- 第四步:输入num
- 第五步:如果min>num则min=num
- 第六步:重复第四步到第五步,直到i=n为止
- 第七步:输出min
3.本题调试过程碰到问题及解决办法
NO
4.PTA提交列表
题目4
1.实验代码
int count = 0, flag, mynumber, yournumber,N;
flag = 0;
scanf("%d %d",&mynumber, &N);
while (count < N) {
scanf("%d", &yournumber);
if (yournumber < 0) {
break;
}
count++;
if (yournumber == mynumber) {
flag = 1;
switch (count)
{case 1:
printf("Bingo!");
break;
case 2:case 3:printf("Lucky You!");
break;
default:printf("Good Guess!");
break;
}break;
}
else if (yournumber > mynumber)
printf("Too big\n");
else printf("Too small\n");
}
if (flag == 0)
printf("Game Over");
2.设计思路
- 第一步:定义5个整形变量count,flag,mynumber,yournumber,N
- 第二步:对flag做初始化,并输入mynumber和N
- 第三步:输入yournumber
- 第四步:当yournumber<0时,循环结束
- 第五步:count++
- 第六步:当yournumer==mynumber时,flag=1,用switch语句对count的值进行判断,case 1时输出Bingo!,case 2,case 3时输出Lucky You!,其他则输出Good Guess!
- 第七步:当yournumber > mynumber时,输出 Too big,不然则输出Too small
- 第八步:重复第三步到第七步,知道count=N
- 第九步:判断flag是否为0,为0则输出Game Over
3.本题调试过程碰到问题及解决办法
书本上有类似题目,按照题目的要求做相应更改就能完成
4.PTA提交列表
二、截图本周题目集的PTA最后排名
三、本周学习总结
1.你学会了什么?
经过本周的学习,我学会使用循环结构的语法,例如for ,while,do while
2.你还不会什么?
有些题目要思考很久,逻辑思维还不够强大,需要多多练习