初学C语言,课后作业记录

介绍

  • 本文主要内容是用C语言判断奇偶数、验证卡拉兹(Callatz)猜想、编程实现分段函数、实现大小写字母转换并且输出顺延三位的字母。
  • 本文是作者学习C语言的记录,初学上路,误撞勿怪。
  • 本文所有代码均已成功运行,如有错误,可能是编辑本文时误操作所致。
  • 本文所有代码仅为完成任务,漏洞颇多,输入数据时请规范输入。

1、输入一个正整数,判断该数是奇数还是偶数。

代码如下:

#include <stdio.h>
int main()
{
	int a;//定义a的数据类型
	printf("请输入一个正整数:\n");//输入前提示
	scanf("%d",&a);//输入赋值给a
	if(a%2==0)//当a除于2的余数等0时(即为偶数),执行下面语句
	{
		printf("%d是偶数\n",a); //输出结果
	}
	else//当a除于2的余数不等于0时(即为奇数),执行下面输出
	{
		printf("%d是奇数\n",a);//输出结果
	}
	
	return 0;
}

运行结果:
运行结果

2、输入一个正整数,对该数进行如下循环处理:如该数为偶数,则除以2;如为奇数,则乘以3再加1,如此循环下去,验证最后得到的结果是1。

代码如下:

#include <stdio.h>
int main()
{
	int a;//定义变量类型
	printf("请输入一个正整数来验证卡拉兹猜想:\n");//输入提示
	scanf("%d",&a);//输入赋值给a
	while(a != 1)//当a不等于1时执行以下循环
	{
		if(a%2 == 0)//当a是偶数时执行以下语句
		{
			a = a/2;//a除于2并赋值给a
			printf("%d ",a);//输出a
		}
		else//当a不是偶数时(a是奇数)执行以下语句
		{
			a = 3*a + 1;//a乘3再加1
			printf("%d ",a);//输出a
		}
	}
	return 0;
 }

运行结果:
运行结果

3、编程实现分段函数。

y = { x ( x < 1 ) 2 x − 1 ( 1 ≤ x < 10 ) 3 x + 1 ( x ≥ 10 ) y=\begin{cases} x & (x<1) \\ 2x-1 & (1≤x<10) \\ 3x+1 & (x≥10) \end{cases} y= x2x13x+1(x<1)(1x<10)(x10)
要求输入x的值,输出y的值。

代码如下:

#include <stdio.h>
int main()
{
	float x,y;//定于x,y数据类型
	printf("请输入x:\n");//输入提示
	scanf("%f",&x);//输入赋值给x
	if(x<1)//判断x的值,当x小于1时执行以下语句
	{
		y = x;//当x小于1时对应函数
		printf("x<1,则\n");//输出提示
		printf("y=x=%.2f",y);//输出结果
	}
	if(x>=1&&x<10)//当x大于等于1小于10时执行以下语句
	{
		y = 2*x-1;//对应函数计算
		printf("x>=1&&x<10,则\n");//输出提示
		printf("y=2*x-1=%.2f",y);//输出结果
	}
	if(x>=10)//当x大于等于10时执行以下语句
	{
		y = 3*x+1;//对应函数计算
		printf("x>=10,则\n");//输出提示
		printf("y=3*x+1=%.2f",y);//输出结果
	}
	return 0;
}

运行结果:
运行结果

4、屏幕上输入一个字母,如果是小写字母则转换为相应的大写字母,如果是大写字母则转换为相应的小写字母。并将该字母顺序后延3个字符的结果输出(x->a,y->b,z->c; X->A,Y->B,Z->C)。

这个主要是通过ASCII代码实现。
代码如下:

#include <stdio.h>
int main()
{
	char a;//定义a的变量类型
	printf("请输入一个字母:\n");//输入提示
	scanf("%c",&a);//输入赋值给a
	if(a>=97&&a<=122)//判定输入a的ASCII代码范围,这个指定是小写字母
	{
		printf("%c的大写是%c\n",a,a-32);//输出a的大写
	}
	else if(a>=65&&a<=90)//判定输入a的ASCII代码范围,这个指定是大写字母
	{
		printf("%c的小写是%c\n",a,a+32);//输出a的小写
	}
	else//输入字符不是字母时执行以下语句
	{
		printf("你输入了一个错误的字符!\n");//打印输错提示
	}
	if(a>=65&&a<=87||a>=97&&a<=119)//当输入是一般字母时正常处理
	{
		printf("后延三位%c->%c\n",a,a+3);//输出后延三位的字母
	} 
	else if (a>=88&&a<=90||a>=120&&a<=122)//当输入是X,Y,Z或x,y,z时特殊处理
	{
		printf("后延三位%c->%c\n",a,a-23);//输出后延三位的字母
	}
	return 0;
}

运行结果:
运行结果

感谢观看!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HankuoYuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值