• c语言:简单的c语言题合集


    杨辉三角:

    杨辉三角这一类的题型全都是找规律,无一例外;个人感觉这类找规律的题型完全是出题人闲得无聊,但是c语言考试无论是期中期末甚至考研都考

    还是在这里做一个记录吧:

    #include<stdio.h>
    #include<stdlib.h>
    int main(){
        int a[14][14];
        int n;
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            a[i][1]=1;//因为三角形的构造原因,第一个数时1
            a[i][i]=1;//最后一个数也是一,即a[i][i]
        }
        for(int i=1;i<=n;i++)//设定是以1为下标开始的,i代表行号
            for(int j=2;j<=i-1;j++)//j代表列号,由于每一行的最右边都补1了,所以j只能到倒数第二个为止,否则覆盖了1
                a[i][j]=a[i-1][j-1]+a[i-1][j];//规律:a[i][j]=a[i-1][j-1]+a[i-1][j]
        
        for(int i=1;i<=n;i++)//从第1行开始打印
        {
            for(int k=1;k<=n-i;k++)//为了美观,我们需要在每一行前面补上空格保持格式
                printf("   ");//一共5行(代表n行),第一行就需要补4个空格,第i行就要补n-i个空格
            for(int j=1;j<=i;j++)//打印每行数字的个数:第一行1个,第二行2个,第三行3个
                printf("%6d",a[i][j]);
            printf("
    ");//每一行打印完成就换行
        }
        printf("
    ");
    }

    给定一个整形数组b[0...N-1],b中连续相等元素构成的子序列称为平台。编写程序,求出b中最长平台的长度

    #include<stdio.h>
    int main(){
        int a[10]={1,1,2,3,3,3,4,4,4,4};
        int n=10;
        int max=0;//最长子串长度
        int cnt=1;//临时计数器,cnt定为1是因为自己本身就算一个长度
        for(int i=1;i<n;i++)
        {
            if(a[i]==a[i-1])//自身等于前一个数,cnt++,并且把自身赋给max
            {
                cnt++;//临时计数器++
                max=cnt;//将临时的计数器放入到长度计数器max中
                printf("a[%d]:%d,cnt=%d,max=%d
    ",i,a[i],cnt,max);
            }
            else{
                cnt=1;//前后不相等,重置为1
                printf("a[%d]:%d,cnt=%d,max=%d
    ",i,a[i],cnt,max);
            }
        }
        printf("%d
    ",max);
    }
  • 相关阅读:
    在线整数序列百科全书
    非常完整的线性DP及记忆化搜索讲义
    洛谷P2858 奶牛零食 题解 区间DP入门题
    HDU3394 Railway 题解(边双连通分量)
    POJ1144 Network 题解 点双连通分量(求割点数量)
    LibreOJ6279. 数列分块入门 3 题解
    LibreOJ 6278. 数列分块入门 2 题解
    LibreOJ 6277. 数列分块入门 1 题解
    洛谷P1020 导弹拦截 题解 LIS扩展题 Dilworth定理
    CF1272E. Nearest Opposite Parity 题解 广度优先搜索
  • 原文地址:https://www.cnblogs.com/oldfish123/p/13550178.html
Copyright © 2020-2023  润新知