自定义函数求字符串长度
#include<stdio.h>
char str[100000];
int lenth(char str[]);
int main()
{
int w;
while(gets(str)!=NULL)
{
w=lenth(str);
printf("%d\n",w);
}
return 0;
}
int lenth(char str[])
{
int i,count=0;
for(i=0;str[i]!='\0';i++)
{
if(str[i]!='\0')
count++;
}
return count;
}
自定义函数将字符串复制
#include<stdio.h>
#include<string.h>
char str1[100000],str[100000];
void h(char str[]);
int main()
{
while(gets(str)!=NULL)
{
h(str);
puts(str1);
}
return 0;
}
void h(char str[])
{
int i;
memset(str1,0,sizeof(str1));
for(i=0;str[i]!='\0';i++)
{
if(str[i]!='\0')
{
str1[i]=str[i];
}
}
}
自定义函数比较字符串大小
#include<stdio.h>
#include<string.h>
char str[100000],str1[100000];
int h(char str[],char str1[]);
int main()
{
while(gets(str)!=NULL&&gets(str1)!=NULL)
{
if(h(str,str1)==1)
printf("str>str1\n");
else if(h(str,str1)==-1)
printf("str<str1\n");
else
printf("str=str1\n");
}
return 0;
}
int h(char str[],char str1[])
{
int i;
for(i=0;str[i]!='\0';i++)
{
if(str1[i]!='\0')
{
if(str[i]>str1[i])
return 1;
if(str[i]<str1[i])
return -1;
}
else
return 1;
}
if(str1[i]!='\0')
return -1;
}
自定义函数将字符串连接
#include<stdio.h>
#include<string.h>
char str1[100000],str[100000],str2[100000];
void W(char str[],char str1[]);
int main()
{
while(gets(str)!=NULL&&gets(str1)!=NULL)
{
W(str,str1);
puts(str2);
}
return 0;
}
void W(char str[],char str1[])
{
int i,j;
memset(str2,0,sizeof(str2));
for(i=0;str[i]!='\0';i++)
{
if(str[i]!='\0')
{
str2[i]=str[i];
}
}
for(j=0;str1[j]!='\0';j++)
{
if(str1[j]!='\0')
{
str2[j+i]=str1[j];
}
}
}
自定义函数将字符串逆置
#include<stdio.h>
#include<string.h>
char str1[100000],str[100000];
int lenth(char str[]);
void W(char str[]);
int main()
{
while(gets(str)!=NULL)
{
W(str);
puts(str1);
}
return 0;
}
int lenth(char str[])
{
int i,count=0;
for(i=0;str[i]!='\0';i++)
{
if(str[i]!='\0')
count++;
}
return count;
}
void W(char str[])
{
int i,h=0;
memset(str1,0,sizeof(str1));
for(i=lenth(str)-1;i>=0;i--)
{
str1[h]=str[i];
h++;
}
}
打印实心菱形
#include<stdio.h>
int main()
{
int i,j,n,h,w,t;
while(scanf("%d",&n)!=EOF)
{
h=n/2;
for(i=1;i<=n/2+1;i++)
{
for(j=h;j>0;j--)
printf(" ");
for(w=1;w<=2*i-1;w++)
printf("*");
h--;
printf("\n");
}
t=1;
for(i=n/2;i>0;i--)
{
for(j=1;j<=t;j++)
printf(" ");
for(j=1;j<=2*i-1;j++)
printf("*");
t++;
printf("\n");
}
}
return 0;
}
打印空心菱形
#include<stdio.h>
int main()
{
int i,j,n,h,w,t;
while(scanf("%d",&n)!=EOF)
{
h=n/2;
for(i=1;i<=n/2+1;i++)
{
for(j=h;j>0;j--)
printf(" ");
if(i==1)
{
printf("*");
printf("\n");
}
else
{
printf("*");
for(w=1;w<=2*(i-1)-1;w++)
printf(" ");
printf("*");
printf("\n");
}
h--;
}
t=1;
for(i=n/2;i>0;i--)
{
for(j=1;j<=t;j++)
printf(" ");
if(i==1)
{
printf("*");
printf("\n");
}
else
{
printf("*");
for(j=1;j<=2*(i-1)-1;j++)
printf(" ");
printf("*");
printf("\n");
}
t++;
}
}
return 0;
}