
正文
二维字符串函数c语言 c语言二维字符串输入
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言动态分配变长度的二维字符串数组的函数的问题。
#include stdio.h
#include stdlib.h
char **read(int m) { // 第一维的长度作为形参输入
int i = 0,n;
char **a = (char **)malloc(sizeof(char *) * m);// 分配第一维的内存
for(i = 0;i m;++i) {
printf("input the length of the %d province!\n",i + 1);
scanf("%d",n); // 读取第二维的长度
getchar();
a[i] = (char *)malloc(sizeof(char) * (n + 1)); // 分配第二维的内存
if(a[i]) {
printf("please input the name of the province\n");
gets(a[i]); // 输入字符串
}
else exit(-1);
}
return a;
}
int main() {
int i,n = 3;
char **s = read(n);
for(i = 0; i n; ++i)
printf("%s\n",s[i]);
return 0;
}
相关问答
Q1: C语言关于输出二维字符串问题。
#include stdio.h
int main() {
int i,j;
char s[5][6]; // 每行5个*二维字符串函数c语言,还有一个串结束符
for(i = 0;i 5; ++i) {
for(j = 0; j 5; ++j)
s[i][j] = '*';
s[i][j] = '\0'; // 每个串尾部添加一个结束符
}
for(i = 0;i 5; ++i)
printf("%s\n",s[i]);
return 0;
}
Q2: C语言如何在调用函数中输入二维字符数组char c[][] 用gets或 scanf
gets(c[0])输入第一行的字符串
gets(c[1])输入第二行的字符串,以此类推。
scanf("%s",c[0])输入一行的字符串,以此类推。
Q3: c语言二维数组如何定义字符串????急。。。
c语言二维数组定义字符串的步骤如下:
1、二维字符串函数c语言我们先是定义一个二级指针和行列变量【int **array,row,column;】。
2、然后二维字符串函数c语言我们用c语言编写输入行列的语句。
3、接下来二维字符串函数c语言我们就可以为其开辟一个一个一维装着一维数组的数组。
4、接下来我们使用【array[i]=(int *)malloc(sizeof(int)*column);】为数组再次产生一个新的装着数组的数组。
5、然后我们就可以为其赋值并输出。
6、运行程序后我们就可以看到这样的效果二维字符串函数c语言了。
二维字符串函数c语言的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言二维字符串输入、二维字符串函数c语言的信息别忘了在本站进行查找喔。





