关于C的小程序-3

来源:互联网 发布:知乎 扶她出去吧 编辑:程序博客网 时间:2024/05/16 12:18

1.将数组A与数组B的内容交换(数组大小一样)

#include<stdio.h>  
int main()
{
int arr1[3] = { 1, 2, 3 };
int arr2[3] = { 4, 5, 6 };
int arr3[3];
int i = 0;
for (i = 0; i<sizeof(arr1) / sizeof(arr1[0]); i++)
{
arr3[i] = arr1[i];
arr1[i] = arr2[i];
arr2[i] = arr3[i];
}
for (i = 0; i<sizeof(arr1) / sizeof(arr1[0]); i++)
{
printf("%d ", arr1[i]);
}
printf("\n");
for (i = 0; i<sizeof(arr2) / sizeof(arr2[0]); i++)
{
printf("%d ", arr2[i]);
}
system("pause");
return 0;
}

#include<stdio.h>
int main()
{
int arr1[3] = { 1, 2, 7 };
int arr2[3] = { 4, 5, 9 };
int temp = 0; int i = 0;
int sz = sizeof(arr1) / sizeof(arr1[0]);
for (i = 0; i < sz; i++)
{
temp = arr1[i];
arr1[i] = arr2[i];
arr2[i] = temp;
}
for (i = 0; i < sz; i++)
{
printf("%d ", arr1[i]);
}
printf("\n");
for (i = 0; i < sz; i++)
{
printf("%d ", arr2[i]);
}
system("pause");
return 0;
}

2.获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。

#include<stdio.h>  
int main()
{
int num = 20;
int i = 0;
int a[32];
for (; i < 32; i++)
{
a[i] = num % 2;//将数字转换成二进制的样式存在数组a中  
num /= 2;
}
printf("偶数序列:\n");
for (i = 31; i >= 0; i -= 2)
{
printf("%d", a[i]);
}
printf("\n");
printf("奇数序列:\n");
for (i = 30; i >= 0; i -= 2)
{
printf("%d", a[i]);
}
printf("\n");
   system("pause");
   return 0;
}

#include<stdio.h>
int main()
{
int num = 10;
int i = 0;
printf("偶数序列为:");
for (i = 31; i>=0; i -= 2)
{
printf("%d", (num >> i)&1);
}
printf("奇数序列为:");
for (i = 30; i >= 0; i -= 2)
{
printf("%d", (num >> i)&1);
}
system("pause");
return 0;
}

3.将三个数按从大到小输出。

#include<stdio.h>
int main()
{
int arr[3];
int i = 0; int j = 0; int x = 0;
printf("请输入三个数:\n");
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)
{
scanf_s("%d", &arr[i]);
}
for (j = 1; j < sizeof(arr) / sizeof(arr[0]); j++)
{
for (i = 0; i< (sizeof(arr) / sizeof(arr[0])) - j; i++)
{
if (arr[i]<arr[i + 1])
{
x = arr[i];
arr[i] = arr[i+1];
arr[i+1] = x;
}
}
}
printf("从大到小为:\n");
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)
{
printf("%d ", arr[i]);
}
system("pause");
return 0;
}

#include<stdio.h>
void Swap(int* px, int* py)
{
int temp = *px;
*px = *py;
*py = temp;
}
int main()
{
int a = 1; int b = 0; int c = 9;
if (a < b)
{
Swap(&a, &b);
}
if (a < c)
{
Swap(&a, &c);
}
if (b < c)
{
Swap(&b, &c);
}
printf("%d %d %d", a, b, c);
system("pause");
return 0;
}

4.求两个数的最大公约数。

#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
int num1 = 0; int num2 = 0;
int temp;
printf("请输入两个数:");
scanf_s("%d %d", &num1, &num2);
if (num1 > num2)
{
temp = num1;
num1 = num2;
num2 = temp;
}
a = num1; b = num2;
while (b != 0)
{
temp = a%b;
a = b;
b = temp;
}
printf("公约数是:%d\n", a);
system("pause");
return 0;
}

#include<stdio.h>
int main()
{
int num1 = 12; int num2 = 9;
int temp = 0;
while ((num1%num2)!= 0)
{
temp = num1%num2;
num1 = num2;
num2 = temp;
}
printf("%d", num2);
system("pause");
return 0;
}

0 0
原创粉丝点击