输入一个长度小于80的字符串将小写字母转换为大写字母,若没有小写字母,则给出提示符
C语言不能以数组做返回值,字符型数组、整型数组都不行,数组只能利用传参的时候传进去地址。
你传进去的参数,在函数里面修改就是修改的主函数里面的数组,不要写返回值,可以反回一个int整数,反回1表示有小写字母,反回0表示没有。
修改如下,供参考:
#include <stdio.h>
#include <string.h>
#define N 80
int xd(char ch1[]);
int main()
{
char ch[N];
printf("Enter a string:");
gets(ch);
if (xd(ch) == 1)
puts(ch);
else
printf("no lowercase");
return 0;
}
int xd(char ch1[])
{
int i, c = 0;
//char chw[N] = "no lowercase";
for (i = 0; ch1[i] != '\0'; i++)
{
if (ch1[i] >= 'a' && ch1[i] <= 'z')
{
ch1[i] = ch1[i] - 32;
c = 1;
}
}
return c;
}