C语言问题啊!!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/05 17:25:08
#include "stdio.h"
void main()
{
char a[ ]="programming",b[ ]="langguage";
char *p1,*p2;
int i;
p1=a;p2=b;
for(i=0;i<7;i++)
if(*(p1+i)==*(p2+i))
printf("%c",*(p1+i));
}
我是菜鸟 但想学C语言 老师讲的不怎么懂 请高手为我详细解答 我看不懂啊 特别是这句char a[ ]="programming",b[ ]="langguage";

#include "stdio.h"
void main()
{
char a[ ]="programming",b[ ]="langguage";
//定义两个数组并赋值,以上两个赋值后会有一个默认长
//度,比如上面a的长度为11,但是大小却是12,因为字
//符串后面自动加了一个'\0',
char *p1,*p2;
int i;
p1=a;p2=b; //指针p1指向a,p2指向b
for(i=0;i<7;i++)
if(*(p1+i)==*(p2+i)) //逐个比较数组a和b中的字符
printf("%c",*(p1+i)); //若相同就输出那个相同的字符
}

定义字符型数组a和b,并分别赋值为programming和langguage

定义一个变长变量a和b然后给他们赋值,所赋的值就是哪两个字符串啊

a[]和b[]表示的是数组,而用char 来定义为字符型数组,用来存放若干个若干个字符.char *p1,*p2;定义的是两个字符型指针,它存放的是变量的地址.后面的你应该能自己琢磨出来了吧!

你要明白,int ,char,float,double等都是C语言的数据类型。当a后加一个[]时,说明这是一个数组。前而是char,说明是字符型的数组。数组的元素是programming。

char a[ ]="programming",b[ ]="langguage";
这句话我给你写个简单的你就明白了
char a[ ]="abc",b[ ]="def";
"" 这个符号里面写的只是你想写的 可以随意的字符
其实就是连个 字符串的数组 一个叫 a 里面存的是 programming 另一个叫 b 里面存的是 langguage
a和b 也是自己定义的 你也可以叫 x和y
能明白么?如