这是我第一使用并用于记录在学习中遇到的问题及解决方法。
1.对于C语言的入门Hello World,因为长时间没碰,忘记了第一句头文件不用加分号以及return 0返回值应写在主函数里面。
2.
当写到这一题时,以数学思维,写成a=(v1-v2)/n,b=(v1+v2)/n,忘记了在编程中的“=”是赋值的意思。
#include<stdio.h>
int main()
{
int n,a,b,v1,v2;
scanf("%d%d%d",&n,&a,&b);
v1=(n*(a+b))/(2*a*b);
v2=(n*(a-b))/(2*a*b);
printf("%d %d",v1,v2);
return 0;
}
3.
这一题难点在于定义的pi=3.14159,但是输出值要求为3.1416,是4位小数,并且要求double定义浮点数输入输出,所以应该使用%.4lf来输入输出,表示保留四位小数,且多余的四舍五入。一开始只写了%4lf,只能输出宽为4的double浮点数。
#include<stdio.h>
int main()
{
double S;
double r;
scanf("%lf",&r);
S=r*r*3.14159;
printf("%.4lf",S);
return 0;
}
4.
对于数字交换,应设置一个多余的变量来储存第一个变量的值,再将它进行赋值给其他的数,防止第一个值的丢失,或者也可以直接输出交换后的值,省去交换的步骤。
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%d %d %d",b,c,a);
return 0;
}
或者
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
int t;
t=a;
a=b;
b=c;
c=t;
printf("%d %d %d",a,b,c);
return 0;
}