[learn c] 1.0 第二章·作业1,作业2记录

作业1:输入两个数,获得两个数加减乘除的值。

#include <stdio.h>
/*
	实现:输入两个数,获得两个数加减乘除的值。 
*/
int main()
{
	// 我不仅需要整数计算,要包含小数值。 
	int a;
	int b;
	int result;
	float resultFloat; 
	printf("请输入两个值\n");
	scanf("%d%d",&a,&b);
	result = a + b;
	printf("它们两个值相加为:%d\n", result);
	
	if (a>b){
		result = a - b;	
	}	else{
		result = b - a;
	}
	printf("它们两个值相减为:%d\n", result);
	
	result = a * b;
	printf("它们两个值相乘为:%d\n", result);
	
	resultFloat = (float)a / b; 
	//printf("它们两个值相除为:%d\n", resultFloat);   ※错误点   占位符%d,即便我是浮点数计算,
	//但是%d的存在规定了我输出的东西为 整数输出,导致最终输出结果为0. 
	printf("它们两个值相除为:%f\n", resultFloat);
	 
	return 0;
 } 

输出结果:

遇到的小错误:

代码:

#include <stdio.h>
/*
	实现:输入两个数,获得两个数加减乘除的值。 
*/
int main()
{
	// 我不仅需要整数计算,要包含小数值。 
	int a;
	int b;
	int result;
	float resultFloat; 
	printf("请输入两个值\n");
	scanf("%d%d",&a,&b);
	result = a + b;
	printf("它们两个值相加为:%d\n", result);
	
	if (a>b){
		result = a - b;	
	}	else{
		result = b - a;
	}
	printf("它们两个值相减为:%d\n", result);
	
	result = a * b;
	printf("它们两个值相乘为:%d\n", result);
	
	resultFloat = (float)a / b; 
	//printf("它们两个值相除为:%d\n", resultFloat);   ※错误点   占位符%d,即便我是浮点数计算,
	//但是%d的存在规定了我输出的东西为 整数输出,导致最终输出结果为0. 
	printf("它们两个值相除为:%d\n", resultFloat);
	 
	return 0;
 } 

问题在于:


	printf("它们两个值相除为:%d\n", resultFloat);
	

应为:


	printf("它们两个值相除为:%f\n", resultFloat);

占位符%d,即便我是浮点数计算,但是%d的存在规定了我输出的东西为 整数输出,导致最终输出结果为0。

错误输出结果:

作业2:密码机

代码:

#include <stdio.h>

int main()
{
	char c1 ='C';
	char c2 ='h';
	char c3 ='i';
	char c4 ='n';
	char c5 ='a';
	
	puts("这是一个密码机负责赋值转换。\n");
	//转换操作,涉及到ASCII码值的计算。
	c1 = c1 + 4;
	c2 = c2 + 4;
	c3 = c3 + 4;
	c4 = c4 + 4;
	c5 = c5 + 4;
//	putchar("转换之后的字符为:%c%c%c%c%c",c1,c2,c3,c4,c5);   函数的作用是输出单个字符,而不是输出字符串或格式化输出。
	printf("转换之后的字符为:%c%c%c%c%c\n",c1,c2,c3,c4,c5);
//	putchar("%c%c%c%c%c",c1,c2,c3,c4,c5);
	printf("转换之后的字符为:"); 
	putchar(c1);
    putchar(c2);
    putchar(c3);
    putchar(c4);
    putchar(c5);
    putchar('\n');  // 输出换行符
	
	return 0;
}

遇到的问题:

putchar 和 printf 的区别:

putchar 只能输出单个字符,而不是输出字符串或格式化输出。

输出结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值