1.指针编程,找最大串
#include<stdio.h>
#include<string.h>
int main(void)
{
char ch1[6];
char ch2[6];
int a = 0;
scanf("%s",ch1);
while (ch1[0] != '*')
{
int b = 0;
for (int i=0;ch1[i]!='\0';i++)
{
b += ch1[i];
}
if (b>a)
{
a=b;
strcpy(ch2,ch1);
}
scanf("%s",ch1);
}
printf("%s",ch2);
}
2.指针方法复制字符串(不超过30)截断字符串
#include<stdio.h>
int main(void)
{
char s1[30];
int n;
scanf("%s",s1);
scanf("%d",&n);
for (int i=n-1; s1[i]!='\0';i++)
{
printf("%c",s1[i]);
}
}
3.求字符串长度
#include<stdio.h>
void strlens(char s[])
{
int i;
for ( i=0; s[i]!='\0';i++){};
printf("%d\n",i);
}
int main(void)
{
char s[100];
scanf("%s",s);
strlens(s);
}
4.翻转字符串
#include<stdio.h>
void flowover(char s[])
{
int i;
char s1[50];
for (i=0;s[i]!='\0';i++){};
for (int j=0;j<=i;j++)
{
s1[i-j-1] = s[j];
}
printf("%s",s1);
}
int main(void)
{
char s[50];
scanf("%s",s);
flowover(s);
}
5.猜字符串长度(一群神秘的字符串)
#include<stdio.h>
int strlin(char s[])
{
int i = 0;
for (; s[i]!='\n';i++){}
return i;
}
int main(void)
{
char s1[100];
fgets(s1,100,stdin);
printf("%d",strlin(s1));
}
6.用指针变量输出含10个元素的整形数组
#include<stdio.h>
int main(void)
{
int s[10];
for (int i=0;i<10;i++)
{
scanf("%d",s+i);
}
for (int i=0; i<10;i++)
{
printf("%d ",*(s+i));
}
}
7.字符串赋值(a赋值给b,并输出b)
#include<stdio.h>
int main(void)
{
char a[50];
char b[50];
char *p;
fgets(a,50,stdin);
p = a;
for (int i=0;*(p+i)!='\n';i++)
{
b[i]=*(p+i);
}
printf("%s",b);
}
8.交换2个数,调函数方式
#include<stdio.h>
void swap(int *a, int *b)
{
int t;
t=*a;
*a=*b;
*b=t;
}
int main(void)
{
int a,b;
scanf("%d %d",&a,&b);
swap(&a,&b);
printf("%d %d",a,b);
}