今天上午讲解了C语言的一道练习题,有5个字符串,首先将它们按照字符串中的字符个数由小到大排列,再分别取出每个字符串的第三个字母合并成一个新的字符串输出(若少于三个字符的输出空格)。要求:利用字符串指针和指针数组实现。
代码如下:
#include
int main()
{
char a[5][100],b[100];
int i,j,k;
int m,n;
char p;
for(i=0;i<5;i++)
gets(a[i]);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
m=strlen(a[j]);
n=strlen(a[j+1]);
if(m>=n)
{
for(k=0;k<100;k++)
{
p=*(a[j]+k);
*(a[j]+k)=*(a[j+1]+k);
*(a[j+1]+k)=p;
}
}
}
}
printf("\n");
for(i=0;i<5;i++)
{
printf("%s\n",a[i]);
}
printf("\n");
for(i=0;i<5;i++)
{
if(strlen(a[i])>=3)
b[i]=a[i][2];
else
b[i]=' ';
}
printf("%s",b);
}
运行结果为:
之后又进行了linux部分命令的学习。
以及在Linux系统中的代码编写,编译及运行。