第一阶段测试程序题

以下内容可能极其简单

记录一下,第一章单元测试程序题,刚大一接触c语言,一窍不通,注释得都是简单地方

f1-1 如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)x0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。
示例图:请添加图片描述

先拆解题意,输入的英尺英寸对应为(foot+inch/12)x0.3048(米),又因100cm=1m,即输入的英尺英寸对应为30.48xfoot+inch/12x30.48①(厘米)

1foot=12inch,即该式子是混合inch foot换算,当我们从cm单独换成foot(取整)时不用考虑

#include<stdio.h>
int main()
 {
	int cm,inch,foot;
	scanf("%d",&cm);//输入一个厘米数
	foot=cm/30.48;//根据①算出foot值,取整数(foot被int定义)
	inch=(cm/30.48-foot)*12;
    //刚开始可能以为cm/30.48-foot等于0,实则cm/30.48未被取整,
    //存在小数点,再减去上个式子中的整数部分,得其小数部分
    //*12是换算成foot,最后返回给inch(int型)
	printf("input:%d,foot:%d,inch:%d\n",cm,foot,inch);
		return 0;
}
f1-2 有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝时间计算出终止时间。
读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如5点30分表示为530;0点30分表示为030。注意,第二个数字表示的分钟数可能超过60,不能是负数。
示例图:请添加图片描述
#include<stdio.h>

int main()
{ 
	int Starting_T,Now_T,Elapsed_T;
	int hour,minute;
	
	scanf("%d %d",&Starting_T,&Elapsed_T);

	hour = Starting_T / 100;//通过int格式抹去后面2位数
	minute = Starting_T % 100;

	Now_T = hour * 60 + minute + Elapsed_T;//全部以分钟计算

	hour = Now_T / 60;
	minute = Now_T % 60;
    Now_T = hour * 100 + minute;

	printf("%d,%d\n",Starting_T,Now_T);
	
	return 0;
}
f1-3 设有int a=1,b=2,c=3,d=4;请编程交换变量的值,将a的值放到c,c的值放b,b的值放d,d的值给a。请用printf输出a,b,c,d变量的值。
示例图:请添加图片描述

啊这题太简单了,就是临时变量换(目前只学了这样搞,如有其他的方法求dalao指教)

#include<stdio.h>
int main()
{
	int a=1,b=2,c=3,d=4,temp1,temp2;
	temp1=c;c=a;
temp2=b;b=temp1;
temp1=d;d=temp2;
a=temp1;
	printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);
return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值