牛客网C语言语法篇练习之习题集(4)

导读:本篇文章讲解 牛客网C语言语法篇练习之习题集(4),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

   牛客网C语言语法篇练习之习题集(4) 牛客网C语言语法篇练习之习题集(4)

 

目录

1.箭形图案(控住输出这个图案)

 2.反斜线形图案(简单的输出一个斜线)

3.班级成绩输入输出(成绩输入,然后再输出成绩和成绩的和,两种方法来做一下)

4.矩阵元素定位(二维数组里面找数字)

5.  有序序列判断(数组排序)

6.有序序列插入一个整数(插入第三者)

7.序列中删除指定数字(删除第三者)

8. 序列中整数去重(找出真假,留真,去假)

9.筛选法求素数(就是加强版的找素数)

10. 最高身高(二维数组里面找最大的数)


时隔一周时间,我又开始刷题了(没错,我其实是偷懒了一周时间),现在牛客网语法篇大概还有70道题,这块刷完后,就去力扣上用Java再刷一些题

我认为刷题这件事,是学习途中很有必要的一件事,也值得坚持下去,

既提升自己的算法水平,更提高自己写代码的能力。

所以看到这里的小伙伴,如果你还没有开始刷题,请赶快开始刷题吧,

如果你已经开始刷题了,请继续坚持下去。

下面开始正文

1.箭形图案(控住输出这个图案)

链接  箭形图案_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

分析一下吧

牛客网C语言语法篇练习之习题集(4)

上代码,自己看一下,和你想的一样不

#include<stdio.h>

int main()
{
    int n = 0;
    while(~scanf("%d",&n))
    {
        int i=0,j=0;
        //上半部分
        for(i=0;i<=n;i++)
        {
            for(j=0;j<n-i;j++)
            {
                printf("  ");
            }
            for(j=0;j<=i;j++)
            {
                printf("*");
            }
            printf("\n");
        }
        //下半部分
       for(i=0;i<n;i++)
       {
           for(j=0;j<=i;j++)
           {
               printf("  ");
           }
           for(j=0;j<n-i;j++)
           {
               printf("*");
           }
           printf("\n");
       }  
    }
    return 0;
}

 

 2.反斜线形图案(简单的输出一个斜线)

链接    反斜线形图案_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 这道题不难,但我把这道题放在这里的原因是,

我写的虽然是正确的跑过去了,但在我看了别人的代码后,发现我写的代码有点长,

所以是想提醒大家,有时候做完题后可以看看别人代码,找找差距。

好了简单的看一下解析和代码吧

牛客网C语言语法篇练习之习题集(4)

#include<stdio.h>

int main()
{
    int n = 0;
    while (~scanf("%d", &n))
    {
        int i = 0, j = 0;
        for (i = 1; i <= n; i++)
        {
            for (j = 1; j <= i; j++)
            {
                if (j != 1)
                {
                     printf(" ");
                }
                if (i == j)
                {
                    printf("*\n");
                }
            }
        }
    }
    return 0;
}

 

3.班级成绩输入输出(成绩输入,然后再输出成绩和成绩的和,两种方法来做一下

链接     班级成绩输入输出_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 牛客网C语言语法篇练习之习题集(4)

 下面先看第一个方法

牛客网C语言语法篇练习之习题集(4)牛客网C语言语法篇练习之习题集(4)


 

 4.矩阵元素定位(二维数组里面找数字)

链接   矩阵元素定位_牛客题霸_牛客网 (nowcoder.com)

 牛客网C语言语法篇练习之习题集(4)

 牛客网C语言语法篇练习之习题集(4)

#include<stdio.h>

int main()
{
    int n,m,x,y;
    int arr[15][15]={0};
    scanf("%d %d\n",&n,&m);
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            scanf("%d ",&arr[i][j]);
        }
    }
    scanf("%d %d",&x,&y);
    printf("%d",arr[x-1][y-1]);
    return 0;
}

 

5.  有序序列判断(数组排序)

链接   有序序列判断_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 分析一下

牛客网C语言语法篇练习之习题集(4)

 

#include<stdio.h>

int main()
{
    int n = 0,flag1=0,flag2=0;
    scanf("%d",&n);
    int a[50]={0};
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        if(i>0)
        {
            if(a[i-1]>a[i]){
                flag1 = 1;
            }else if(a[i-1]<a[i]){
                flag2 = 1;
            }
        }
    }
    if(flag1&&flag2){
        printf("unsorted\n");
    }else{
        printf("sorted\n");
    }
    return 0;
}

 

6.有序序列插入一个整数(插入第三者)

链接      有序序列插入一个整数_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4) 

 牛客网C语言语法篇练习之习题集(4)

#include<stdio.h>
int main()
{
    int n,i,a,j;
    int arr[50] = { 0 };
    scanf("%d", &n);
    for (i = 1; i <= n; i++)
    {
        scanf("%d", &arr[i]);
    }
    scanf("%d", &a);
    for (i = 1; i <= n + 1; i++)
    {
        if (a < arr[i]||i==n+1) {
            for (j = 0; j < i; j++) {
                arr[j] = arr[j + 1];
            }
            arr[i-1] = a;
            break;
        }
    }
    for (i = 0; i <= n; i++) {
        printf("%d ", arr[i]);
    }
    return 0;
}

 

7.序列中删除指定数字(删除第三者)

链接     序列中删除指定数字_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 简单分析一下

牛客网C语言语法篇练习之习题集(4)

 看代码,和你想的一样不,哪里有区别

#include<stdio.h>
int main()
{
    int n,i,a,j;
    int arr[50] = { 0 };
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }
    scanf("%d", &a);
    for (i = 0; i < n; i++)
    {
        if (arr[i] != a) {
           printf("%d ",arr[i]);
        }else{
            arr[i]=arr[i+1];
        }
    }
    return 0;
}

 

8. 序列中整数去重(找出真假,留真,去假)

链接    序列中整数去重_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 分析一下

牛客网C语言语法篇练习之习题集(4)

 上代码

#include<stdio.h>

int main()
{
    int n =0,i=0,j=0;
    //输出
    scanf("%d",&n);
    int arr[5000]={0};
    for(i=0;i<n;i++)
    {
        scanf("%d ",&arr[i]);
    }
    //去重
    for(i=0;i<n;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(arr[i]==arr[j])
            {//删除
                for(int k=j;k<n-1;k++)
                {
                    arr[k]=arr[k+1];
                }
                n--;
                j--;
            }
        }
    }
     //输出
    for(i=0;i<n;i++)
    {
        printf("%d ",arr[i]);
    }
    
    return 0;
}

 

9.筛选法求素数(就是加强版的找素数)

链接    ​​​​​​筛选法求素数_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 分析一下

牛客网C语言语法篇练习之习题集(4)

 上代码

#include<stdio.h>

int main()
{
    int n = 0;
    int arr[100] = {0};
    //输入
    while(scanf("%d",&n) != EOF)
    {
        int i = 0,j = 0;
        for(i = 2 ; i <= n ; i++){
            arr[i]=i;
        }
        //筛选
        for(i=2 ; i<=n ; i++){
            for(j=2 ; j<i ; j++){
                if(i%j == 0){
                    arr[i]=0;
                }
            }
        }
            int ret =0;
            //输出
            for(i=2;i<=n;i++){
            if(arr[i] != 0){
                printf("%d ",arr[i]);
            }else{
                ret++;
            }
        }
            printf("\n%d",ret);      
    }
    return 0;
}

 

10. 最高身高(二维数组里面找最大的数)

链接    最高身高_牛客题霸_牛客网 (nowcoder.com)

牛客网C语言语法篇练习之习题集(4)

 分析一下

牛客网C语言语法篇练习之习题集(4)

 上代码

#include<stdio.h>

int main()
{
    int n = 0,m = 0;
    scanf("%d %d",&n,&m);
    int arr[10][10]={0};
    int x=0,y=0,max=0;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            scanf("%d ",&arr[i][j]);
            if(max<arr[i][j])
            {
                x=i+1;
                y=j+1;
                max = arr[i][j];
            }
        }    
    }
    printf("%d %d\n",x,y);
    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/87371.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!