两种方法我写在一起,可以独立拆开。
#include <stdio.h>
void finda1(char a[3][10]);
void finda2(char a[3][10]);
void show(char (*p)[10]);
int main()
{
char a[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原数组内容:\n");
show(a);
printf("\n1、用数组指针的方法(函数finda1):\n");
finda1(a);
printf("执行后:\n");
show(a);
printf("\n---------------------\n");
char b[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原数组内容:\n");
show(a);
printf("\n2、用指针数组的方法(函数finda2):\n");
finda2(b);
printf("执行后:\n");
show(b);
return 0;
}
void finda1(char a[3][10])
{
int i,j;
char (*p)[10]=a;
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("发现:第%d行第%d个元素是‘a’,已替换\n",i+1,j+1),p[i][j]='1';
}
void finda2(char a[3][10])
{
int i,j;
char *p[3]={&a[0][0],&a[1][0],&a[2][0]};
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("发现:第%d行第%d个元素是‘a’,已替换\n",i+1,j+1),p[i][j]='1';
}
void show(char (*p)[10])
{
int i,j;
for(i=0;i<3;i++,printf("\n"))
for(j=0;j<10;j++)
printf("%c ",p[i][j]);
}
代码:
#include
int main()
{
printf("Hello World.\n");
return 0;
}
扩展资料:
代码解析:
1.其中第一行的#include ,这行代码是编译预处理指令,用来提供输入输出函数的声明和宏的定义,全局量的定义这些信息。stdio.h是系统提供的一个文件名,stdio是为standard input & output的缩写,意为标准输入输出,文件后缀.h的意思是头文件(header file),因为这些文件都是放在程序各文件模块的开头的。总的来说,输入输出函数的相关信息已事先放在stdio.h文件中,然后,要用#include指令把这些信息调入供使用。
2.void main(){},main是主函数的函数名,表示这是一个主函数,每一个C源程序都必须有且只能有一个主函数。
3.函数调用语句,即调用printf("Hello World \n");语句 ,printf函数的功能是把要输出的内容送到显示器去显示,即打印输出Hello World到windows 控制台下,其中\n为转义字符,具有转行的功能。
4.printf函数是一个由系统定义的标准函数,可在程序中直接调用。