69,371
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include <stdlib.h>
int main()
{
char *str[7];
int i;
for(i=0; i<7; i++)
{
printf("请输入第%d个学生的姓名:\n",i+1);
str[i] = (char*)malloc(100); //分配内存。估计长度100够用。
scanf("%s",str[i]);
//scanf("%s",*(str+i)); 这个也可以
}
for(i=0; i<7; i++)
{
printf("第%d个学生的姓名为%s\n",i+1,str[i]);
//printf("第%d个学生的姓名为%s\n",i+1,*(str+i)); 这个也可以
}
//这里需要释放内存
return 0;
}
scanf("%s",str[i]);
printf("第%d个学生的姓名为%s\n",i+1, str[i]);
#include<stdio.h>
#include <stdlib.h>
#define MAX_STR_SIZE 32
int main()
{
char *str[7];
int i;
for(i=0;i<7;i++)
{
printf("请输入第%d个学生的姓名:\n",i+1);
str[i] = (char *)malloc(sizeof(char) * MAX_STR_SIZE);
if (!str[i])
return -1;
scanf("%s",str[i]);
}
for(i=0;i<7;i++)
{
printf("第%d个学生的姓名为%s\n",i+1, str[i]);
free(str[i]);
}
return 0;
}