日常刷题篇(入门)

简介: 我从简单到难,一起走上漫漫刷题路!我会持续在我的博客中更新我每天刷题的内容!相互交流!

我从简单到难,一起走上漫漫刷题路!

我会持续在我的博客中更新我每天刷题的内容!

相互交流!

大家一键三连,多多关注!

这是今天我给大家带来的题!以后难度逐渐加深!


1.KiKi求质数个数

描述

KiKi知道了什么是质数(只能被1和他自身整除的数),他现在想知道所有三位整数中,有多少个质数。

输入描述:

输出描述:

一行,一个整数,表示所有三位整数中,有多少个质数。

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main() {
    int count = 0, flag;
    for (int i = 100; i < 1000; i++) {
        flag = 0;
        for (int j = 2; j < i; j++) {
            if (i % j == 0) {
                flag = 1;
                break;
            }
        }
        if (flag == 0)
            count++;
    }
    printf("%d", count);
    return 0;
}

2.KiKi去重整数并排序

描述

给定一个整数序列,KiKi想把其中的重复的整数去掉,并将去重后的序列从小到大排序输出。

输入描述:

第一行,输入一个整数n,表示序列有n个整数。

第二行输入n个整数(每个整数大于等于1,小于等于1000),整数之间用空格分隔。

输出描述:

去重并且从小到大排列的整数序列,整数之间用空格分隔。

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

3.KiKi判断上三角矩阵

描述

KiKi想知道一个n阶方矩是否为上三角矩阵,请帮他编程判定。上三角矩阵即主对角线以下的元素都为0的矩阵,主对角线为从矩阵的左上角至右下角的连线。

输入描述:

第一行包含一个整数n,表示一个方阵包含n行n列,用空格分隔。 (2≤n≤10)

从2到n+1行,每行输入n个整数(范围-231~231-1),用空格分隔,共输入n*n个数。

输出描述:

一行,如果输入方阵是上三角矩阵输出"YES"并换行,否则输出"NO"并换行。

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


4.KiKi学结构体和指针

描述

KiKi学习了结构体和指针,他了解了结构体类型可以定义包含多个不同类型成员,而指针本质是内存地址,是引用数据的另外一种方式。现在他想将多个输入的数据通过结构体和指针的方式连接在一起,形成一个单向链表,即:每个结点是结构体类型,包括整型数据成员(data)和结构体指针类型成员(next),每个结点的指针部分指向下一个输入的结点。具体建立过程如下:先输入n个整数,按照数据输入的顺序建立一个带头结点的单链表,再输入一个数据m,将单链表中的值为m的结点全部删除。输出删除后的单链表信息。


输入描述:


包括三行:


第一行输入数据个数n (3≤n≤100);


第二行依次输入n个整数,用空格分隔;


第三行输入欲删除数据m。

输出描述:

包括两行:

第一行输出完成删除后的单链表长度;

第二行依次输出完成删除后的单链表数据。

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

5.KiKi定义电子日历类

描述

KiKi学习了面向对象技术,学会了通过封装属性(变量)和行为(函数)定义类,现在他要设计一个电子日历类TDate。

它有3个私有数据成员:Month,Day,Year和若干个公有成员函数,要求:
(1)带有默认形参值的构造函数,默认值为0, 0, 0;

(2)输出日期函数,用“日/月/年”格式输出日期;

(3)设置日期函数,从键盘输入年、月、日。

输入描述:

一行,三个整数,用空格分隔,分别表示年、月、日。

输出描述:

一行,用“日/月/年”格式输出日期。

#include<stdio.h>
typedef struct date {
  int year;
  int month;
  int days;
} date;
int main(void) {
  date d;
  scanf("%d %d %d", &d.year, &d.month, &d.days);
  printf("%d/%d/%d", d.days, d.month, d.year);
}

6.KiKi设计类继承

描述

KiKi理解了继承可以让代码重用,他现在定义一个基类shape,私有数据为坐标点x,y,  由它派生Rectangle类和Circle类,它们都有成员函数GetArea()求面积。派生类Rectangle类有数据:

矩形的长和宽;派生类Circle类有数据:圆的半径。Rectangle类又派生正方形Square类,定义各类并测试。输入三组数据,分别是矩形的长和宽、圆的半径、正方形的边长,输出三组数据,分别是矩形、圆、正方形的面积。圆周率按3.14计算。

输入描述:

输入三行,

第一行为矩形的长和宽,

第二行为圆的半径,

第三行为正方形的边长。

输出描述:

三行,分别是矩形、圆、正方形的面积。


#include<stdio.h>
int Rectangle(int x, int y) {
    return x * y;
}
float Circle(int r) {
    return r * r * 3.14;
}
int Square(int b) {
    return b * b;
}
int main() {
    int c, k;
    int r;
    int b;
    scanf("%d %d %d %d", &c, &k, &r, &b);
    float ret = Circle(r);
    printf("%d\n", Rectangle(c, k));
    if (ret - (float)(int)ret) {
        if ((int)(ret * 100) % 10)
            printf("%.2f\n", ret);
        else
            printf("%.1f\n", ret);
    } else
        printf("%d\n", (int)ret);
    printf("%d", Square(b));
}

7.圣诞树

描述

今天是圣诞节,牛牛要打印一个漂亮的圣诞树送给想象中的女朋友,请你帮助他实现梦想。

输入描述:

输入圣诞树的高度h,1<=ℎ<=100

输出描述:

输出对应的圣诞树


#include <stdio.h>
void sans(int x) {
    if (x == 0)
        printf("  *   ");
    else if (x == 1)
        printf(" * *  ");
    else if (x == 2)
        printf("* * * ");
}
int main() {
    int n, i, j, k, m;
    while (scanf("%d", &n) != EOF) {
        for (i = 0; i < n; i++) {         
            for (j = 0; j < 3; j++) {    
                for (k = 0; k < (n - 1) - i; k++)
                    printf("   ");
                for (m = 0; m < i + 1; m++)
                    sans(j);
                printf("\n");
            }
        }
        for (i = 0; i < n; i++) {  
            for (j = 0; j < n * 6 / 2 - 1; j++)
                printf(" ");
            printf("*\n");
        }
    }
    return 0;
}

8.超级圣诞树

描述

今天是圣诞节,牛牛要打印一个漂亮的圣诞树送给想象中的女朋友,请你帮助他实现梦想。

输入描述:

输入圣诞树的大小 1≤n≤8

输出描述:

输出对应的圣诞树


#define _CRT_SECURE_NO_WARNINGS 1
#include<math.h>
#include<stdio.h>
int main() {
    int n = 0;
    scanf("%d", &n);
    int i = 0;
    int j = 0;
    int k = 0;
    if (n == 1) {
        printf("  *\n");
        printf(" * *\n");
        printf("* * *\n");
        printf("  *\n");
    }


相关文章
|
6月前
|
测试技术
蓝桥杯刷题|02入门真题
蓝桥杯刷题|02入门真题
|
6月前
|
测试技术
蓝桥杯刷题|03入门真题
蓝桥杯刷题|03入门真题
|
6月前
|
测试技术
蓝桥杯刷题|01入门真题
蓝桥杯刷题|01入门真题
|
存储 算法 C语言
日常刷题篇(入门)
我从简单到难,一起走上漫漫刷题路! 我会持续在我的博客中更新我每天刷题的内容! 相互交流!
日常刷题篇(入门)
我从简单到难,一起走上漫漫刷题路! 我会持续在我的博客中更新我每天刷题的内容! 相互交流!
|
前端开发
牛客前端宝典——刷题 ##Day6
🏆编程就像我们平常做题一样,如果只是一味的学习不去做题的话所得到的效果微乎其微。
100 0
牛客前端宝典——刷题 ##Day6