> 백엔드 개발 > C++ > 이름을 알파벳순으로 정렬하는 C 프로그램

이름을 알파벳순으로 정렬하는 C 프로그램

WBOY
풀어 주다: 2023-09-24 22:49:02
앞으로
1598명이 탐색했습니다.

이름을 알파벳순으로 정렬하는 C 프로그램

用户必须输入姓名的数量,并且这些姓名需要使用strcpy()函数按字母顺序排序。

字符数组(或字符集合)被称为字符串。

声明

以下是数组的声明:

char stringname [size];
로그인 후 복사

例如,char string[50]; 长度为50个字符的字符串。

初始化

  • 使用单个字符常量
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
로그인 후 복사
  • 使用字符串常量
char string[10] = "Hello":;
로그인 후 복사

访问

有一个控制字符串“%s”用于访问字符串,直到遇到“\0”为止

strcpy()

这个函数用于将源字符串复制到目标字符串中。

目标字符串的长度大于或等于源字符串。

strcpy()函数的语法如下:

strcpy (Destination string, Source String);
로그인 후 복사

例如,

char a[50];             char a[50];
strcpy ("Hello",a);      strcpy ( a,"hello");
output: error           output: a= "Hello"
로그인 후 복사

用于按字母顺序对名称进行排序的逻辑如下 -

for(i=0;i<n;i++){
   for(j=i+1;j<n;j++){
      if(strcmp(str[i],str[j])>0){
         strcpy(s,str[i]);
         strcpy(str[i],str[j]);
         strcpy(str[j],s);
      }
   }
}
로그인 후 복사

程序

以下是按字母顺序对名称进行排序的 C 程序 -

#include<stdio.h>
#include<string.h>
main(){
   int i,j,n;
   char str[100][100],s[100];
   printf("Enter number of names :</p><p>");
   scanf("%d",&n);
   printf("Enter names in any order:</p><p>");
   for(i=0;i<n;i++){
      scanf("%s",str[i]);
   }
   for(i=0;i<n;i++){
      for(j=i+1;j<n;j++){
         if(strcmp(str[i],str[j])>0){
            strcpy(s,str[i]);
            strcpy(str[i],str[j]);
            strcpy(str[j],s);
         }
      }
   }
   printf("</p><p>The sorted order of names are:</p><p>");
   for(i=0;i<n;i++){
      printf("%s</p><p>",str[i]);
   }
}
로그인 후 복사

输出

当上述程序被执行时,它产生以下结果 −

Enter number of names:
5
Enter names in any order:
Pinky
Lucky
Ram
Appu
Bob
The sorted order of names is:
Appu
Bob
Lucky
Pinky
Ram
로그인 후 복사

위 내용은 이름을 알파벳순으로 정렬하는 C 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿