C语言习题练习

来源:互联网 发布:m1a2和豹2知乎 编辑:程序博客网 时间:2024/05/06 07:50

1.将数组A中的内容和数组B中的内容进行交换。(数组一样大)

#include<stdio.h>int main(){    int i = 0;    int j = 0;    int k = 0;    int arr1[10] = { 1, 3, 5, 7, 9, 2, 4, 6, 8, 0 };    int arr2[10] = { 2, 4, 6, 8, 0, 1, 3, 5, 7, 9 };    int length = 0;    length = sizeof(arr1) / sizeof(arr1[0]);    for (i = 0; i < length; i++)    {        int t = 0;        t = arr1[i];        arr1[i] = arr2[i];        arr2[i] = t;    }    printf("arr1= ");    for (j = 0; j < length; j++)    {        printf("%d ", arr1[j]);    }    printf("\n");    printf("arr2= ");    for (k = 0; k < length; k++)    {        printf("%d ", arr2[k]);    }    printf("\n");    return 0;}

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

#include<stdio.h>int main(){    int i = 0;    int num = 0;    printf("请输入一个十进制数字: \n");    scanf_s("%d", &num);    printf("奇数列为:");    for (i = 31; i >= 1; i -= 2)    {        printf("%d ", (num >> i) & 1);    }    printf("\n");    printf("偶数列为:");    for (i = 32; i >= 0; i -= 2)    {        printf("%d ", (num >> i) & 1);    }    return 0;}

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

#include<stdio.h>int main(){    int t = 0;    int a = 0;    int b = 0;    int c = 0;    printf("请输入三个数:\n");    scanf_s("%d %d %d", &a, &b, &c);    if (a < b)    {        t = a;        a = b;        b = t;    }    if (a < c)    {        t = a;        a = c;        c = t;    }    if (b < c)    {        t = b;        b = c;        c = t;    }    printf("%d %d %d\n", a, b, c);    return 0;}

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

#include<stdio.h>int main(){    int i = 0;    int a = 0;    int b = 0;    int t = 0;    int ret = 0;    printf("输入两个数: \n");    scanf_s("%d %d", &a, &b);    if (a > b)    {        t = a;        a = b;        b = t;    }//让a始终为两个数中较小的一个    for (i = 1; i <= a; i++)    {        if (a % i == 0)        {            if (b % i == 0)            {                ret = i;            }        }    }    printf("%d \n",&ret);    return 0;}
0 0
原创粉丝点击