C语言经典例题及答案8

一、把输入的一个字符串按逆序重新排序其字符,并输出。

#include<stdio.h>

#include<string.h>

void main()

{  char a[80],k;

   int i,j;

   gets(a);

   for(i=0,j=strlen(a)-1;i<j;i++,j--)

   { k=a[i];

   a[i]=a[j];

   a[j]=k;

   }

  puts(a);

}

二、从键盘输入一个字符串。要求分别统计出其中英文大写字母、小写字母、数字、空格、以及其它字符的个数

#include<stdio.h>

void main()

{ inti,a=0,b=0,c=0,d=0,e=0;

  char q[20];

  gets(q);

  for(i=0;q[i]!='\0';i++)

  { 

    if(q[i]>='0'&&q[i]<='9')

    a++ ;

     elseif(q[i]>='a'&&q[i]<='z')

    b++;

    else if(q[i]>='A'&&q[i]<='Z')

    c++;

     else if(q[i]==' ')

    d++;

     else e++;

   }

 printf("%3d%4d%3d%3d%3d",a,b,c,d,e);

  }

三、输入五个英文单词,请找出它们之中按字典排序法排在最前的一个词。 

#include <stdio.h>

#include<string.h>

void main()

{ chara[5][30],b[30];

  int i,j,k;

  for(i=0;i<5;i++)

   gets(a[i]);

   for(i=0;i<5;i++)

    { k=i;strcpy(b,a[i]);

      for(j=i+1;j<5;j++)

      if(strcmp(a[j],b)<0)

       { k=j;

     strcpy(b,a[j]);

       }

      if(k!=i)

      { strcpy(b,a[i]);

    strcpy(a[i],a[k]);

    strcpy(a[k],b);

      }

      puts(a[i]);

      }

      printf("\n");

 

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值