little c

文章包含多个C语言程序示例,如计算最大公约数、最小公倍数、数组的最大值、最小值和平均值、矩阵转置、冒泡排序、年月日至天数转换、素数判断以及金字塔打印。此外,还有学生信息初始化、按年龄排序和查找最大ID的功能展示。
摘要由CSDN通过智能技术生成

百度出来的程序,都已经过运行的,都可以运行出结果来。

第一个程序
#include <stdio.h>
void Gc_Divisor_Func(void);
void Ls_Multiple_Func(void);
void Pyramid_Func(void);
void Max_Min_Average(void);
void Array2_Max_Min_Average(void);
void Matrix_Transpose(void);
void Bubble_Sort(void);
void YearMonthToDay(void);
void Prime_Number(void);
int main()
{
   /* 我的第一个 C 程序 */
    Gc_Divisor_Func();
    Ls_Multiple_Func();
//    Pyramid_Func();
    Max_Min_Average();
    Array2_Max_Min_Average();
//    Matrix_Transpose();
    Bubble_Sort();
    YearMonthToDay();
    Prime_Number();
   return 0;
}
void Gc_Divisor_Func(void)
{
    int m,n;
    int i,k;
    m=1032;
    n=234;
    k=m<n?m:n;
    for(i=k;i>=1;i--)
    {
        printf("最大公约数是%d\n",i);
        break;
    }
}
void Ls_Multiple_Func(void)
{
    int m,n;
    int max,min;
    int k;
    m=1124;
    n=884;
    max=m>n?m:n;
    min=m<n?m:n;
    k=max;
    while(k%min!=0)
        k+=max;
    printf("最小公倍数是%d\n",k);
}
#define N 10    //宏定义常量
void Max_Min_Average(void)
{
    int i;
    int max,min;
    double sum=0;
    int a[N]={58,58,96,100,25,55,66,88,99,77};
    max=a[0];
    min=a[0];
    for(i=0;i<N;i++)
    {
        if(a[i]>max)
            max=a[i];
        if(a[i]<min)
            min=a[i];
        sum+=a[i];
    }
    printf("max=%d,min=%d,average=%.2lf\n",max,min,sum/N);
}
void Array2_Max_Min_Average(void)
{
    int i,j;
    int a[3][4]={{1,2,3,4},{5,6,7,8},{1,19,39,0}};
    int max=a[0][0];
    int min=a[0][0];
    double average,sum;
    for(i=0;i<3;i++)
    {
        for(j=0;j<4;j++)
        {
            sum+=a[i][j];
            if(a[i][j]>max)
                max=a[i][j];
            if(a[i][j]<min)
                min=a[i][j];
        }
    }
    average=sum/(3*4);
    printf("max=%d,min=%d,avg=%.2lf\n",max,min,average);
}
void Matrix_Transpose(void)
{
    int i,j;
    int a[3][4]={{1,2,3,4},{5,6,7,8},{1,19,39,0}};
    int b[4][3];
    for(i=0;i<3;i++)
    {
        for(j=0;j<4;j++)
            printf("%5d",a[i][j]);
        printf("\n");
    }
    //矩阵转置
    for(i=0;i<3;i++)
    {
        for(j=0;j<4;j++)
            b[j][i]=a[i][j];
    }
    printf("******Matrix_Transpose*******\n");
    for(i=0;i<4;i++)
    {
        for(j=0;j<3;j++)
            printf("%5d",b[i][j]);
        printf("\n");
    }
}
void Bubble_Sort(void)
{
    int i,j,tmp;
    int a[N]={58,58,96,100,25,55,66,88,99,77};
    /*外层循环,N-1*/
    for(i=0;i<N-1;i++)
    {
        for(j=0;j<N-1-i;j++)
        {
            //change
            if(a[j]>a[j+1])
            {
                tmp=a[j];
                a[j]=a[j+1];
                a[j+1]=tmp;
            }
        }
    }
    for(i=0;i<N;i++)
    {
        printf("%d,",a[i]);    
    }
    printf("\n");
}
void YearMonthToDay(void)
{
    int year=1996,month=12;
    int leap=0;
    if((year%4==0 && year%100!=0) || year%400==0)
        leap=1;
    switch(month)
    {
        case 1:
        case 3:
        case 5:    
        case 7:
        case 8:    
        case 10:
        case 12:    
            printf("This month has 31 days~\n");
            break;
        case 4:
        case 6:
        case 9:    
        case 11:
            printf("This month has 30 days~\n");
            break;
        case 2:    
            printf("This month has %d days~\n",leap+28);
            break;
        default:
            break;
    }
}
void Prime_Number(void)
{
    int i,j,n;
    printf("100~200 Prime Number is:");
    //外层
    for(i=100;i<=200;i++)
    {
        n=i;
        for(j=2;j<=n-1;j++)
        {
            if(n%j == 0)
                break;
        }
        if(j==n)
            printf("%d,",n);
    }
    printf("\n");
}
void Pyramid_Func(void)
{
    int i;
    int j;
    for(i=1;i<=10;i++)
    {
        /*补齐10-i个空格*/
        for(j=1;j<=10-i;j++)
            printf(" ");
        /*再打2i-1个* */
        for(j=1;j<=2*i-1;j++)
            printf("*");
        printf("\n");
    }
}

第二个程序
#include <stdio.h>
#include <string.h>
typedef struct{
    char student_id[20];
    char name[20];
    int age;
    char gender[20];
    char tel[20];
}student;
void Student_Info_Init(student* team);
void Age_Sort_Func(void);
void Id_Find_Func(void);
int main()
{
   /*  Write C code in this online editor and run it. */
    Age_Sort_Func();
    Id_Find_Func();
   return 0;
}
void Student_Info_Init(student* team)
{    
    //First student's info
    strcpy(team[0].student_id, "001");
    strcpy(team[0].name, "LiHua");
    team[0].age=15;
    strcpy(team[0].gender, "boy");
    strcpy(team[0].tel, "12345");
    
    //Second student's info
    strcpy(team[1].student_id, "002");
    strcpy(team[1].name, "Lucy");
    team[1].age=13;
    strcpy(team[1].gender, "girl");
    strcpy(team[1].tel, "2322");
    
    //Third student's info
    strcpy(team[2].student_id, "003");
    strcpy(team[2].name, "Jerry");
    team[2].age=16;
    strcpy(team[2].gender, "boy");
    strcpy(team[2].tel, "4563");
    
    //Fourth student's info
    strcpy(team[3].student_id, "004");
    strcpy(team[3].name, "Maggie");
    team[3].age=13;
    strcpy(team[3].gender, "girl");
    strcpy(team[3].tel, "4689");
    
    //Fifth student's info
    strcpy(team[4].student_id, "005");
    strcpy(team[4].name, "Max");
    team[4].age=12;
    strcpy(team[4].gender, "boy");
    strcpy(team[4].tel, "3444");
}
void Age_Sort_Func(void)
{
    int i,j;
    double sum=0;
    student tmp; //for change
    student info[5];
    Student_Info_Init(info);
    //Age sort
    for(i=0;i<5;i++)
    {
        for(j=0;j<5-i-1;j++)    
        {
            if(info[j].age > info[j+1].age)    
            {
                tmp=info[j];
                info[j]=info[j+1];
                info[j+1]=tmp;
            }
        }
    }
    for(i=0;i<5;i++)
    {
        printf("student_id:%s | name:%s | age:%d | gender:%s | tel:%s\n",
               info[i].student_id,info[i].name,info[i].age,info[i].gender,info[i].tel);
    }
}
void Id_Find_Func(void)
{
    student info[5];
    Student_Info_Init(info);
    student tmp; //for change
    tmp=info[0];
    int i;
    for(i=1;i<5;i++)
    {
        if(strcmp(info[i].student_id,tmp.student_id)>0)
            tmp=info[i];
    }
    printf("greatest student_id:%s | name:%s | age:%d | gender:%s | tel:%s\n",
               tmp.student_id,tmp.name,tmp.age,tmp.gender,tmp.tel);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值