入门C语言

文章展示了C语言编程中的多种基础操作,如数字三角形打印、去最高分和最低分求平均数、有序插入、筛选素数、登录验证以及计算包含数字9的算法,以及统计成绩的最高分、最低分和平均数。
摘要由CSDN通过智能技术生成

1、数字三角形

#include<stdio.h> //菜逼到此一游
int main()
{

int a,i,j,k;

int s[20]={1,2,3,4,5,7,8,9,10,11,12,13,14,15,16,17,18,19,20};

while(scanf("%d",&a)!=EOF){

for(i=0;i<a;i++){


for(j=0;j<=i;j++){

printf("%d ",s[j]);

}

printf("\n");

}
 
}
return 0;
}

2、去掉一个最高分和一个最低分来求其平均数

​
#include <stdio.h>
 
void Sort(int arr[])
{
    for(int i = 0; i < 7; i++)
  {
        for(int j = i+1; j < 7; j++)
       {
            if(arr[i] > arr[j])
           {
                int temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
           }
       }
  }
}
 
int main(){
    int arr[7] = { 0 };
    while(scanf("%d %d %d %d %d %d %d", &arr[0], &arr[1], &arr[2], &arr[3], &arr[4], &arr[5], &arr[6]) != EOF)
{
        int sum = 0;
        Sort(arr);
        for(int i = 1; i <= 5; i++)
        {
            sum += arr[i];
        }
        printf("%.2f\n", (float)sum / 5);
    }
    return 0;
}

​

 3、有序列序插入一个数,从小到大排序,将一个新输入的数插入到序列中,保证插入新数后仍然保持升序。

 

#include<stdio.h>
int main()
{
   //输入描述
    int n,i,j,insert;
    scanf("%d",&n);
    int arr[n];
    for(i=0;i<n;i++)
    {
        scanf("%d ",&arr[i]);
    }
    int num;scanf("%d",&num);
    //找到插入位置,插入位置往后的所有数往后移,然后空出插入位置位给元素插入
    for(i=0;i<n;i++)
    {
        if(num>arr[i])
        {
           insert=i+1;    //找到插入位置
        }
    }
    for(j=n;j>=insert;j--)   //往后循环一直insert插入的位置
    {
        arr[j+1]=arr[j];    //往后赋值,空出一个位置给n插入
    }
    arr[insert]=num;    //插入
    for(i=0;i<n+1;i++)
    {
        printf("%d ",arr[i]);
    }
    return 0;
}

3、筛选法求素数 

#include <stdio.h>
 
int main()
{
    int n = 0;
    int arr[100] = { 0 };
    //多组输入
    while (~scanf("%d", &n))
    {
        //将2~n的数存起来
        int i = 0; //循环变量
        for (i = 2; i <= n; i++)
        {
            arr[i] = i;
        }
        //开始筛选
        for (i = 2; i <= n; i++)
        {
            int j = 0;
            for (j = 2; j < i; j++)
            {
                if (i % j == 0)
                {
                    arr[i] = 0;
                }
            }
        }
        int cnt = 0;
        //输出
        for (i = 2; i <= n; i++)
        {
            if (arr[i] != 0)
            {
                printf("%d ", arr[i]);
            }
            else
            {
                cnt++;
            }
        }
        printf("\n%d\n", cnt);
    }
 
    return 0;
}

4、登录验证

#include<stdio.h>

int main()
{
    char name[20] = {0};
    char passage[20] = {0};
    while(scanf("%s %s", name, passage) != EOF)
    {
        if (strcmp(name, "admin") == 0 && strcmp(passage, "admin") == 0)
        {
            printf("Login Success!");
        }
        else
        {
            printf("Login Fail!");
        }
    }
    return 0;
}

 5、计算1到2019包含数字9的算法

#include <stdio.h>
 
int main()
{
    int cnt = 0;
    for (int i = 1; i <= 2019; i++)
    {
        int m = i;
        while (m > 0)
        {
            if (m % 10 == 9)
            {
                cnt++;
                break;
            }
            else
            {
                m /= 10;
            }
        }
    }
    //输出
    printf("%d\n", cnt);
 
    return 0;
}

6、输入n科成绩,统计其中的最高分和最低分及平均数(0<n<100)

#include<stdio.h>
int main()
{
    int n;
    scanf("%d",&n);
    float mark[100]={0};
    float count=0.0;
    for(int i=1;i<=n;i++)
    {
        scanf("%f",&mark[i]);
        count+=mark[i];
    }
     
    for(int i=0;i<n;i++)
    {
        int temp;
        for(int j=0;j<n-i;j++)
        {
           if(mark[j+1]>mark[j])
           {
               temp=mark[j+1];
               mark[j+1]=mark[j];
               mark[j]=temp;
           }
        }
    }
    printf("%.2f %.2f %.2f",mark[0],mark[n-1],count/n);
}

 希望大家看了以后有更多的收获!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值