{ int j=0
while (a[i]=b[j]) j++
c[j]++
}
第一次进入for循环,i = 0
while (a[i]=b[j]) j++// a[0] = 76 与 b[j] 中的数做比较,当遇到第一个a[0] <b[j] 时,跳出循环,否则j++ 指向下一个b[j],如上,即b[2] = 90 时,跳出循环,此时执行下一行代码
c[j]++
即c[2] ++ // c[2]初值为0 ,也就是说此时c[2] = 1 。
整个程序执行下来就是找出a[i]中小于b[0]的个数,存放到c[0]中。找出b[0]---b[1]之间的个数,存放到c[1]中,依次类推。。。。
for(i=0i<4i++)
cout<<c[i]<<' ' //这个没啥说的,就是打印输出 c数组的数据。
#include <iostream>
using namespace std
int _tmain(int argc, _TCHAR* argv[])
{
int a
cout<<"请输入数字"<<endl
cin>>a
int b=0
while(a)
{
b=a%10+10*b
a=a/10
}
cout<<b<<endl
system("pause")
return 0
}
#include <stdio.h>#include <stdlib.h>
#include <math.h>
void main(void)
{
int a,b,c,b0=0,b1=0,d8=0,dx=0,d10=0,d2=0
scanf("%d",&a)
c=a
while(c)
{
d8++
c/=8
}
c=a
while(c)
{
dx++
c/=16
}
c=a
while(c)
{
d10++
c/=10
}
c=a
while(c)
{
d2++
c/=2
}
printf("%d:%d %x:%d %o:%d ",a,d10,a,dx,a,d8)
b=0
c=a
while(c)
{
b=b*2+c%2
if(c%2)
b1++
else
b0++
c/=2
}
c=b
a=0
while(b)
{
a++
b/=2
}
while(c)
{
printf("%d",c%2)
c/=2
}
for(b=0b<b1+b0-ab++)
printf("0")
printf(":%d",d2)
printf("\nBinary digitals: 0:%d 1:%d",b0,b1)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)