青少年软件编程(C语言)等级考试试卷(一级)(202309)

青少年软件编程(C语言)等级考试试卷(一级)(202309)

分数:100  题数:5

一、编程题(共5题,共100分)

  1. 日期输出

日期输出:给定两个整数,表示一个日期的月和日。请按照"MM-DD"的格式输出日期,即如果月和日不到2位时,填补0使得满足2位。

时间限制:10000
内存限制:65536

【输入】2个整数m,d(0 < m <= 12, 0 < d <= 31)。数据保证日期合法。
【输出】按照题目要求输出日期

【样例输入】7 18
【样例输出】07-18
查看代码
 #include<iostream>
using namespace std;
int main(){
    int a,b;
    cin>>a>>b;
    if(a/10==0){
        cout<<"0"<<a;
    }else{
        cout<<a;
    }
    cout<<"-";
    if(b/10==0){
        cout<<"0"<<b;
    }else{
        cout<<b;
    }
    return 0;
}

 

  1. 计算(a+b)*(c-b)的值

给定3个整数a、b、c,计算表达式(a+b)*(c-b)的值。

时间限制:1000
内存限制:65536

【输入】输入仅一行,包括三个整数a、b、c, 数与数之间以一个空格分开。 (-10,000 < a,b,c < 10,000)
【输出】输出一行,即表达式的值

【样例输入】2 3 5
【样例输出】10
查看代码
 #include<iostream>
using namespace std;
int main(){
  int long a,b,c;
  cin>>a>>b>>c;
  cout<<((a+b)*(c-b));
  return 0;
}

 

 

  1. 有一门课不及格的学生

给出一名学生的语文和数学成绩,判断他是否恰好有一门课不及格(成绩小于60分)。

时间限制:10000
内存限制:65536

【输入】一行,包含两个在0到100之间的整数,分别是该生的语文成绩和数学成绩。

【输出】若该生恰好有一门课不及格,输出1;否则输出0。

【样例输入】50 80
【样例输出】1
查看代码
 #include<iostream>
using namespace std;
int main(){
  int a,i,h,c=0;
  for(i=1;i<=2;i++){
    cin>>a;
    if(a<60){
      c++;
    }
  }
  if(c==1){
    cout<<"1";
  }else{
    cout<<"0";
  }
  return 0;
}
  1. 特殊求和
特殊求和,如果一个数能够被7整除或者十进制表示中含有数字7,那么我们称这个数为幻数,比如17,21,73是幻数,而6,59不是。对于给定的N,求出1~N中所有幻数的和。

时间限制:1000
内存限制:65536

【输入】一个整数N(1 < N < 10000)。
【输出】一个整数,表示1~N中所有幻数的和。

【样例输入】14
【样例输出】21
查看代码
 #include<iostream>
using namespace std;
int main(){
  int long a,b,c,h=0,i;
  cin>>a;
  for(i=1;i<=a;i++){
    if(i%7==0){
      h+=i;
      continue;
    }else{
      c=i;
      while(true){
        if(c%10==7){
          h+=i;
          break;
        }
        if(c==0){
          break;
        }
        c/=10;
        }
      }
    }
  cout<<h;
  return 0;
}
  1. 比n小的最大质数

 

比n小的最大质数,对于给定的n,求比n小的质数中最大的一个。质数是指一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。

时间限制:1000
内存限制:65536

【输入】一个整数n。( 2 < n < 10000)
【输出】一个整数,即题目要求的解。

【样例输入】100
【样例输出】97
查看代码
 #include<iostream>
using namespace std;
int main(){
  long n,i,m,h=0;
  cin>>n;
  for(i=n-1;i>=2;i--){
    h=0;
    for(m=2;m<i;m++){
      if(i%m==0){
        h=1;
        break;
      }
    }
    if(h==0){
      cout<<i;
      break;
    }
  }
  return 0;
}
posted @ 2023-12-03 16:12  WangZhaowei  阅读(291)  评论(0)    收藏  举报