编程实战——编程初学者入门51~60

编程实战——编程初学者入门51~60

  • 51. 翻转直角三角形图案
  • 52. 序列重组矩阵
  • 53. 箭形图案
  • 54. 统计数据正负个数
  • 55. 奇偶统计
  • 56. 乐乐查找数字
  • 57. kiki算期末成绩
  • 58. 及格分数
  • 59. 判断整数奇偶性
  • 60. 成绩输入输出问题


51. 翻转直角三角形图案

题目描述:

KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的翻转直角三角形图案。

输入描述:

多组输入,一个整数(2~20),表示翻转直角三角形直角边的长度,即“*”的数量,也表示输出行数。

输出描述:

针对每行输入,输出用“*”组成的对应长度的翻转直角三角形,每个“*”后面有一个空格。

示例:

示例 1
输入:5
输出:
* * * * *
* * * *
* * *
* *
*

示例 2
输入:6
输出:
* * * * * *
* * * * *
* * * *
* * *
* *
*

c语言版本:

#include

int     main(void){
        int  n;
        while(scanf("%d",&n)!=EOF){
                for(int i=n;i>0;--i){
                        for(int j=0;j<i;++j)printf("* " );
                        printf("\n");
                }
        }
}

c++版本:

java版本:

python版本:


52. 序列重组矩阵

题目描述:

KiKi现在得到一个包含n*m个数的整数序列,现在他需要把这n*m个数按顺序规划成一个n行m列的矩阵并输出,请你帮他完成这个任务。

输入描述:

一行,输入两个整数n和m,用空格分隔,第二行包含n*m个整数(范围-231~231-1)。(1≤n≤10, 1≤m≤10)

输出描述:

输出规划后n行m列的矩阵,每个数的后面有一个空格。

示例:

示例 1
输入:
2 3
1 2 3 4 5 6
输出:
1 2 3
4 5 6

c语言版本:

#include
#include 

int     main(void){
        int  m,n;
        scanf("%d %d", &m,&n);
        getchar();
        int* num = (int *)malloc(sizeof(int)*n*m);
        for(int i=0;i<m*n;++i)scanf("%d", (num+i));
        for(int i=0;i<m;++i){
                for(int j=0;j<n;++j){
                        printf("%d ",num[i*n+j] );
                }
                printf("\n");
       }
}

c++版本:

java版本:

python版本:


53. 箭形图案

题目描述:

KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的箭形图案。

输入描述:

多组输入,一个整数(2~20)。

输出描述:

针对每行输入,输出用“*”组成的箭形。

示例:

示例 1
输入:2
输出:
    *
  **
***
  **
    *
 
示例 2
输入:3
输出:
      *
    **
  ***
****
  ***
    **
      *

c语言版本:

#include

int     main(void){
        int  m;
        while(scanf("%d", &m)!=EOF){
                if(m==0) printf("*\n");
                for(int i=0;i<m;++i){
                        for(int j=0;j<m-i;++j) printf("  " );
                        for(int l=0;l<=i;++l)printf("*" );
                        printf("\n" );
                }
                for(int i=0;i<=m;++i)printf("*");
                printf("\n");
                for(int i=0;i<m;++i){
                        for(int j=0;j<=i;++j) printf("  " );
                        for(int l=0;l<m-i;++l)printf("*" );
                        printf("\n" );
                }
        }
}

// 注:这个地方有个坑,是两空格,还有是多次输入

c++版本:

java版本:

python版本:


54. 统计数据正负个数

题目描述:

输入10个整数,分别统计输出正数、负数的个数。

输入描述:

输入10个整数(范围-231~231-1),用空格分隔。

输出描述:

两行,第一行正数个数,第二行负数个数,具体格式见样例。

示例:

示例 1
输入:-1 2 3 -6 7 8 -1 6 8 10
输出:
positive:7
negative:3

c语言版本:

#include

int     main(void){
        int m;
        int p=0,n=0;
        for(int i=0;i<10;++i){
                scanf("%d",&m );
                if(m>0)p++;
                if(m<0)n++;
        }
        printf("positive:%d\nnegative:%d\n",p,n );
}

c++版本:

java版本:

python版本:


55. 奇偶统计

题目描述:

任意输入一个正整数N,统计1~N之间奇数的个数和偶数的个数,并输出。

输入描述:

一行,一个正整数N。(1≤N≤100,000)

输出描述:

一行,1~N之间奇数的个数和偶数的个数,用空格分开。

示例:

示例 1
输入:5
输出:3 2

c语言版本:

#include

int     main(void){
        int m;
        scanf("%d",&m );
        printf("%d %d\n",m-m/2,m/2 );
}

c++版本:

java版本:

python版本:


56. 乐乐查找数字

题目描述:

给定n个整数和一个整数x,小乐乐想从n个整数中判断x出现几次,请编程帮他实现。

输入描述:

共3行
第一行,一个整数,表示n(1 <= n <= 100)。
第二行,共输入n个整数,两个整数之间用空格分隔。
第三行,输入一个整数,表示要查找的整数x。

输出描述:

一行,表示整数x出现的次数。

示例:

示例1
输入:
5
1 1 2 1 3
1
输出:
3

c语言版本:

#include
#include 

int     main(void){
        int n;
        scanf("%d",&n );
        getchar();

        int* num =(int*) malloc(sizeof(int)*n);
        for(int i=0;i<n;++i) scanf("%d",num+i );
        getchar();

        int m=0;
        int s=0;
        scanf("%d", &m);

        for(int i=0;i<n;++i)
                if(num[i]==m)s++;
        printf("%d\n", s);

        free(num);
}

c++版本:

java版本:

python版本:


57. kiki算期末成绩

题目描述:

KiKi这学期努力学习程序设计基础,要期末考试了,BoBo老师告诉他,总成绩包括四个部分,如下:
总成绩 = 实验成绩 * 20% + 课堂表现成绩 * 10% + 过程考核成绩 * 20% + 期末上机考试成绩 * 50%,现在输入KiKi的各项成绩,请计算KiKi的总成绩。

输入描述:

一行,包括四个整数(百分制),用空格分隔,分别表示实验成绩,课堂表现成绩,过程考核成绩,期末上机考试成绩。

输出描述:

一行,总成绩,保留小数点一位。

示例:

示例1
输入:100 100 90 80
输出:88.0

c语言版本:

#include

int     main(void){
        int a,b,c,d;
        scanf("%d %d %d %d", &a,&b,&c,&d);
        printf("%.1f\n", a*0.2+b*0.1+c*0.2+d*0.5);
}

c++版本:

java版本:

python版本:


58. 及格分数

题目描述:

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

输入描述:

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

输出描述:

针对每行输入,输出“Pass”或“Fail”。

示例:

示例 1
输入:94
输出:Pass

示例 2
输入:94
输出:Pass

c语言版本:

#include

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

c++版本:

java版本:

python版本:


59. 判断整数奇偶性

题目描述:

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

输入描述:

多组输入,每行输入包括一个整数。

输出描述:

针对每行输入,输出该数是奇数(Odd)还是偶数(Even)。

示例:

示例1
输入:
4
7
输出:
Even
Odd

c语言版本:

#include

int     main(void){
        int n;
        while (scanf("%d", &n)!=EOF) {
                if(n%2) printf("Odd\n");
                else printf("Even\n");
        }
}

c++版本:

java版本:

python版本:


60. 成绩输入输出问题

题目描述:

输入10科成绩,换行显示输入的10科成绩。

输入描述:

一行,输入10科成绩(整数表示,范围0~100),用空格分隔。

输出描述:

一行,输出输入的10科成绩,用空格分隔。

示例:

示例1
输入:98 100 99 97 95 99 98 97 96 100
输出:98 100 99 97 95 99 98 97 96 100

c语言版本:

#include

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

c++版本:

java版本:

python版本:


本题目全部来自牛客网,如果侵权,请留言删除

你可能感兴趣的:(编程实战)