Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int str_len(char *str){
- int len = 0;
- while(*str++) len++;
- return len;
- }
- int str_cmp(char *str1, char *str2){
- int len1 = str_len(str1), len2 = str_len(str2);
- if(len1 < len2){
- return 1;
- }else if(len1 > len2){
- return -1;
- }else{
- int i = 0;
- for (; i < len1; ++i) {
- if(str1[i] != str2[i]){
- break;
- }
- }
- if(i == len1){
- return 0;
- }
- if(str1[i] > str2[i]){
- return -1;
- }
- if(str1[i] < str2[i]){
- return 1;
- }
- }
- return 0;
- }
- //str_cmp: если первая строка меньше второй выход 1 если вторая строка меньше первой то -1 и 0 если они равны
- int main(int argc, char *argv[]){
- printf("Current strings\n\n");
- for (int i = 1; i < argc; ++i) {
- puts(argv[i]);
- }
- for (int i = 1; i < argc - 1; ++i) {
- for (int j = 1; j < argc - 1; ++j) {
- if(str_cmp(argv[j], argv[j + 1]) == -1){
- char *tmp = argv[j];
- argv[j] = argv[j + 1];
- argv[j + 1] = tmp;
- }
- }
- }
- printf("\n\nFinal strings\n\n");
- for (int i = 1; i < argc; ++i) {
- puts(argv[i]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement