西电C语言作业(1):数据对象与计算(适用于萌新)

序言:

C语言项目文件夹介绍:

在Visual Studio的C语言项目中,通常会包含以下文件:

  1. .c文件:这些文件包含C语言的源代码。你可以在这些文件中编写C语言的函数和程序逻辑。

  2. .h文件:这些文件是头文件,用于声明函数、结构体、宏等。头文件中通常包含函数原型和宏定义,供其他源文件引用。

  3. main.c文件:这是C语言程序的入口文件,其中包含程序的主函数main()。在这个文件中,你可以编写程序的入口逻辑。

  4. 其他辅助文件:在C语言项目中,你可能还会创建其他辅助文件,如配置文件、文档等。

C语言程序的一般组成:
  1. 头文件(Header Files):头文件包含了函数原型、宏定义、结构体、枚举等信息。通过引入头文件,可以在程序中使用其中定义的函数和数据类型。以下面的例题为例,就是指前几行开头带#的语句,除了宏定义以外。

  2. 全局变量(Global Variables):全局变量是在函数外部定义的变量,可以在程序的任何地方访问。全局变量在程序的整个生命周期内都是有效的。用数学的话来说就是设置未知数,但是不同的未知数,都有不同的表示方法。在西电期末考试的时候,只要知道整数型int和浮点型flout的就可以了。

  3. 主函数(Main Function):C语言程序的入口函数是main()函数。程序从main()函数开始执行,main()函数可以包含其他函数的调用和程序逻辑。用通俗的话讲,主函数在整个程序里面担当的是C位的地位,而其他定义的函数都是辅助。也就是说,整个程序的运行,都是围绕着主函数走的。并且每一个工程文件里面只能有一个main()函数。

  4. 函数定义(Function Definitions):除了main()函数外,C语言程序通常还包含其他自定义函数。函数定义包括函数的名称、参数列表、返回类型和函数体。函数可以在程序的任何地方调用。

  5. 语句和表达式(Statements and Expressions):C语言程序由一系列语句和表达式组成。语句是执行某种操作的指令,而表达式是计算值的一部分代码。

  6. 控制结构(Control Structures):C语言提供了多种控制结构,如条件语句(if-else)、循环语句(for、while、do-while)和跳转语句(break、continue、return)。控制结构用于控制程序的执行流程。

一、计算球体重量

题目:

已知铁的比重是7.86(克/立方厘米),金的比重是19.3(克/立方厘米)。写一个程序,分别计算出给定直径的铁球与金球的质量。

(假定PI=3.1415926)

解答:
#include <stdio.h>
#define PI 3.1415926
int main(){
    int d1, d2;
    double answer1, answer2, midu1 = 7.86, midu2 = 19.3;
    scanf_s("%d%d", &d1, &d2);
    answer1 = midu1 * d1 * d1 * d1 * PI / 6000;
    answer2 = midu2 * d2 * d2 * d2 * PI / 6000;
    printf("%.3f %.3f", answer1, answer2);
    return 0;
}

解析:

1、头文件

#include < stdio.h >

是包含 <stdio.h>头文件的意思, .h是头文件的扩展名(header file), <stdio.h>就是standard input output.header,也就是“标准输入、输出"头文件,这个文件的内容就是基本输入输出函数的声明,比如 scanf()printf()

2、宏定义的用法

#define PI 3.1415926
#define 宏名 替换文本

这是宏定义的标准格式,“# + define + 字幕 + 其他东西”。这里的其他东西有的时候也可以代表其他的替代文本。

3、scanf 和 printf 的用法

scanf("%d", &i);  
printf("i = %d\n", i);

&i 表示变量 i 的地址,&是取地址符,\n表示空格。scanf 后面的括号内,引号里面的表示输入东西的格式,逗号后面表示输入数据存放的地址。 printf()后面的括号内 ,引号里面的东西表示输出的东西。如果带有 %则表示,要输出的数据的格式; \n则表示,输出玩前面的东西之后,进行换行。


二、温度转换

题目:

已知华氏温度到摄氏温度的转换公式为:摄氏温度= (华氏温度- 32)×5/9,写程序将给定的华氏温度转换为摄氏温度输出。

解答:
#include<stdio.h>
int main(){
    float f_Degree = 0;
    float centigrade = 0;
    scanf_s("%f", &f_Degree);
    centigrade = (5.0 / 9.0) * (f_Degree - 32.0);
    printf("%.2f\n", centigrade);
    return 0;
}

解析:

精准控制浮点数输出的格式如下:

printf("%m.nf",p);

"%m.nf"指定输出的数据共占m列,其中有n位是小数。如果数值长度小于m,则左端补空格,若数值长度大于m,则按实际位数输出。


三、整数简单计算

题目:

问题描述:编写程序,计算用户输入的两个整数的和、差、乘积(*)和商(/)。

输入格式:输入两个整数,整数之间用空格分隔。

输出格式:输出四个整数结果,分别表示和、差、积和商,每输出一个结果换行。

解答:
#include <stdio.h>
int main(){
    int a, b, c, d, e, f;
    scanf_s("%d%d", &a, &b);
    c = a + b;
    d = a - b;
    e = a * b;
    f = a / b;
    printf("%d\n%d\n%d\n%d\n", c, d, e, f);
    return 0;
}


四、字符输入和输出

题目:

问题描述:通过键盘输入5个大写字母,输出其对应的小写字母,并在末尾加上“!”。

输入说明:5个大写字母通过键盘输入,字母之间以竖线“|”分隔。

输出说明:输出5个大写字母对应的小写字母,之间无分隔,并在末尾加上‘!’。

解答:
#include <stdio.h>
#include <stdlib.h>
int main(){
    char a1, a2, b1, b2, c1, c2, d1, d2, e1, e2;
    a1 = getchar();
    b1 = getchar();
    c1 = getchar();
    d1 = getchar();
    e1 = getchar();
    a2 = a1 + 32;
    b2 = b1 + 32;
    c2 = c1 + 32;
    d2 = d1 + 32;
    e2 = e1 + 32;
    printf("%c%c%c%c%c!", a2, b2, c2, d2, e2);
    return 0;
}


五、数字字符

题目:

问题描述:通过键盘输入1个整数a(0<=a<=4),1个数字字符b(’0’<=b<=’5’),求a+b。

输入说明:整形数据、数字字符通过键盘输入,输入的整形数据介于0和4之间,输入的数字字符介于‘0’和‘5’之间,二个输入数之间用“,”分隔。

输出说明:分别以整数形式及字符形式输出a+b,输出的二个数之间用“,”分隔。

解答:
#include <stdio.h>
#include <stdio.h>
int main(){
    int a;
    char b;
    scanf("%d,%c", &a, &b);
    printf("%d,%d",a + b, a + b - 48);
    return 0;
}


六、整除判断

题目:

问题描述:判断正整数a能否被b整数,如果不能整除,输出商和余数。

输入说明:输入两个正整数a和b(0<a, b<=10000),a和b之间用空格分隔。

输出说明:如果a能被b整除,输出yes,否则在同一行输出a除以b的商和余数,商和余数之间用空格分隔。

解答:
#include <stdio.h>
int main(){
    int a = 0, b = 0, c = 0, d = 0;
    a > 0, b < 10000;
    scanf_s("%d %d", &a, &b);
    if (a % b == 0){
        printf("yes");
    }
    else if (a % b != 0){
        c = a / b;
        d = a % b;
        printf("%d %d", c, d);
    }
return 0;
}


七、冰箱测温

题目:

问题描述:编写一个程序,用于预测冰箱断电后经过时间t(以小时为单位)后的温度T。已知计算公式如下所示

$$
T = \frac{4t^{2}}{t+2}-20
$$

输入说明:输入两个整数h和m表示冰箱断电后经过的时间,h表示小时,m表示分钟。

输出说明:输出冰箱断电后经过时间t(以小时为单位)后的温度T,保留两位小数。

解答:
#include <stdio.h>
#include <stdlib.h>
int main(){
    int m, h;
    float t, T;
    scanf("%d %d", &h, &m);
    t = h + m / 60.0;
    T = 4 * t * t / (t + 2) - 20;
    printf("%.2f",T);
    return 0;
}
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值