信息学奥赛一本通 第二章 顺序结构程序设计 第一、二节C语言非C++

第二章 顺序结构程序设计

第一节 运算符和表达式

2064:【例2.1】交换值

#include <stdio.h>

int main()
{
    
    
    int a, b, t;
    scanf("%d%d", &a, &b);
    t = a;
    a = b;
    b = t;
    printf("%d %d", a, b);
    return 0;
}

2065:【例2.2】整数的和

#include <stdio.h>  // 引入标准输入输出头文件

int main()
{
    
    
    int a, b, c;  // 声明三个整数变量

    // 从用户输入获取三个整数,并分别赋值给a,b和c
    scanf("%d %d %d", &a, &b, &c);

    // 打印这三个整数的和
    printf("%d", a + b + c);

    // 程序正常结束,返回0
    return 0;
}

2066:【例2.3】买图书

#include <stdio.h>  // 引入标准输入输出头文件

int main()
{
    
    
    double n, m;  // 声明两个双精度浮点数变量

    // 从用户输入获取两个双精度浮点数,并分别赋值给n和m
    scanf("%lf %lf", &n, &m);

    // 打印n减去m的80%的结果,结果保留两位小数
    printf("%.2f", n - m * 0.8);

    // 程序正常结束,返回0
    return 0;
}

1006:A+B问题

#include <stdio.h> // 引入标准输入输出头文件

int main() // 主函数,程序从这里开始执行
{
    
    
    int a, b; //声明两个整数变量a和b

    scanf("%d %d", &a, &b); // 从用户输入获取两个整数,并分别赋值给a和b

    printf("%d", a + b); // 打印这两个整数的和

    return 0; // 程序正常结束,返回0
}

1007:计算(a+b)×c的值

#include <stdio.h> // 引入标准输入输出头文件

int main() // 主函数,程序从这里开始执行
{
    
    
    int a, b, c; //声明三个整数变量a,b和c

    scanf("%d %d %d", &a, &b, &c); // 从用户输入获取三个整数,并分别赋值给a,b和c

    printf("%d", (a + b) * c); // 计算a,b两数之和与c的乘积并打印

    return 0; // 程序正常结束,返回0
}

1008:计算(a+b)/c的值

#include <stdio.h> // 引入标准输入输出头文件

int main() // 主函数,程序从这里开始执行
{
    
    
    int a, b, c; // 声明三个整数变量a,b和c

    scanf("%d %d %d", &a, &b, &c); // 从用户输入获取三个整数,并分别赋值给a,b和c

    printf("%d", (a + b) / c); // 计算a,b两数之和与c的商并打印

    return 0; // 程序正常结束,返回0
}

1009:带余除法

#include <stdio.h> // 引入标准输入输出库

int main() // 主函数,程序入口
{
    
    
    int a, b; // 声明两个整型变量a和b

    scanf("%d %d", &a, &b); // 从控制台读取用户输入的两个整数并赋值给a和b

    printf("%d %d", a / b, a % b); // 计算a除以b的商和余数,并输出

    return 0; // 程序执行成功,返回0
}

1010:计算分数的浮点数值

#include <stdio.h> // 引入标准输入输出头文件

int main() // 主函数,程序从这里开始执行
{
    
    
    double a, b; // 声明两个双精度浮点数变量a和b

    scanf("%lf %lf", &a, &b); // 从用户输入获取两个双精度浮点数,并分别赋值给a和b

    printf("%.9f", a / b); // 计算a除以b的结果,并保留9位小数打印出来

    return 0; // 程序正常结束,返回0
}

第二节 常量和变量

2067:【例2.5】圆

#include <stdio.h> // 引入标准输入输出头文件
#include <math.h> // 引入数学函数库头文件

#define PI 4*atan(1) // 使用预处理器定义常量PI,其值为4*atan(1),即圆周率π的近似值

int main() // 主函数,程序从这里开始执行
{
    
    
    double r; // 声明一个双精度浮点数变量r,用于存储圆的半径

    scanf("%lf", &r); // 从用户输入获取圆的半径,并赋值给r

    printf("%.4f %.4f %.4f\n", 2*r, 2*PI*r, PI*r*r); // 分别计算并打印出圆的直径、周长和面积,结果保留4位小数

    return 0; // 程序正常结束,返回0
}

2068:【例2.6】鸡兔同笼

#include <stdio.h>

int main() {
    
    
    // 声明两个整数变量
    int x, y;

    // 从输入读取两个值并赋给x和y
    scanf("%d %d", &x, &y);

    // 计算并打印 (4*x-y)/2 和 (y-2*x)/2 的结果
    printf("%d %d\n", (4*x-y)/2, (y-2*x)/2);

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}

1011:甲流疫情死亡率

#include <stdio.h>

int main() {
    
    
    // 声明两个双精度浮点数变量
    double a, b;

    // 从输入读取两个值并赋给a和b
    scanf("%lf %lf", &a, &b);

    // 计算并打印 b / a * 100 的结果,结果后带有百分号
    // printf中要输出一个%,需要打两个%
    printf("%.3f%%\n", b / a * 100); 

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}

1012:计算多项式的值

#include <stdio.h>

int main() {
    
    
    // 声明五个双精度浮点数变量
    double x, a, b, c, d;

    // 从输入读取五个值并分别赋给x, a, b, c, d
    scanf("%lf %lf %lf %lf %lf", &x, &a, &b, &c, &d);

    // 计算并打印 a*x*x*x+b*x*x+c*x+d 的结果
    printf("%.7f\n", a*x*x*x+b*x*x+c*x+d);

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}

1013:温度表达转化

#include <stdio.h>

int main() {
    
    
    // 声明一个双精度浮点数变量
    double f;

    // 从输入读取一个值并赋给f
    scanf("%lf", &f);

    // 计算并打印华氏温度转化为摄氏温度的结果
    printf("%.5f\n", 5*(f-32)/9);

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}

1014:与圆相关的计算

#include <stdio.h>

int main() {
    
    
    // 声明并定义圆周率为常量,其值为3.14159
    const double PI = 3.14159;

    // 声明一个双精度浮点数变量
    double r;

    // 从输入读取一个值并赋给r
    scanf("%lf", &r);

    // 计算并打印圆的直径,周长和面积
    printf("%.4f %.4f %.4f\n", 2*r, 2*PI*r, PI*r*r);

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}


1015:计算并联电阻的阻值

#include <stdio.h>

int main() {
    
    
    // 声明两个单精度浮点数变量
    // 在OpenJudge中,只能使用float类型
    float r1, r2;

    // 从输入读取两个值并分别赋给r1和r2
    scanf("%f %f", &r1, &r2);

    // 计算并打印两个电阻并联后的总电阻
    printf("%.2f\n", 1/(1/r1+1/r2));

    // main函数结束,返回0表示程序正常执行完毕
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_44738632/article/details/134974309