练习1:
循环输入5个人姓名(二维数组),计算最大数值
程序:
#include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc, const char *argv[]) { int m; printf("请输入需要输入的人名个数:"); scanf("%d",&m); char arr[m][10]; char arr2[99]=""; int i; for(i=0;i<m;i++) { printf("输入第%d个名字",i+1); scanf("%9s",arr[i]); if(strcmp(arr2,arr[i])<0) { strcpy(arr2,arr[i]); } } printf("最大的名字为:"); puts(arr2); return 0; }
练习2:
在主函数定义字符串数组并初始化,自定义有参有返函数,计算字符串长度,并返回长度值
程序:
#include <stdio.h> #include <string.h> #include <stdlib.h> int strl(char str[100]); int main(int argc, const char *argv[]) { char str[100]="hello world"; printf("字符串长度为%d\n",strl(str)); return 0; } int strl(char str[100]) { int i; int count; while(str[i]!='\0') { count++; i++; } return count; }
练习3:
在主函数 中定义两个字符串并初始化,定义有参无返函数实现两个字符串连接
程序:
#include <stdio.h> #include <string.h> #include <stdlib.h> void strlink(char arr1[100],char arr2[20]); int main(int argc, const char *argv[]) { char arr1[100]="哈喽你说啥:"; char arr2[20]="没说啥"; strlink(arr1,arr2); return 0; } void strlink(char arr1[100],char arr2[20]) { strcat(arr1,arr2); puts(arr1); }
练习4:
在主函数中定义两个字符并初始化,定义有参有返函数,实现字符串比较,返回两个字符串ASCII值得差
程序:
#include <stdio.h> #include <string.h> #include <stdlib.h> int strsub(char str1[],char str2[]); int main(int argc, const char *argv[]) { char str1[]="hello world"; int n1=strlen(str1); char str2[]="hello World"; int n2=strlen(str2); int sub=strsub(str1,str2); printf("字符串差值为:%d\n",sub); return 0; } int strsub(char str1[],char str2[]) { int sum=strcmp(str1,str2); return sum; }