表达式语法错误问题

时间:2015-10-17 09:14:36

标签: c

我正在编写一个简单的代码,从小写改为大写,但在if()语句的第12行显示表达式语法错误。代码运行良好,没有相等的符号,但不能使用相等。任何帮助纠正它是值得赞赏的。

代码如下:

#include<stdio.h>
#include<string.h>
#include<conio.h>

main()
{
char s[]="Computer";
int i;
clrscr();
for (i=0;i<strlen(s);i++)
  {
   if (s[i] > = 'a' && s[i] < = 'z')
   s[i]+='A'-'a';
  }
puts(s); 
getch();
return 0;
}

3 个答案:

答案 0 :(得分:2)

由于> =>之间的空格,此=语法无效。删除空格:

if (s[i] >= 'a' && s[i] <= 'z')

答案 1 :(得分:1)

您获得的语法错误是由>=运算符之间的空格引起的。同样适用于<=。此外,这将是您的代码的更好版本:

int main()
{
    char s[] = "Computer";
    size_t i, len = strlen(s);

    for (i = 0; i < len; i++) {
        if (s[i] >= 'a' && s[i] <= 'z')
            s[i] -= 32;
    }

    puts(s); 
    getch();

    return 0;
}

答案 2 :(得分:-2)

请在if(s[i] > = 'a' && s[i] < = 'z')中查看您的代码 作为if(s[i] >= 'a' && s[i] <= 'z')