学习与工作
main( )
{ int sum=0, i=1;
loop: sum+=i++;
if(i<101) goto loop;
printf("%d\n",sum);
}
{ int i,s;
for(i=1,s=0; ;i++)
{ s+=i;
if(s>6000) break;
}
printf("s=%d i=%d\n",s-i,i-1);
}
为什么 s-i,i-1呢?
因为这里如果不减i的话,比6000大但是接近6000的数,而我们求的是前N项和为6000,一定比6000小,是最接近6000.所以要减i.
{ int i,j,s=0;
for(i=1;i<=2;i++)
{ for(j=1;j<=3;j++)
s+=i+j;
}
printf("%d\n",s);
}
过程:当满足i=1时,执行内部命令,内部执行完之后。再执行外部。
即:i=1;
j=1 s=i+1=1+1=2
j=2 s=2+i+2=2+1+2=5
j=3 s=5+i+3=5+1+3=9
i=2;
j=1 s=9+i+1=9+2+1=12
j=2 s=12+i+2=12+2+2=16
j=3 s=16+i+3=16+2+3=21
i,j可以为任何值,按同样的道理进行运算。
1.do while 语句 2. while 语句
main( ) main( )
{ long i,s; { long i,s;
i=1; s=1; i=1; s=1;
do while(i<=8)
{ s*=i; { s*=i;
i++; i++;
}while(i<=8); }
printf("%ld\n",s); printf("%ld\n",s);
} }
3.for语句
main( )
{ long i,s;
for(i=1,s=1;i<=8;i++)
s*=i;
printf("%ld\n",s);
}
2:运行C的过程。写好之后按ALT+C,选COMPILE TO OBJ.
若正确,再按ALT+C,选LINK EXE FILE. 若错误,按回车后,按ALT+E回到程序中,不用动光标,它就在错误行
3:使C屏幕最大化和最小化的交换键是,按ALT+E再按回车。
#include "math.h"
main()
{float det,x1,x2;
int a,b,c;
scanf("%d,%d,%d",&a,&b,&c);
det=b*b-(4*a*c);
if(det>=0)
x1=(-b+sqrt(det))/(2*a);
x2=(-b-sqrt(det))/(2*a);
printf("%f,%f\n",x1,x2);
if(det<0)
printf("no root\n");
}
{int a,b,c;
scanf("%d,%d",&a,&b);
c=a*b;
printf("a=%d b=%d c=%d\n",a,b,c);
}
2:#include "math.h"
main()
{ float a,b,c;
scanf("%f,%f",&a,&b);
c=sqrt(a)+pow(b,a);
printf("%f\n",c);
}
main( )
{int s, i;
s=0;
i=1;
do
{s+=i;
i++;
}while(i<=100);
printf("s=%d\n",s);
}
main()
{int a,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
max=a;
else
max=b;
if(max>c)
max=max;
else
max=c;
printf("max=%d\n",max);
}
