C语言学习第一天任务(适合有基础之后的巩固)//输入与输出// memset()函数讲解//strcmp()函数讲解
程序员文章站
2024-02-17 16:27:40
...
C第一天任务
请 根据 输入 梯形,三角形, 正方形
对应输出相应形状
如下:
答案代码:
#include <stdio.h>
int main()
{
char str[20];
memset(str,0,20);
printf("请输入 梯形/三角形/正方形\n");
scanf("%s",str);
if(!strcmp(str,"三角形"))
{
printf(" * \n");
printf(" *** \n");
printf(" ***** \n");
printf(" ******* \n");
}
if(!strcmp(str,"梯形"))
{
printf(" **** \n");
printf(" ****** \n");
printf(" ******** \n");
printf(" ********** \n");
}
if(!strcmp(str,"正方形"))
{
printf(" ******* \n");
printf(" ******* \n");
printf(" ******* \n");
printf(" ******* \n");
}
return 0;
}
有关memset()函数的讲解
void *memset(void *s, int ch, size_t n);(int ch可以是char或int)
将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。
memset按字节赋值。
需要的头文件
在C中 <string.h>
在C++中
void *memset(void *s, int ch, size_t n);
函数解释:将s中前n个字节 (typedef unsigned int size_t)用 ch 替换并返回 s 。
memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法。
strcmp(str1,str2)函数讲解
strcmp 两组字符串比较
输出等于0 比对两组字符串相同
大于0 前面字符串大学后面
小于0 后面字符串 大于前面
这里建议大家只用==0结果,因为我们常常判断两个字符串是否相同。
上一篇: 局部变量vs全局变量,局部变量打断全局变量的传递!
下一篇: jsp中<%%>和<%! %>的区别