C语言用什么贮存字符串数据?
发布网友
发布时间:2022-04-30 02:33
我来回答
共2个回答
热心网友
时间:2023-10-07 06:55
1.字符串用字符数组保存。
2.在读取字符串时,要用 %s 格式控制符,而不是 %c
3.字符串的比较不能用相等操作符(==),而要用strcmp()函数(需要包含string.h头文件)。
例如你的程序中要比较n和"Maiiho"是否相等,应该用以下表达式:
if (!strcmp(n,"Maiiho")) /*如果要比较的两个字符串相等,strcmp()函数返回0,否则返回非0值*/
参考资料:刚才不是已经提问过了吗?重复提问是会被删除的。
热心网友
时间:2023-10-07 06:55
1.字符串用字符数组保存。
2.在读取字符串时,要用 %s 格式控制符,而不是 %c
3.字符串的比较不能用相等操作符(==),而要用strcmp()函数。
你的程序修改如下:
#include <stdio.h>
#include <string.h>
struct stu
{
int num;
char name[50];
int age;
char sex;
float scr;
char addr[50];
};
struct stu stu1 ={1,"Maiiho",18,'B',85.0,"oosaka"};
main()
{
char n[50];
printf("Please input your name!");
scanf("%s",n);
if(strcmp(n,stu1.name)==0)
printf("ID:%d\nname:%s\nage:%d\nsex:%c\nscr:%f\naddress:%s",stu1.num,stu1.name,stu1.sex,stu1.scr,stu1.addr);
else
printf("X");
getchar();
}