[c/c++] programming之路(12)、循环结构

时间:2023-03-09 07:23:07
[c/c++] programming之路(12)、循环结构

一、求2n

 #include<stdio.h>

 void main(){
int n=;
int s=;
while(n--){
s*=;
printf("%d,%d\n",s,n);
}
getchar();
}

[c/c++] programming之路(12)、循环结构

二、do while求1到100的和

 #include<stdio.h>
#include<stdlib.h> void main(){
int i=;
int sum=;
do
{
sum+=(++i);
printf("%d,%d\t",sum,i);
} while (i<);
system("pause");
}

[c/c++] programming之路(12)、循环结构

三、do while的运用场合

 #include<stdio.h>
#include<stdlib.h>
//do while循环用于一开始就需要输入数据的场合
void main(){
char ch;
do
{
ch=getchar();
putchar(ch);
} while (ch!='\t');//当ch不等于tab键时,进行循环
}

四、for循环

 #include<stdio.h>
#include<stdlib.h> void main0(){
for(;;){//for (初始化语句; 条件语句; 控制语句),三者皆省略即为死循环
printf("Alice");
}
}
//求一个整数多少位
void main1(){
int num;
int wei=;
scanf("%d",&num);
printf("num=%d",num);
for (;num;num/=)//num等价于num!=0,num>0
{
wei++;
}
printf("%d共有%d位",num,wei);
system("pause");
}
 #include<stdio.h>
#include<stdlib.h>
//1*2+3*4+5*6+...+99*100
void main(){
int sum=;
int i;
for (i = ; i < ; i+=)
{
sum+=i*(i+);
}
printf("%d",sum);
getchar();
}

五、循环嵌套

 #include<stdio.h>
#include<stdlib.h> void main(){
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j <=i; j++)
{
printf("%d*%d=%d\t",i,j,i*j);
}
printf("\n");
}
getchar();
}

[c/c++] programming之路(12)、循环结构

 #include<stdio.h>
#include<stdlib.h> void all()
{
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j < ; j++)
{
printf("i=%d,j=%-2d", i, j);
}
printf("\n");
}
} void leftdown()
{
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j < ; j++)
{
if (i >= j)
{
printf("i=%d,j=%-2d", i, j);
}
else
{
printf("%8s", "");
}
}
printf("\n");
}
} void rightup()
{
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j < ; j++)
{
if (i <= j)
{
printf("i=%d,j=%-2d", i, j);
}
else
{
printf("%8s", "");
}
}
printf("\n");
}
} void leftup()
{
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j < ; j++)
{
if (i <=- j)
{
printf("i=%d,j=%-2d", i, j);
}
else
{
printf("%8s", "");
}
}
printf("\n");
} } void rightdown()
{
int i,j;
for ( i = ; i < ; i++)
{
for ( j = ; j < ; j++)
{
if (i >= - j)
{
printf("i=%d,j=%-2d", i, j);
}
else
{
printf("%8s", "");
}
}
printf("\n");
}
} void down()
{
int i,j;
for ( i = ; i < ; i++)
{
for ( j = ; j < ; j++)
{
if (i >= - j && i>=j)
{
printf("i=%d,j=%-2d", i, j);
}
else
{
printf("%8s", "");
}
}
printf("\n");
} } void main()
{
all();
printf("\n\n");
leftdown();
printf("\n\n");
rightup();
printf("\n\n");
leftup(); printf("\n\n");
rightdown();
printf("\n\n");
down();
getchar(); }

[c/c++] programming之路(12)、循环结构[c/c++] programming之路(12)、循环结构[c/c++] programming之路(12)、循环结构

六、goto语句

 #include<stdio.h>
#include<stdlib.h> void main5(){
AAAA1:system("ipconfig");
AAAA2:system("title 奋斗的小程序猿");
AAAA3:system("color 5E");
AAAA4:system("echo 奋斗吧,小程序猿!");
goto AAAA4;//跳转到AAAA4行,即进入了死循环
} void main6(){
int i=;
int sum=;
A:if (i<)
{
i++;
sum+=i;
printf("%d,%d\n",sum,i);
goto A;//整数不可以用于标号
}
system("pause");
} void main(){
int i,j;
for (i = ; i < ; i++)
{
for (j = ; j < ; j++)
{
if (i==)
{
break;//跳出一层循环
//goto AA;//跳出多层循环
}
printf("%d,%-3d",i,j);//%-3d占三位,左对齐
}
printf("\n");
}
AA:system("echo 跳出来");
system("pause");
}

[c/c++] programming之路(12)、循环结构