while循环判断任意数字的位数
思路: 数据除以10,一位一位划掉
352——>3位数
12——>2位数
while循环的意思就是:当条件满足时,不断的重复循环体内的语句。
#include <stdio.h>
int main()
{
int x,count;
scanf("%d",&x);
// x /= 10;
while(x>0)
{
count++;
x = x/10;
}
printf("数字有:%d个",count);
}
#include <stdio.h>
int main()
{
int count;
char ch;
//scanf("%c",&ch);
// x /= 10;
while(ch != '\n')
{
scanf("%c",&ch);
if(ch >= '0' && ch<= '9')
{
count =count + 1;
}
}
printf("数字有:%d个",count);
}
do-while 循环判断
do
{
<循环体语句>
}
while(<循环条件>);
do-while循环代码实现
# include <stdio.h>
int main(void)
{
int x;
int n=0;
printf("输入一个数字:\n");
scanf("%d",&x);
do
{
x /= 10;
n++;
}
while( x>0);
printf("%d\n",n);
return 0;
}
do- while循环实现猜数游戏
# include <stdio.h>
# include <stdlib.h>
# include <time.h>
int main(void)
{
srand(time(0));
int number = rand() %100 + 1;
int a = 0;
int count = 0;
printf("已经想好了一个1到100的整数\n");
do
{
printf("请猜一猜这个数\n");
scanf("%d",&a);
count++;
if(a>number)
{
printf("你猜的大了\n");
}
else if(a<number)
{
printf("你猜的小了\n");
}
}
while(a!=number);
printf("太好了,你用了%d次猜出了答案\n",count);
return 0;
}