筆記:
1豌蟋、do..while(繼續(xù)語句); do..while(終止條件);
2号醉、數(shù)據(jù)遞增
while( i <= no)
printf("%d", i++);
3颅痊、限定此數(shù)循環(huán)操作
while(no-- > 0)
putchat('*');
putchat('\n');
套路1:
do while語句火脉,持續(xù)運行
do{
}while(持續(xù)條件)或while(!終止條件)
練習(xí)題:
4-1
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
c = 0;
do
{
/* code */
puts("請輸入一個整數(shù)");scanf("%d",&a);
if(a%2)
puts("不能被2整除");
else
puts("能被2整除");
c++;
printf("這是輸入的第%d次\n還想繼續(xù)輸入嗎牵寺?是..1,否..0\n",c); scanf("%d",&b);
} while (b==1);
printf("結(jié)束械姻,您一共運行了%d次\n",c);
}
4-2
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
puts("請輸入整數(shù)b:");scanf("%d",&b);
c = 0;
if(a>b)
{d=a;a=b;b=d;}
do{
c += a++;
}while(a<=b);
printf("整數(shù)%d到整數(shù)%d之間的和為%d\n",a,b,c);
}
4-3
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
//puts("請輸入整數(shù)b:");scanf("%d",&b);
while(a>=0)
{
printf("%d ",a);
a--;
}
if(a>=-1)
printf("\n");
}
4-4
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a>=1)
printf("%d ",a--);
if(a>=0)
printf("\n");
}
4-5
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)b:");scanf("%d",&b);
a=0;
while(a <= b)
printf("%d ",a++);
if(b >= 0)
printf("\n");
}
4-6
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)b:");scanf("%d",&b);
a=1;
while(a <= b)
{
if(a%2)
printf(" ");
else
printf("%d",a);
a++;
}
printf("\n");
}
4-7
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)b:");scanf("%d",&b);
a=2;
while(a <= b)
{
printf("%d ",a);
a *= 2;
}
printf("\n");
}
4-8
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a-->0)
putchar('*');
if(a>=-1)
putchar('\n');
}
4-9
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a>0)
{
if(a%2)
putchar('+');
else
putchar('-');
a--;
}
}
4-10
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a>0)
{
puts("*");
a--;
}
}
4-11
#include<stdio.h>
void main()
{
int a,b,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a>0)
{
printf("%d",a%10);
a /= 10;
}
putchar('\n');
}
4-12(在上題基礎(chǔ)上改)
void main()
{
int a,b=0,c,d,max1;
puts("請輸入整數(shù)a:");scanf("%d",&a);
while(a>0)
{
printf("%d",a%10);
a /= 10;
b++;
}
putchar('\n');
printf("是%d位數(shù)\n",b);
}
4-13
#include<stdio.h>
void main()
{
int a,b=0,c=0,max1=0;
puts("請輸入你想加到幾妒蛇?");scanf("%d",&b);
for(a=1;a<=b;a++)
{
max1 += a;
}
printf("他們的和是%d\n",max1);
}
4-14
#include<stdio.h>
void main()
{
int a,b=1,c=0,max1=0;
puts("請輸入你想加到幾?");scanf("%d",&b);
for(a=1;a<=b;a++)
{
c++;
if(c>9)
c = 0;
printf("%d\n",c);
}
}
4-15
#include<stdio.h>
void main()
{
int a,start,stop,interval;
printf("開始數(shù)值:");scanf("%d",&start);
printf("終止數(shù)值:");scanf("%d",&stop);
printf("間隔數(shù)值:");scanf("%d",&interval);
for(a = start;a <= stop;a += interval)
{
printf("%dcm %.2fkg\n",a,(a-100)*0.9);
}
}
4-16
#include<stdio.h>
void main()
{
int a,b;
printf("請輸入一個整數(shù):");scanf("%d",&a);
for(b=0;b<=a;b++)
{
if(b%2)
printf("%d",b);
else
putchar(' ');
}
putchar('\n');
}
4-17
#include<stdio.h>
void main()
{
int a,b;
printf("請輸入一個整數(shù):");scanf("%d",&b);
for(a=1;a<=b;a++)
printf("%d的二次方是%d\n",a,a*a);
}
4-18
#include<stdio.h>
void main()
{
int a,b,c=0;
printf("請輸入一個整數(shù):");scanf("%d",&b);
for(a=0;a<b;a++)
{
if(c==5)
{
putchar('\n');
c = 0;
}
c++;
putchar('*');
}
}
4-19
#include<stdio.h>
void main()
{
int a,b,c=0;
printf("請輸入一個整數(shù):");scanf("%d",&b);
for(a=1;a<=b;a++)
{
if(b%a==0)
{
c++;
printf("%d ",a);
}
}
putchar('\n');
printf("約數(shù)的個數(shù)為%d\n",c);
}
4-20
//待做
4-21
#include<stdio.h>
void main()
{
int a;
puts("請輸入正方形有幾層:");scanf("%d",&a);
for(int i=1;i<=a;i++)
{
for(int j=1;j<=a;j++)
putchar('*');
putchar('\n');
}
}
4-22
#include<stdio.h>
void main()
{
int a,b;
printf("長方形的長是:");scanf("%d",&a);
printf("長方形的寬是:");scanf("%d",&b);
for(int i=1;i<=b;i++)
{
for(int j=1;j<=a;j++)
putchar('*');
putchar('\n');
}
4-23
4-24
#include<stdio.h>
void main()
{
int a,b;
printf("金字塔有多少層:");scanf("%d",&a);
for(int i=1;i<=a;i++)
{
for(int j=1;j<=a-i;j++)
{
putchar(' ');
}
for(int j=1;j<=(i-1)*2+1;j++)
{
putchar('*');
}
putchar('\n');
}
}
4-25
#include<stdio.h>
void main()
{
int a,b;
printf("金字塔有多少層:");scanf("%d",&a);
for(int i=1;i<=a;i++)
{
for(int j=1;j<=i;j++)
{
putchar(' ');
}
for(int j=1;j<=(a-i)*2+1;j++)
{
printf("%d",i%10);
}
putchar('\n');
}
}