C语言第三周作业---单层循环

一、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+a2+a3+....+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.你还不会什么?

有些题目要思考很久,逻辑思维还不够强大,需要多多练习

posted @ 2017-10-31 19:58  网络1611张弛  阅读(277)  评论(1编辑  收藏  举报