博客园作业.

十年热恋 提交于 2019-12-01 09:15:25

一.思维导图.

二.c语言语法.

 

 1.if else.

if (表达式){
   语句1;
}
else{
   语句2;
}

else与其上面最接近的if相关联。

表达式的值为"真",则执行语句1;如果表达式的值为"假",则执行语句2.

2.switch.

switch(表达式){
     case 常量表达式1;语句段1;break;
     case 常量表达式2;语句段2;break;
                   ...
     case 常量表达式n;语句段n;break;
     default:        语句段n+1;break;
}

switch语句中的break语句不是每个case语句后都要有

3.for.

for(表达式1;表达式2;表达式3){
       循环体语句;}

 

for的后面没有分号,因为for与其后面的循环体语句合起来作为完整的语句。
4.while.
while(表达式){
      循环体语句;}

while语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真即可继续循环。

5.do while.

do
{
    循环体语句
}while(循环条件);

先执行一次循环语句,再判断循环条件.
所以无论是否满足循环条件,循环至少执行一次。

6.break及continue.

for (表达式1;表达式2;表达式3)
{  
if(表达式){
   break;
          }//跳出循环。
}
for (表达式1;表达式2;表达式3)
{  
if(表达式)
          {
 continue;
          }//直接进行下一个循环。
}

continue语句使用后,本次循环直接结束,不再执行continue之后的语句,直接进行下一轮循环。break语句是跳出当前执行行的语句。

三.pta分数截图。

 

 

 

 

 

 四.pta代码分析。

1.求奇数和。

 

 

#include <stdio.h>
int main(){
    int sum=0, n=-1;
    while(1){
        scanf("%d", &n);
        if(n<=0){
            break;
        }
        if(n%2==1){
            sum += n;
        }
    }
    printf("%d\n", sum);

    return 0;
}

思路:定义变量sum,n,sum表示总和。然后输入n,然后计算,最后按格式输出。

错误原因:没有注意中文和英文的输入。

收获:懂了怎么计算一系列正整数中奇数的和。

2.找出最小值。

 

 

#include<stdio.h>
int main()
{   int n,i,min,l;
    scanf("%d %d",&n,&l);
    min=l;
    for(i=1;i<n;i++)
   {
    scanf("%d",&l);
    if(min>l)
    min=l;
   }
    printf("min = %d",min);
    return 0;
 }

思路:定义变量n,i,min,l,min代表最小值,然后输入n,l,然后通过一系列运算,最后输出min的值。

收获:学会了赋值运算。

3.比较大小。


 

#include<stdio.h>

int main(void)
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    if(a>b){
        if(b>c){
            printf("%d->%d->%d\n",c,b,a);
        }else{
            if(a>c){
                printf("%d->%d->%d\n",b,c,a);
            }else{
                printf("%d->%d->%d\n",b,a,c);
            }
        }
    }else{
        if(a>c){
            printf("%d->%d->%d\n",c,a,b);
        }else{
            if(b>c){
                printf("%d->%d->%d\n",a,c,b);
            }else{
                printf("%d->%d->%d\n",a,b,c);
            }
        }
    }
    return 0;
}

思路:读题后决定用if else为核心,然后通过运算比较出三个数的大小,最后按格式输出。

错误原因:没有注意题目中的以空格分隔。

收获:要仔细阅读题目,注意题目给出的要求。

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!