1.二维字符数组每一行逆序输出。
#include <myhead.h>
int main(int argc, const char *argv[])
{
/*二维字符数组每一行逆序输出。*/
int a=10,b=10;
char arr[a][b];
char (*p)[b] = arr;
printf("请输入字符串个数:");
scanf("%d",&a);
printf("请输入最大字符串长度:");
scanf("%d",&b);
int i,j;
char m;
for(i = 0;i < a;i++)
{
printf("请输入第%d个字符串:",i+1);
scanf("%s",*(p+i));
}
for(i = 0;i < a;i++)
{
for(j = 0;j<b-1-j;j++)
{
m = *(*(p+i)+j);
*(*(p+i)+j) = *(*(p+i)+b-1-j);
*(*(p+i)+b-1-j) = m;
}
}
for(i = 0;i < a;i++)
{
for(j = 0;j < b;j++)
{
printf("%c",*(*(p+i)+j));
}
putchar(10);
}
return 0;
}
2.一维数组“qwertyuio” 查找出 yuio存在的位置是多少?输出其位置(模式匹配)。
#include <myhead.h>
int main(int argc, const char *argv[])
{
/*一维数组“qwertyuio” 查找出 yuio存在的位置是多少?输出其位置(模式匹配)。*/
char arr[20] = "qwertyuio";
char *p = arr;
char brr[20];
printf("请输入要查找的字符串:");
scanf("%s",brr);
int i,m = -1;
for(i = 0;i < 20;i++)
{
if(strcmp(brr,p+i) == 0)
{
m=i;
break;
}
}
if(m != -1)
{
printf("所查找的字符串%s在数组中的位置是%d\n",brr,m);
}
else
{
printf("所查找的字符串不存在\n");
}
return 0;
}