B1028 20 查找元素 字符串输入
-
这道题目主要是逻辑的思考
- 年龄最大 初试日期最小 这个要把相应的变量名对应起来
- 边界问题 不要忘记 比较边界 需不需要带上等于号
-
get()在vs里面必须写成gets_s()
void input()
{
char s[20];
//getline()只能接收string
gets_s(s); //get的安全方式
sscanf_s(s, "%s %d/%d/%d", temp.name,10, &temp.yy, &temp.mm, &temp.dd);
//必须传递s进来 s得使用gets_s接收,在每个字符串后面要加上输入字符串的长度确保安全
/*
sscanf_s("%s %d/%d/%d", temp.name, &temp.yy, &temp.mm, &temp.dd);
提交的时候 这样就可以了...(而且不需要gets)
*/
}
- 结构体之间的赋值
- 一般简单的结构体赋值 是深拷贝
- 如果结构体内有指针的类型 则需要开辟空间再赋值
//t1/t2是结构体对象
// 各个成员分别赋值,可以进行封装
// a / b 是Int 可以直接复制 c 是char* c;
t2.a = t1.a;
t2.b = t1.b;
char *p2 = (char*)malloc(10*sizeof(char));
strcpy(p2, t1.c);
t2.c = p2;
A1011 20 查找
- 三个数比大小简单方法
max = a>b ? a : b
max = c>max ? c : max
A1006 25 57分钟
A1036 25 54分钟
struct Student
{
char name[15];
char sex[5]; //虽然这里是char 但是输入的时候可以表达成%c
char id[15];
int score;
} temp,maxs,mins;
scanf("%s %c %s %d", temp.name, &temp.sex, temp.id, &temp.score);
// int 和 %c 最好是加上取地址符号&