牛客C基础题练习

在这里插入图片描述

乘风破浪会有时,直挂云帆济沧海。

前言

大家好啊!💖💖💖我是vince,大家在学习编程语言的过程中应该会发现,理论基础很重要,然后实际上机操作更加重要,而上机操作无非是写写项目代码,更多的当然是刷题啦~然后此时一个好的刷题网站真的非常重要,它会让你方向正确,学习思路清晰,因此,在这里 🌷给爱学习的小伙伴们推荐个学习、刷题的网站牛客网,其中面试题应有尽有,真的能够给你带来很好的学习体验
👇👇👇
爱学习的亲们!🎉🎉🎉请点击我开始注册!学习、刷题🎉🎉🎉
以下是牛客题库界面:
在这里插入图片描述

接下来,我们进入正题,我们来看看相关的一些例题。

正文

题目一:牛牛的线段

🌰描述 牛牛有一个线段放在二维坐标系中,已知线段两个点的坐标 (x1,y1),(x2,y2) 。牛牛想知道这个线段的长度的平方在这里插入图片描述

🔥输入描述: 第一行输入 x1 和 y1,用空格隔开。 第二行输入 x2 和 y2,用空格隔开。 其中 x1 , y1 ,x2 ,y2 都是整数

🔥输出描述: 输出线段的长度的平方 在这里插入图片描述

代码如下:

#include <stdio.h>
#include <math.h>

int main(void)
{
    int x1 = 0, x2 = 0;
    int y1 = 0, y2 = 0;
    scanf("%d %d",&x1, &y1);
    scanf("%d %d",&x2, &y2);
    int ret = pow((x1-x2),2)+pow((y1-y2),2);
    printf("%d\n",ret);
}

总结:

注意这里需要仔细审题,题目要求的是求其平方就可以。

题目二:及格分数

🌰描述 KiKi想知道他的考试分数是否通过,请帮他判断。从键盘任意输入一个整数表示的分数,编程判断该分数是否在及格范围内,如果及格,即:分数大于等于60分,是输出“Pass”,否则,输出“Fail”。

🔥输入描述: 多组输入,每行输入包括一个整数表示的分数(0~100)。

🔥输出描述: 针对每行输入,输出“Pass”或“Fail”。 在这里插入图片描述

代码如下:

#include <stdio.h>

int main(void)
{
    int n = 0;
    while(scanf("%d",&n)!=EOF)
    {
        if(n>=60)
        {
            printf("Pass\n");
        }
        else
        {
            printf("Fail\n");
        }
    }
}

总结:

这里就开始C的分支结构了,慢慢的就走进C的主题啦!
这道题存在多组输入,因此在敲代码时候注意了哈!

题目三:判断整数奇偶性

🌰描述 KiKi想知道一个整数的奇偶性,请帮他判断。从键盘任意输入一个整数(范围-231~231-1),编程判断它的奇偶性。

🔥输入描述: 多组输入,每行输入包括一个整数。

🔥输出描述: 针对每行输入,输出该数是奇数(Odd)还是偶数(Even)。 在这里插入图片描述

代码如下:

#include<stdio.h>
int main()
{
    int n=0;
    while(~scanf("%d",&n))
    {
        if(n%2==0)
        {
            printf("Even\n");
        }
        else
        {
            printf("Odd\n");
        }
    }
    return 0;
}

题目四:判断元音还是辅音字母

🌰描述 KiKi开始学习英文字母,BoBo老师告诉他,有五个字母A(a), E(e), I(i), O(o),U(u)称为元音,其他所有字母称为辅音,请帮他编写程序判断输入的字母是元音(Vowel)还是辅音(Consonant)。

🔥输入描述: 多组输入,每行输入一个字母。

🔥输出描述: 针对每组输入,输出为一行,如果输入字母是元音(包括大小写),输出“Vowel”,如果输入字母是非元音,输出“Consonant”。
在这里插入图片描述

代码如下:


#include<stdio.h>
#include<ctype.h>

int main()
{
    char letter = 0;
    while (scanf(" %c", &letter)!=EOF)//%c前面若加一个空格是为了消除回车
    {
        //getchar();//若没有前面的空格消除回车,就用getchar消除空格
        letter = toupper(letter);//这个函数作用是将小写字母转换为大写字母
        switch (letter)
        {
        case 'A':
        case 'E':
        case 'I':
        case 'O':
        case 'U':printf("Vowel\n"); break;
        default:printf("Consonant\n");
        }
    }
    return 0;
}

总结:

这道题里面有两个陌生的知识点:
1、首先出现利用getchar()函数来消除回车,这里给%c前面加一个空格也符合这道题目的格式要求,但是我们需要了解学习到getchar()函数消除回车的用法哈!
2、这里出现了toupper()函数,这个函数的作用是:将小写字母转换为其对应的大写字母。

题目五:牛牛的判断题

🌰描述 牛牛从键盘输入整数 x 和左右边界 l 和 r 共三个整数。请你判断 x 是否在 l 和 r 之间 (即是否存在 l≤x≤r )

🔥输入描述: 依次输入 x ,l ,r 三个整数。用空格隔开。

🔥输出描述: 如果存在 l≤x≤r 则输出 true ,否则输出 false 在这里插入图片描述

代码如下:

#include <stdio.h>

int main(void)
{
    int x = 0, l = 0, r = 0;
    scanf("%d %d %d",&x,&l,&r);
    if(x >= l && x <= r)
        printf("true\n");
    else
        printf("false\n");
}

题目六:判断闰年

🌰描述 判断一个整数n是否是闰年

🔥输入描述: 输入一个整数n (1≤n≤2018)

🔥输出描述: 是闰年输出"yes" 否则输出"no" 在这里插入图片描述

代码如下:

#include<stdio.h>

int main(void)
{
    int n = 0;
    scanf("%d",&n);
    if(n % 4 == 0 && n % 100 != 0 || n % 400 == 0)
        printf("yes\n");
    else
        printf("no\n");
}

总结:

这道题里面需要记住判断闰年的条件:(n % 4 == 0 && n % 100 != 0 || n % 400 == 0)。

题目七:判断字母

🌰描述 从键盘任意输入一个字符,编程判断是否是字母(包括大小写)。

🔥输入描述: 输入包括一个字符。

🔥输出描述: 输出该字符是字母(YES)或不是(NO)。 在这里插入图片描述

代码如下:

#include<stdio.h>
int main(void)
{
	char n = 0;
	scanf("%c", &n);
	if (n >= 'a' && n <= 'z' || n>='A' && n <= 'Z')
	{
		printf("YES\n");
	}
	else
	{
		printf("NO\n");
	}
}

题目八:四季

🌰描述 气象意义上,通常以3~5月为春季(spring),6~8月为夏季(summer),9~11月为秋季(autumn),12月~来年2月为冬季(winter)。请根据输入的年份以及月份,输出对应的季节。

🔥输入描述: 输入的数据格式是固定的YYYYMM的形式,即:年份占4个数位,月份占2个数位。

🔥输出描述: 输出月份对应的季节(用英文单词表示,全部用小写字母)。 在这里插入图片描述

代码如下:

#include <stdio.h>

int main(void)
{
    int m = 0;
    scanf("%d",&m);
    int n = m % 100;
    switch(n)
    {
        case 3:
        case 4:
        case 5:printf("spring\n");break;
        case 6:
        case 7:
        case 8:printf("summer\n");break;
        case 9:
        case 10:
        case 11:printf("autumn\n");break;
        default:printf("winter\n");
    }
}

题目九:健康评估

🌰描述 BMI指数(即身体质量指数)是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。例如:一个人的身高为1.75米,体重为68千克,他的BMI=68/(1.752)=22.2(千克/米2)。当BMI指数为18.5~23.9时属正常,否则表示身体存在健康风险。编程判断人体健康情况。

🔥输入描述: 一行,输入一个人的体重(千克)和身高(米),中间用一个空格分隔。

🔥输出描述: 一行,输出身体Normal(正常)或Abnormal(不正常)。 在这里插入图片描述

代码如下:

#include<stdio.h>
int main(void)
{
    double m = 0,n = 0;
    double BMI = 0;
    scanf("%lf %lf",&m,&n);
    BMI = m / (n*n);
    if(BMI >= 18.5 && BMI <= 23.9)
    {
        printf("Normal\n");
    }
    else
    {
        printf("Abnormal\n");
    }
}

题目十:小乐乐找最大数字

🌰描述 小乐乐获得4个最大数,请帮他编程找到最大的数。

🔥输入描述: 一行,4个整数,用空格分开。

🔥输出描述: 一行,一个整数,为输入的4个整数中最大的整数。 在这里插入图片描述

代码(1)如下:

#include <stdio.h>

int main(void)
{
    int n = 0;
    int max = 0;
    while(scanf("%d",&n) != EOF)
    {
        if(max < n)
        {
            max = n;
        }
    }
    printf("%d\n",max);
}

代码(2)如下:
利用数组和三目运算符结合判断

#include <stdio.h>

int main(void)
{
    int arr[4] = {0};
    for(int i = 0; i < 4; i++)
    {
        scanf("%d",&arr[i]);
    }
    int max = 0;
    for(int i = 0; i < 4; i++)
    {
        max = max < arr[i] ? arr[i] : max;
    }
    printf("%d\n",max);
}

结语

一个好的刷题学习环境真的非常重要,这对你的学习有极大的帮助,牛客就属于好的刷题学习环境之列,大家还没体验过的赶快去体验爱学习的亲们!🎉🎉🎉请点击我开始注册!学习、刷题🎉🎉🎉
牛客复习题目练习,代码人一定得多敲代码,从基础题型向后一步一步走,从质变到达量变,加油!
也希望大家能够从这些题目中寻找到一些灵感,如有不足之处或者有其他方法,请大家评论区打出来哈~ 互相学习,互相进步~
再见啦!
谢谢阅读!

评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

<vince>

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值