牛客网初阶练习(1)

今天的这一篇呢,是我在牛客网刷题的一些记录,从今天开始,我会不定期的发这个专题,每次发三道题,这个专题的难度并不大,是针对C语言初学者的,大家应该能从中有所收获,好了废话不多说,直接开始!

目录

1、缩短二进制

2、反向输出一个四位数

3、大小写转换


1、缩短二进制

牛客网初阶练习(1)_第1张图片方法1:自己加前缀0和前缀0X。

#include
int main()
{
    printf("0%o 0X%X", 1234, 1234);
    return 0;
}

方法2:用#的方式自动添加

#include
int main()
{
    printf("%#o %#X", 1234, 1234);//注意此处#的妙用
    return 0;
}

2、反向输出一个四位数

牛客网初阶练习(1)_第2张图片

#include
int main()
{
	int n = 0;
	scanf("%d", &n);
	while (n)
	{
		printf("%d", n % 10);
		n = n / 10;
	}
	return 0;
}

这个题呢,并不难,大家用的方法呢,也千奇百怪,因为作者是第一次练习的时候在这个题上用了别的方法,并不具有普适性,且效率较低,今天所以给大家发出这种方法供大家参考一下。

3、大小写转换

牛客网初阶练习(1)_第3张图片

#include
int main()
{
	int a = 0;
	//EOF------end of file 文件结束标志(使文件能够停下来),通常是为文件的末尾
	while ((a = getchar())!=EOF)
	{
		putchar(a + 32);
		printf("\n");
        //此处两行代码可以合并成一句
        //printf("%c\n",a+32);代码将更加简洁
        getchar();//把输入缓冲区的\n加载掉,但并不使用或者将其存入到变量中
	}
	return 0;
}

这个地方呢,相信大家有不少人掉过这个坑里面,就是因为忘记添加后面的getchar()来吸收回车符号了,这个地方需要大家一定注意,如果不清理掉回车符号的话,下一次循环getchar()就会直接将回车符号吸收了,进而造成结果的错误。

好了,今天的分享到此为止了,不定期发题,希望大家能够一起加油练习!如果觉得今天的内容对你有所帮助的话,点一个小小的赞吧!

你可能感兴趣的:(C语言牛客刷题练习初阶,c语言)