一.思维导图
二.
1.if-else
if (条件)
{
语句;
}else{
语句;
}
如果不用{}要注意if和else只能执行后面的第一条语句。
加{}能让别人更容易读懂自己写的代码。
错误使用==和=。
大括号内的语句要缩进一个tab的位置。
2.switch
switch(表达式){
case 常量表达式 1: 语句段 1; break;
case 常量表达式 2: 语句段 2; break;
...
case 常量表达式 n: 语句段 n; break;
default: 语句段 n+1; break;
}
break可以根据题目来选择要不要加。
switch可以和if-else相互转换。
3.for
for(初始动作;条件;每轮的动作)
{
语句;
}
for语句可以与while语句可以相互转换。
4.while
while(条件){
循环体语句;
}
需要加初始化部分。
5.do-while
do{
循环体语句;
}while(条件);
do-while会比while多执行一次。
6.break以及continue
break; 跳出循环。
continue; 跳过循环这一轮剩下的语句进入下一轮。
三.pta分数截图
四.pta代码分析
1.
#include<stdio.h>
#include<math.h>
int isPrime(int n){
int i,sign=1;
if(n<2)
sign=0;
for(i=2;i<=sqrt(n);i++){
if(n%i==0){
sign=0;
}
}
return sign;
}
int main(){
int sum=0,M,N,i,count=0;
scanf("%d %d",&M,&N);
for(i=M;i<=N;i++){
if(isPrime(i)){
sum=sum+i;
count++;
}
}
printf("%d %d",count,sum);
return 0;
}
做了三次都是测试点3没过,运行了好多次都没发现错误在哪,而且我对比了之前写对的代码也没有什么不同,就是过不了。后面没办法只能用之前写的代码。
2.
#include <stdio.h>
int main()
{
int number,up ;
int count = 0;
int a;
int flag=0;
scanf("%d %d",&number,&up);
while(flag==0){
scanf("%d", &a);
count++;
if(a==number){
flag=1;
}
else if ( a > number ) {
printf("Too big\n");
} else if ( a < number&&a>=0 ) {
printf("Too small\n");
}
if (count>=a)
break;
if(a<0)
break;
}
if(flag==1&&count<=up)
{
if(count==1)
printf("Bingo!");
else if(count<=3)
printf("Lucky You!");
else
printf("Good Guess!");
while(1)
{
scanf("%d",&a);
if(a<0)
break;
}
}
else printf("Game Over");
return 0;
}
第一次做的时候,运用循环和判断语句都不是很熟悉,使得运行超时,第二次就过了一个测试点,然后通过很多次在编译器执行需找错误在哪里,思路错在哪里。同时也问过别人。后面才写对。
3.
#include <stdio.h>
int main()
{
int a,b;
scanf("%d %d",&a,&b);
double x=a;
double y=0;
if(b==0){
printf("%.1f %.1f",y,y);
}else{
for(int i=1;i<=b;i++){
y=y+1.5*x;
x/=2.0;
}
y=y-x;
printf("%.1f %.1f",y,x);
}
return 0;
}
第一次做的时候,就凭自己的脑子在想,没有动笔,关系式没有写得很好,只过了一个测试点。后面用笔在纸上推演过程,然后思路对了,但是没注意数据类型的转换问题。执行结果跟案例差了一点。后面发现了才这个问题。没有注意变量名称要能表达他的意思。
总结:
1.要学会推演过程,这样思路才会清晰。
2.变量名称要能准确表明它的意思,不能随便用一个字母来表示。
3.数据类型转换。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114454.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...