19 打印移动的*****;
#include <stdio.h>
int main(int argc, char *argv[])
{
int i,j,k;
scanf("%d",&k);
for(i=0;i<k;i++)
{
for(j=0;j<i;j++)
{
printf(" ");
}
for(j=0;j<k-i;j++)
{
printf("*");
}
printf("\n");
}
return 0;
}
20.输入一个数求其二进制中里一个个数;
#include <stdio.h>
int judge_number(int n)
{
int k=0;
if(n==0)
return 0;
while(n!=0)
{
n=n&(n-1);
k++;
}
return k;
}
int main(int argc, char *argv[])
{
int number;
printf("Please input your number:");
scanf("%d",&number);
printf("The number one have %d \n",judge_number(number));
return 0;
}
21.打印一个移动的菱形,
这傻逼搜索引擎告诉我LIUX下sleep是1ms,其实单位1为S
#include <stdio.h>
#include <unistd.h>
int main(int argc, char *argv[])
{
int i,j,k,n,m;
printf("input size of n\nmove m\n");
scanf("%d%d",&n,&m);
for(k=0;k<m;k++)
{
for(i=0;i<n;i++)//菱形的打印需要注意,思路为两个正三角形
{
for(j=0;j<n-1-i+k;j++)
{
printf(" ");
}
for(j=0;j<2*i-1;j++)
{
printf("*");
}
printf("\n");
}
for(i=n-2;i>=0;i--)
{
for(j=0;j<n-1-i+k;j++)
{
printf(" ");
}
for(j=0;j<2*i-1;j++)
{
printf("*");
}
printf("\n");
}
sleep(1);
if(k==m-1)
k=-1;
system("clear");
}
return 0;