1.
#include <stdio.h>
#include <string.h>
int main(int argc, char const* argv[]) {
char name[5][16];
for (size_t i = 0; i < 5; i++)
gets(name[i]);
char max[16];
strcpy(max, name[0]);
for (size_t i = 0; i < 5; i++)
if (strcmp(name[i], max) >= 0)
strcpy(max, name[i]);
printf("Max name: %s\n", max);
return 0;
}
hello
world
jerry
kitty
hqyj
Max name: world
2.
#include <stdio.h>
#include <string.h>
int getStrLength(char[]);
int main(int argc, char const* argv[]) {
char str[16];
gets(str);
printf("Len: %d\n", getStrLength(str));
return 0;
}
int getStrLength(char str[]) {
int i;
for (i = 0; str[i] != '\0'; i++);
return i;
}
helloworld
Len: 10
3.
#include <stdio.h>
#include <string.h>
void myStrcat(char[], char[]);
int main(int argc, char const* argv[]) {
char str1[16], str2[16];
printf("Please enter str1: ");
gets(str1);
printf("Please enter str2: ");
gets(str2);
myStrcat(str1, str2);
puts(str1);
return 0;
}
void myStrcat(char s1[], char s2[]) {
size_t i;
for (i = 0; s1[i] != '\0'; i++);
for (size_t j = 0; s2[j] != '\0'; j++)
s1[i++] = s2[j];
s1[i] = '\0';
}
Please enter str1: hello
Please enter str2: world
helloworld
4.
#include <stdio.h>
#include <string.h>
int myStrcmp(char[], char[]);
int main(int argc, char const* argv[]) {
char str1[16], str2[16];
printf("Please enter str1: ");
gets(str1);
printf("Please enter str2: ");
gets(str2);
printf("%s-%s=%d\n", str1, str2, myStrcmp(str1, str2));
return 0;
}
int myStrcmp(char s1[], char s2[]) {
int i = 0;
while (s1[i] == s2[i]) {
if (s1[i] == '\0')
break;
i++;
}
return s1[i] - s2[i];
}
Please enter str1: helloworld
Please enter str2: hellojerry
helloworld-hellojerry=13