要求:
1:用5*256的char型2次元配列,使用gets函数输入配列
2:不能使用strlen()函数,设计一个longest函数来查找字符串长度以及判断最长的字符串行数
3:同样长度的话按输出最先输入的字符串行数
解答:
#include#define MAX 256 int length(const char str[]) { int len = 0; while (str[len]) len++; return len; } int longest(char str[5][MAX], int j) { int i,max = 0, len[5] = { 0 }; for (i = 0; i < 5; i++) { len[i] = length(str[i]); } for (i = 0; i < 5; i++) { if (len[i] > max) { max = len[i]; j = i; } } return j; } int main(void) { int i, j = 0, len[5] = { 0 }; char str[5][MAX]; for (i = 0; i < 5; i++) { printf("请输入第%d行字符串(最大255字符):", i + 1); gets(str[i]); } j = longest(str, j); printf("最长的字符串是第%d行的 %s n", j + 1, str[j]); return 0; }
输出结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)