2022年湖北师范大学计科专升本编程题
1.输出m,n之间所有自然数的和
#include<stdio.h>
int main ()
{
    int m, n;
    int temp;
    int sum = 0;
    printf("请输入区间:");
    scanf("%d %d", &m, &n);
    if(m > n)
    {
        temp = m;
        m = n;
        n = temp;
    }
    for(int i = m; i <= n; i++)
    {
        sum += i;
    }
printf("sum = %d", sum);
return 0;
}
2.输出九九乘法表(上三角)
#include<stdio.h>
int main()
{
//上三角
    int i,j;
    for(i=1; i<=9; i++) {
        for(j=1; j<=9; j++) {
            if(j<i)
                printf("      ");
            else
                printf("%d*%d=%2d ",i,j,i*j);
        }
        printf("\n");
    }
    return 0;
}
3.递归输出杨辉三角
#include<stdio.h>
int YangHui(int r, int c)
{
    return(c == 1 || c == r) ? 1 : YangHui(r - 1, c - 1) + YangHui(r - 1, c);
}
int main()
{
    int n;
    int i, j;
    printf("需要输出几行杨辉三角(0~20):");
    scanf("%d", &n);
    for (i = 1; i <= n; i++)//控制每行
    {
        for (j = 0; j < n - i; j++)
            printf("  ");
        for (j = 1; j <= i; j++)
            printf("%6d", YangHui(i, j));
        printf("\n");
    }
    return 0;
}
4.最大公因数,最小公倍数
#include<stdio.h>
int main()
{
    int a  , b  , temp;
    printf("put in a and b : ");
    scanf("%d %d",&a,&b);
    int nul = a * b;
   
    while (a * b != 0)
    {
        temp = a % b;
        a = b;
        b = temp;
    }
    printf(" max = %d:",a);
    printf(" min = %d:", (nul / a)  );
    return 0;
}
5.输出一个数的所有质数因数
#include<stdio.h>
int main()
{
    int n, i;
    scanf("%d", &n);
    i = 2;
    while (n > 1)
    {
        if (n % i == 0)
        {
            printf("%d\t", i);
            n = n/i;//通过除i来确定显示几个i
        }
        else
        {
            i++;
        }
    }
}
6.双向冒泡排序算法
#include<stdio.h>
#define Max_ 10
// 打印结果
void Show(int  arr[], int n)
{
    int i;
    for ( i=0; i<n; i++ )
        printf("%d  ", arr[i]);
    printf("\n");
}
// 交换数组元素位置
void Swap( int *num_a, int *num_b )
{
    int temp = *num_b;
    *num_b = *num_a;
    *num_a = temp;
}
//双向冒泡排序
void BidBubbleSort(int array[], int n)
{
    int low, high, flag, i;
    low = 0;
    high = n - 1;
    while(low < high)
    {
        flag=0;
        for(i=low; i<high; i++)  //正向冒泡
        {
            if(array[i] > array[i+1])  //到最大的
            {
                Swap(&array[i], &array[i+1]);
                flag = 1;    //数据交换
            }
        }
        if( !flag )
            break;
        high--;
        for( i=high; i>low; i-- )  //反向冒泡
        {
            if(array[i] < array[i-1])  //到最小的
                Swap(&array[i], &array[i-1]);
        }
        low++;
    }
}
2022湖北专升本
int main()
//测试数据
    int arr_test[Max_] = { 7, 4, 2, 3, 5, 1, 6, 9, 0, 8 };
    //排序前数组序列
    Show( arr_test, Max_ );
    BidBubbleSort( arr_test, Max_);
    //排序后数组序列
    Show( arr_test, Max_ );
    return 0;
}