当前位置: 首页 > news >正文

【C语言程序设计】实验 4

目录

1. 偶数之和

2. 整数的各位数字之和 

3. 最大最小数(循环)

4. 今天是今年第几天(条件 数组) 

5. 成绩转换 

6. 字母转换 


1. 偶数之和

【问题描述】输入n(>=1)个整数,计算其中的偶数之和。

【输入形式】第一个数为n,接下来有n个数,空格分开。
【输出形式】一个整数,它是这n个整数中的偶数之和。

【样例输入】6 6 8 9 2 6 13
【样例输出】22

【样例说明】前面的6表示有6个数,后面6个数分别为6,8,9,2,6,13,其中的偶数之和为22。

#include<stdio.h>
int main(){
    int n,s=0,t;
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d",&t);
        if(t%2==0){
            s=s+t;
        }
    }
    printf("%d",s);
    return 0;

2. 整数的各位数字之和 

【问题描述】求一个整数的各位数字之和及位数。注意,0是1位数,如果是负数,则求它的绝对值的各位数字之和及位数。

【输入形式】一个整数

【输出形式】这个整数的各位数字之和及位数,空格分开。

【样例1输入】369852

【样例1输出】33 6
【样例说明】369852各位数字之和为33,是6位数.

【样例2输入】-23

【样例2输出】5 2

【样例3输入】0

【样例3输出】0 1

#include<stdio.h>
int main(){
    int n,num=0,sum=0;
    scanf("%d",&n);
    if(n==0){
        printf("0 1");
        return 0;
    }
    if(n<0) n=-n;
    while(n>0){
        sum+=n%10;
        n=n/10;
        num++;
    }
    printf("%d %d",sum,num);
    return 0;

3. 最大最小数(循环)

【问题描述】输入10个整数,输出其中的最小数和最大数。

【输入形式】10个数为整数,空格分开

【输出形式】先后输出最小数和最大数,空格分开

【样例输入】12 36 98 74 10 25 86 57 49 36
【样例输出】10 98

#include<stdio.h>
int main(){
    int i,min,max,x;
    scanf("%d",&min);
    max=min;
    for(i=0;i<9;i++){
        scanf("%d",&x);
        if(min>x) min=x;
        if(max<x) max=x;
    } 
    printf("%d %d",min,max);
    return 0;

4. 今天是今年第几天(条件 数组) 

【问题描述】输入任一年月日表示的有效日期(年的范围为1~3000),显示该天是当年的第几天和星期几,已知公元首日(0001/01/01)为星期1。提示:如果当年的第几天today已得知,则从公元首日到现在的天数可用 d=today+(year-1)*365+((year-1)/4-(year-1)/100+(year-1)/400)计算。

【输入形式】输入任一年月日,整数形式,空格分开。

【输出形式】二个整数,空格分开。星期用0,1~6表示,星期一用1,星期日用0.
【样例1输入】2019 3 13
【样例1输出】72 3
【样例1说明】2019年3月13号是这年的第72天,星期三。

【样例2输入】2020 10 7
【样例2输出】281 3

【样例2说明】2020年10月7号是这年的第281天,星期三。

#include<stdio.h>
int main(){
    int year,month,day;
    int a[12];
    scanf("%d %d %d",&year,&month,&day);
    if(year%400==0||(year%100!=0&&year%4==0)){
        a[1]=29;
    }else{
        a[1]=28;
    }    
    a[0]=31;
    a[2]=31;
    a[3]=30;
    a[4]=31;
    a[5]=30;
    a[6]=a[7]=31;
    a[8]=30;
    a[9]=31;
    a[10]=30;
    a[11]=31;
    int s=0;
    for(int i=0;i<month-1;i++){
        s+=a[i];
    }
    s+=day;
    int d,w;
    d=s+(year-1)*365+((year-1)/4-(year-1)/4-(year-1)/100+(year-1)/400);
    w=d%7;
    printf("%d %d",s,w);
}

5. 成绩转换 

【问题描述】由键盘输入某个同学的考试成绩,将其转换成“Excellent”、“Good”、“Pass”或“Fail”的形式输出。如果不是0~100之间的正整数,打印“error”。

【输入形式】一个整数。

【输出形式】成绩在0~59分时,输出“Fail”,成绩在60~69分时,输出“Pass”,成绩在70~89分时,输出“Good”、成绩在90~100分时,输出“Excellent”。如果不是0~100之间的整数,输出“error”。

【样例1输入】67
【样例1输出】Pass

【样例2输入】109
【样例2输出】error

#include<stdio.h>
int main(){
    int score;
    scanf("%d",&score);
    if(score>100||score<0){
        printf("error");
        return 0;
    }
    if(score>=90){
        printf("Excellent");
    }else if(score>=70){
        printf("Good");
    }else if(score>=60){
        printf("Pass");
    }else{
        printf("Fail");
    }
    return 0;

6. 字母转换 

【问题描述】由键盘输入一个英文字母,如果是元音字母(a,e,i,o,u),则输出它的大写,如果是其它字母,则输出该字母的小写。

【输入形式】一个英文字母,可以是大写,也可以是小写。

【输出形式】如果是元音字母(a,e,i,o,u或它们的大写),则输出它的大写,否则输出该字母的小写。

【样例1输入】a
【样例1输出】A
【样例2输入】B
【样例2输出】b

【样例3输入】E 
【样例3输出】E

【样例4输入】c 
【样例4输出】c

#include<stdio.h>
int main(){
    char c;
    scanf("%c",&c);
    if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u'){
        printf("%c",c-32);
    }else if(c=='A'||c=='E'||c=='I'||c=='O'||c=='U'){
        printf("%c",c);
    }else if(c>='a'&&c<='z'){
        printf("%c",c);
    }else{
        printf("%c",c+32);
    }
    return 0;

相关文章:

  • Java中Map集合体系的基本使用和常用API
  • 【在Vue脚手架项目中使用axios】
  • mysql分库分表后,分页查询问题解决方案
  • 改进蝠鲼觅食优化算法(Matlab代码实现)
  • 【AI学习笔记】Error: ffmpeg error (see stderr output for detail)
  • 世界杯征文活动 | 神奇!一段JavaScript代码生成会动的足球
  • 职场生涯亮红灯要注意这些
  • 一文掌握 Go 文件的写入操作
  • 一文读懂Linux内存分配策略
  • [附源码]Python计算机毕业设计Django学习互助辅助系统
  • 论文投稿指南——中国(中文EI)期刊推荐(第2期)
  • 一个redux使用案例模板
  • 超详细的水果FL Studio21最新版更新全功能详细介绍!80项更新与改进!
  • CENTOS上的网络安全工具(十四)搬到Docker上(2)?
  • 微服务框架 SpringCloud微服务架构 21 RestClient 操作文档 21.1 新增文档
  • APP自动化测试系列之Appium介绍及运行原理
  • Nginx学习笔记
  • 蜣螂优化算法Dung beetle optimizer附matlab代码
  • 03-SpringBoot进阶
  • 英文Paper写作怎么确实合适的介词?
  • 电加热油锅炉工作原理_电加热导油
  • 大型电蒸汽锅炉_工业电阻炉
  • 燃气蒸汽锅炉的分类_大连生物质蒸汽锅炉
  • 天津市维修锅炉_锅炉汽化处理方法
  • 蒸汽汽锅炉厂家_延安锅炉厂家
  • 山西热水锅炉厂家_酒店热水 锅炉
  • 蒸汽锅炉生产厂家_燃油蒸汽发生器
  • 燃煤锅炉烧热水_张家口 淘汰取缔燃煤锅炉
  • 生物质锅炉_炉
  • 锅炉天然气_天燃气热风炉