#include <stdio.h>
void arr1(int arr2[2][8],int i,int j);
int main()
{
int arr[8][7]={{2,4,3,4,5,8,8},
{7,3,4,3,3,4,4},
{3,3,4,3,3,2,2},
{9,3,4,7,3,4,1},
{3,5,4,3,6,3,8},
{3,4,4,6,3,4,4},
{3,7,4,8,3,8,4},
{6,3,5,9,2,7,9}};
int i,j,sum;
printf("\t Su M T W TH F Sa\n");
for(i=0;i<8;i++)
{
printf("Employee%d",i);
for(j=0;j<7;j++)
{
printf(" %d ",arr[i][j]); // 打印二维数组
}
printf("\n");
}
int a[2][8]={{0,1,2,3,4,5,6,7},{34,28,20,31,32,28,37,41}};
//arr1(a,8);
int n,k;
for(k=0;k<8;k++)
{
printf(" Employee%d: ",a[0][k]); //未排序前打印每个员工的序号和总工时
printf(" %d\n",a[1][k]);
}
printf("\n");
arr1(a,2,8);
for(k=0;k<8;k++)
{
printf(" Employee%d: ",a[0][k]); //排序后分别打印每个员工的序号和工时
printf(" %d\n",a[1][k]);
}
return 0;
}
void arr1(int arr2[2][8],int i,int j)
{
int b,a;
int n,m;
for(a=0;a<7;a++)
for(b=0;b<7;b++)
{
int temp,ret;
if(arr2[1][b+1]>arr2[1][b])
{
temp=arr2[1][b+1]; //员工工时排序
arr2[1][b+1]=arr2[1][b];
arr2[1][b]=temp;
ret=arr2[0][b+1]; //员工工时排序的同时给每个员工的序号野也进行排序
arr2[0][b+1]=arr2[0][b];
arr2[0][b]=ret;
}
}
}
#include <stdio.h>
#include <math.h>
/*十进制转换为2进制*/
void er(long long num);
int main()
{
signed long long int num;
printf("十进制转换为二进制\n请输入这个十进制(正/负数都行):");
scanf("%lld",&num);
er(num);
return 0;
}
void er(long long num)
{
int arr[64]={0};
int i;
if(num<0){
// arr[0]=1;
// else{
// arr[0]=0;
num=fabsl(num);
num-=1;
for(i=0;i<63;i++){
arr[64-1-i]=num%2;
num/=2;
}
for(i=0;i<64;i++){
if(1==arr[i])
arr[i]=0;
else
arr[i]=1;
}
for(i=0;i<64;i++)
printf("%d",arr[i]);
}
else{
for(i=0;i<64;i++){
arr[64-1-i]=num%2;
num/=2;
}
for(i=0;i<64;i++)
printf("%d",arr[i]);
}
}
// printf("%d\n",num);
// printf("第一位显示为 1 则表示这个数为 负数 ,显示为 0 表示这个数为 正数 \n");
// if(num<0)
// arr[0]=1;
// else
// arr[0]=0;