码农人,码农魂。码农都是人上人,【C语言】编程训练题

目录

一、前言

二、输入一个字符判断是不是字母

三、输入一个整数判断它的奇偶性

四、演示多个字符从两边向中间汇聚

五、输入10个整数,找其中的最大数

六、打印1~100之间包含数字9的数

七、求出[a,b]区间内有多少个数数位之和为5的倍数



一、前言

希望这些编程题目,可以帮助大家提升编码能力。原创不易,还请贡献你的三连哦!你们的点赞、收藏和关注是对我最大的支持和鼓励。

下面的是这个分栏的第1期的文章,感兴趣可以看下,非常有用哦!

悄悄内卷【C语言编程训练】第1期_马桶上看算法的博客-CSDN博客C语言初阶、题目集锦https://blog.csdn.net/m0_63033419/article/details/124196843

二、输入一个字符判断是不是字母

难度:⭐

#include<stdio.h>

int main()
{
	char a = 0;//定义一个字符变量
	scanf("%c", &a);//输入要判断的变量
	//判断的是a~z 或 A~Z 之间的ASCII
	if (a >= 'a' && a <= 'z' || a >= 'A' && a <= 'Z')//如果a在这个范围就进入语句
	{
		printf("YES\n");//输出YES表示是字符
	}
	else
	{
		printf("NO\n");//输出NO表示不是字符
	}
	return 0;
}

三、输入一个整数判断它的奇偶性

难度:⭐

#include<stdio.h>

int main()
{
	int a = 0;//定义一个整形变量
	scanf("%d", &a);//输出要判断的数
	if (a % 2 == 0)//a能被2整除就是偶数
	{
		printf("偶数\n");//输出偶数
	}
	else//否则就是奇数
	{
		printf("奇数\n");//输出奇数
	}
	return 0;
}

四、演示多个字符从两边向中间汇聚

难度:⭐⭐⭐

#include<stdio.h>

#include<string.h>

#include<windows.h>

int main()
{
	char arr1[] = "hello world";
	char arr2[] = "###########";
	int left = 0;//定义变量数组最左边下标为0
	//strlen()函数求字符串长度
	int right = strlen(arr1) - 1;//字符串长度减1就是最右边的下标
	while (left <= right)//左边小于等于右边说明还有字符未演示
	{
		arr2[left] = arr1[left];//arr1数组左边赋给arr2数组左边
		arr2[right] = arr1[right];//arr1数组右边赋给arr2数组右边
		Sleep(1000);//睡眠1秒
		system("cls");//清空屏幕
		left++;//左下标加1
		right--;//右下标减1
		printf("%s\n", arr2);//输出演示完毕的字符串arr2
	}
	return 0;
}

五、输入10个整数,找其中的最大数

难度:⭐⭐

#include<stdio.h>

int main()
{
	int arr[10] = { 0 };//定义一个数组来存储10个整数
	int i = 0;//定义循环变量
	for (i = 0; i < 10; i++)//控制循环次数为10次
	{
		scanf("%d", &arr[i]);//为数组i下标输入值
	}
	int max = arr[0];//假设arr数组下标为0的元素是最大值
	for (i = 0; i < 10; i++)
	{
		if (arr[i] > max)//如果arr数组下标为i的元素大于假设的最大值就进入语句
		{
			max = arr[i];//把这个元素赋给max,max就是最大值
		}
	}
	printf("%d\n", max);//输出最大值
	return 0;
}

六、打印1~100之间包含数字9的数

难度:⭐⭐

#include <stdio.h>

int main()
{
	int i = 0;
	int count = 0;//统计9的个数
	for (i = 1; i <= 100; i++)//控制是在1~100之间统计出现了几次9
	{
		if (i % 10 == 9)//i % 10 等于9就进入语句
		{
			count++;//9的个数加1
		}
		if (i / 10 == 9)//i / 10 等于9就进入语句
		{
			count++;//9的个数加1
		}
	}
	printf("count = %d\n", count);//输出9的个数
	return 0;
}

七、求出[a,b]区间内有多少个数数位之和为5的倍数

难度:⭐⭐⭐

#include<stdio.h>

int get_number(int a, int b)
{
    int i = 0;
    int count = 0;//统计符合条件的个数
    for (i = a; i <= b; i++)//控制范围
    {
        int sum = 0;//存放累加的值
        int n = i;//将i的值赋给n,用n做运算
        //n不等于0进入语句
        while (n)
        {
            sum += n % 10;//将n % 10的值累加给sum
            n /= 10;//将n的最低位剥离出去
        }
        if (sum % 5 == 0)//sum整除5说明是5的倍数
        {
            count++;//个数加1
        }
    }
    return count;//循环结束后返回的count就是符合条件的个数
}
int main()
{
    //定义两个整形变量
    int a = 0;
    int b = 0;
    scanf("%d %d", &a, &b);//输入
    printf("%d\n", get_number(a, b));//定义函数
    return 0;
}

  • 13
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

与大师约会

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

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

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

打赏作者

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

抵扣说明:

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

余额充值