//1、二维字符数组每一行逆序输出。
//2、一维数组“qwertyuio” 查找出 yuio存在的位置是多少?
//输出其位置(模式匹配)。
#include <stdio.h>
#include <string.h>
#include <myhead.h>
#define AZ 3//行数
#define SX 3//列数
void def1(char (*p1)[SX]);
void put1(char (*p1)[SX]);
int main(int argc, const char *argv[])
{
char arr[3][3]={{'1','2','3'},
{'q','a','z'},
{'e','d','c'}};
// char *p=(char*)arr;
char (*p)[SX]=arr;
def1(p);
put1(p);
return 0;
}
void put1(char (*p)[SX])
{
int i,j;
for(i=0;i<AZ;i++)
{
for(j=0;j<SX;j++)
{
// return *(*(p+i)+j;
// putchar(32);
printf("%c\t",*(*(p+i)+j));
}
putchar(10);
}
putchar(10);
}
void def1(char (*p1)[SX])
{
int i,j;
for (i=0;i<AZ;i++)
{
char *rowStart=*(p1+i);
for(j=0;j<(SX/2);j++)
{
char temp = *(rowStart + j);
*(rowStart + j) = *(rowStart + SX - 1 - j);
*(rowStart + SX - 1 - j) = temp;
}
}
}
#include <stdio.h>
#include <string.h>
#include <myhead.h>
#define AZ 10
#define SX 10
int main(int argc, const char *argv[])
{
char arr[AZ]={"0"};
char brr[SX]={"0"};
char *p1=arr;
char *p2=brr;
printf("请输入源码\n");
scanf("%s",p1);
printf("请输入查找码\n");
scanf("%s",p2);
int len1=strlen(arr);
int len2=strlen(brr);
int flag=1;
int i,j;
for(i=0;i<len1-len2;i++)
{
flag=0;
for(j=0;j<len2;j++)
{
if(*(p1+i)!=*p2)
{
flag=1;
break;
}
}
if(flag==0)
{
printf("在第%d个字符开始的地方\n",i+1);
break;
}
}
if(flag==1)
{
printf("没有找到\n");
}
return 0;
}