今日练习:
28、(指针)将字符串 a 复制为字符串 b ,然后输出字符串 b
29、改变指针变量的值
30、输入两个整数,然后让用户选择1或者2,选择1是调用 max ,输出两者中的大数,选择2是调用 min ,输出两者中的小数
31、 把一个学生的信息(包括学号、姓名、性别、地址)放在一个结构体变量中。然后输出这个学生的信息。(结构体)
(指针)将字符串 a 复制为字符串 b ,然后输出字符串 b
运行代码
int main()
{
char a[] = "I love you";
char b[20];
int i = 0;
for (i = 0; *(a + i) != '\0'; i++)
{
*(b + i) = *(a + i);
}
*(b + i) = '\0';
printf("字符串a是:%s\n", a);
printf("单个输出字符b:");
for (i = 0; b[i] != '\0'; i++)
{
printf("%c ", b[i]);
}
printf("\n");
return 0;
}
运行结果
改变指针变量的值
运行代码
int main()
{
char* p = "I love C program language";
p = p + 7;//指针变量p指向字符串的第8位
printf("%s", p);
return 0;
}
运行结果
输入两个整数,然后让用户选择1或者2,选择1是调用 max ,输出两者中的大数,选择2是调用 min ,输出两者中的小数
运行代码
int main()
{
int Max(int, int);
int Min(int, int);
int (*p)(int, int);
int a = 0;
int b = 0;
int c = 0;
int d = 0;
printf("请输入两个数:");
scanf("%d", &a);
scanf("%d", &b);
printf("请选择1或者2:");
scanf("%d", &c);
if (c == 1)
{
p = Max;
}
else
{
p = Min;
}
d = (*p)(a, b);
if (c == 1)
{
printf("max=%d", d);
}
else
{
printf("min=%d", d);
}
return 0;
}
int Max(int x, int y)
{
return(x > y ? x : y);
}
int Min(int x, int y)
{
return (x > y ? y : x);
}
运行结果
把一个学生的信息(包括学号、姓名、性别、地址)放在一个结构体变量中。然后输出这个学生的信息。
运行代码
int main()
{
struct student_information//定义学生结构体
{
int num;
char name[20];
char sex[20];
char address[20];
}
student_information = { 8888,"张三","男生","广州市" };
printf("学号是:%d\n", student_information.num);
printf("姓名是:%s\n", student_information.name);
printf("性别是:%s\n", student_information.sex);
printf("住址是:%s\n", student_information.address);
return 0;
}