#关于C语言的顺序结构

关于C语言的顺序结构

首先今天写PTA碰一个关于顺序结构的问题

原始的代码:


#include <stdio.h>
int main ()
{
int a,b,c,d,sum;
float average;

a=0,b=0,c=0,d=0;

sum=a+b+c+d;
average=sum/4.0;
scanf("%d %d %d %d",&a,&b,&c,&d);


printf("Sum = %d; Average = %.1f\n",sum,average);

return 0;
}

然后PTA平台显示有一个测试点没有通过(有两个)于是开始尝试更改以及求助,然后班助点出了两处,一处是关于顺序结构(另一处是我的一个敲代码习惯)

自己更改完的代码如下


#include <stdio.h>
int main ()
{
int a,b,c,d,sum;
float average;

a=0,b=0,c=0,d=0;
scanf("%d %d %d %d",&a,&b,&c,&d);
sum=a+b+c+d;
average=sum/4.0;

printf("Sum = %d; Average = %.1f\n",sum,average);
}

可以看出求和,和求平均的两行代码和scanf的顺序发生了变化

具体解释原因如下

——查询论坛【CDSN】(https://blog.csdn.net/modi000/article/details/102745384)

——自己的简单理解:在变量初始化后,若 先进行求和等的赋值,再进行输入函数的输入,会导致变量已经被使用,而再次没有初始化?

——对于变量的定义和使用【CDSN】(https://blog.csdn.net/sinat_32582203/article/details/54574634)(对于变量的理解很有帮助)

小结

顺序结构

变量

posted @ 2020-09-21 20:26  calizo  阅读(94)  评论(0编辑  收藏  举报