循环
一·.PTA实验作业
题目1.7-1 求交错序列前N项和
本题PTA提交列表
2.设计思路
该式子分子是从1开始,然后逐次加1,直到第N项为N,所以用for循环,i表示分子,i在for循环中不断增加;而分母是从1开始,然后逐次加2,直到第N项为2N-1,用denominator表示分母所以分母应为denominator+=2;;而且前一项与后一项之间是一正一负的关系。所以应该定义一个flag=1;flag=-flag,来改变每一项的符号
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明
编译错误是因为在定义时将英文;弄成了中文的;
denominator=denominator+2那里少了;
题目2.7-7 计算阶乘和
1.本题PTA提交列表
2.设计思路
先定义一个N为不超过10的正整数,然后再定义一个sum,用来保存n个数的和;用for循环来一次一次的求1到N的阶乘数,即令j=1;在for(i=1;i<=N;i++)中计算j=j*i;sum=sum+j的值,最后输出sum。
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明
刚开始在Dev上可以运行,但是在PTA上却一分也没有,感觉很奇怪,之后经过检查发现输出格式不对,题目最后应该只是输出数字,而没有sum =;
题目3.
题目3.7-5 找出最小值
1.本题PTA提交列表
2.设计思路
先定义一个正整数n,然后输入n,之后再输入一个整数number,将它当做最小的,即min=number,之后用for循环一个一个输入number,每次输入number之后,都要拿min和number比较,如果min>number,则min=number。i=i+1,继续下次循环,直至i=n时跳出for循环
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明
在Dev上可以运行出来,然后在PTA上不对,之后经过检查,发现多了printf("Enter n:::");printf("Enter number:::");
二.截图本周日集的PTA最后排名
三、同学代码结对互评
1.互评同学名称
洪依妍
2.我的代码、互评同学代码截图
3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出里出问题。
(1)我的代码是先用if-else来判断,当a!=b时执行else,在else中用for循环来简化
同学的代码是用while语句来执行判断。
(2)我的代码比较复杂,而且长,但是也易让人看懂。、
同学的代码比较简洁,让人一目了然。
(3)我更喜欢同学的那种代码
四、本周学习总结
1.你学会了什么?
1.1用while语句实现循环。
while(表达式)语句,当表达式为非0值时,执行while语句中的内嵌语句。特点是先判断表达式,后执行语句
1.2用do...while语句实现循环
do...while语句的特点是先执行循环体,然后判断循环条件是否成立。当表达式的值为非零时,返回重新执行循环体语句
1.3循环嵌套
3种循环(while循环、do...while循环和for循环)可以相互嵌套。
2.本周的内容,你还不会什么?
goto语句还不怎么会用。
3.循环结构考试总结
8. 以下正确定义与赋值的语句是________ A、int x = y = -1 B、char c = 65; C、float y == 1.0; D、double x = 12.3E2.5
本题A\、D答案少了; C答案应该将==改为=
11. 以下说法正确的是________。 A、 在函数中可以使用多条 return 语句来返回一个结果 B、 若形参与实参类型不一致时,以实参类型为准 C、 当函数值的类型与返回值的类型不一致时,以返回值类型为准 D、 定义函数时,形参的类型说明可放在函数体内
B答案应该是以形类型为准 C答案应该是以函数类型为准 D答案错在形参的类型说明不可以放在函数体内
14. 如下程序段的运行结果是_______。
#include <stdio.h>
int main()
{
int a = 5,b = 4,c = 3,d = 2;
if(a > b > c)
printf(“%d\n”,d);
else if((c-1 >= d)== 1)
printf(“%d\n”,d+1);
else
printf(“%d\n”,d+2);
return 0;
}
A、2 B、3 C、4 D、5
当a>b是返回值为1,1不大于c,所以不执行if语句,跳入else if语句,c-1为2,会等于的,所以返回值为1与后面的1相等,所以执行else if语句
16. 以下 for 循环的执行次数是________。 for(x = 0,y = 0;(y = 3)&&(x <= 4);x++,y++) A、是无限循环 B、循环次数不定 C、执行 5 次 D、执行 4 次
y=3返回值为1,所以当x<=4时,执行for循环;
20. 当执行程序段
x = -1;
do{
x = x * x;
}while(!x);时, 循环体将___. A. 执行零次 B. 执行一次 C. 执行两次 D. 执行无限次
先做一遍循环,再判断!x是否成立