💚 BC1、实践出真知
描述:
于老师经常告诉我们“学习编程最好的办法就是上机实践,因为你要对计算机下指令,想让计算机帮你 干活,就得多和计算机‘交流’,实践才能出真知
输入描述:
无
输出描述:
Practice makes perfect!
代码:
#include <stdio.h>//头文件 因为使用库函数printf
int main()
{
printf("Practice makes perfect!");
return 0;
}
结果:
🧡 BC2、我是大v
描述:
每个人都想成为大V (VIP:Very Important Person),但要一点一点积累才行,先从小v做起。要求输出由小写字母v组成的大V
输入描述:
无
输出描述:
v v
v v
v
备注:
换行使用转义字符‘\n’
代码:
//方法一
#include <stdio.h>
int main()
{
printf("v v\n");// \n(转义字符)用来换行
printf(" v v \n");
printf(" v \n");
return 0;
}
//方法二
#include <stdio.h>
int main()
{
printf("v v\n v v \n v\n");//一行输出的效果
return 0;
}
结果:
扩展:转义字符
代码:
#include <stdio.h>
#include<string.h>
int main()
{
//\32代表两个八进制数字 32作为8进制代表的那个十进制数字,作为ASCII码值,对应字符
//32——>10进制 26——>作为ASSCII码值代表的字符
printf("%c\n", '\32'); //打印出\32对应的字符 \ddd代表1~3个八进制数字,d<=7(在八进制中最大为7)
printf("%c\n", '\x61'); //\xdd代表两个十六进制数字
printf("%d\n", strlen("c:\test\32\test.c"));
return 0;
}
结果:
💛 BC3、有容乃大
描述:
确定不同整型数据类型在内存中占多大(字节),输出不同整型数据类型在内存中占多大(字节)。
输入描述:
无
输出描述:
不同整型数据类型在内存中占多大(字节),具体格式详见输出样例,输出样例中的?为不同整型数据类型在内存中占的字节数。输出样例如下:
The size of short is ? bytes.
The size of int is ? bytes.
The size of long is ? bytes.
The size of long long is ? bytes.
代码:
#include <stdio.h>
int main()
{
printf("The size of short is %d bytes.\n", sizeof(short));
printf("The size of int is %d bytes.\n", sizeof(int));
printf("The size of long is %d bytes.\n", sizeof(long));
printf("The size of long long is %d bytes.\n", sizeof(long long));
return 0;
}
结果:
扩展:sizeof
- sizeof是C语言中的一个操作符,用来计算变量或者类型所占空间的大小,计算结果的单位是字节
- C语言标准规定:sizeof(long long)>=sizeof(long)>=sizeof(int)
- 在不同平台上打印出来显示的结果会不一样,当前用编译器是VS2019,计算出一个long long整型类型的数据占8个字节,一个long整型类型的数据占4字节,一个整型数据占4字节
💙 BC7、缩短二进制
描述:
我们处理的整数通常用十进制表示,在计算机内存中是以二进制补码形式存储,但通常二进制表示的整数比较长,为了便于在程序设计过程中理解和处理数据,通常采用八进制和十六进制,缩短了二进制补码表示的整数,但保持了二进制数的表达特点。请输出十进制整数1234对应的八进制和十六进制。
输入描述:
无
输出描述:
十进制整数1234对应的八进制和十六进制(字母大写),用空格分开,并且要求,在八进制前显示前导0,在十六进制数前显示前导0X。
备注:
printf可以使用使用格式控制串“%o”、“%X”分别输出八进制整数和十六进制整数,并使用修饰符“#”控制前导显示
代码:
//方法一
#include <stdio.h>
int main()
{
printf("0%o 0X%X\n", 1234, 1234);
return 0;
}
//方法二
#include <stdio.h>
int main()
{
printf("%#o %#X\n", 1234, 1234);
return 0;
}
结果:
扩展:
题目中的意思是打印出来的16进制为大写字母,如果要显示·小写16进制字母怎么办呢?我们只需要把%X改为%x
💜 BC19、反向输出一个四位数
描述:
将一个四位数,反向输出
输入描述:
一行,输入一个整数n(1000 <= n <= 9999)
输出描述:
针对每组输入,反向输出对应四位数
代码:
//while循环
#include <stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);
while (n)
{
printf("%d", n % 10);
n = n / 10;
}
return 0;
}
//for循环
#include <stdio.h>
int main()
{
int i = 0;
scanf("%d", &i);
int n = 0;
for (n = 0; n < 4; n++)
{
printf("%d", i % 10);
i = i / 10;
}
return 0;
}
结果:
🤎 BC28、大小写转换
描述:
实现字母的大小写转换。多组输入输出
输入描述:
多组输入,每一行输入大写字母
输出描述:
多组输入,每一行输入大写字母
备注:
多组输入过程中要注意“回车”也是字母,所以要“吸收”(getchar())掉该字母
代码:
//在键盘上如何获取一个字符
#include <stdio.h>
int main()
{
char ch = 0;
ch = getchar();//getchar()获取一个字符,输入一个字符
putchar(ch);//打印、输出一个字符
return 0;
}
//通过assic表发现大写字符+32为小写字符
//只适合单一的字符操作
#include <stdio.h>
int main()
{
char ch = 0;
ch = getchar();
putchar(ch+32);
return 0;
}
//利用while循环进行多字符操作
#include <stdio.h>
int main()
{
char ch = 0;
while ((ch = getchar()) != EOF)//getchar()获取一个字符,输入一个字符 EOF-End Of File文件结束标志
{
putchar(ch + 32);//打印、输出一个字符
printf("\n");
getchar();//读取\n
}
return 0;
}
结果:
离开前,别忘了👍关注💡收藏💖
希望本文能够对大家有帮助~