gpt4 book ai didi

printf 中的条件语句

转载 作者:行者123 更新时间:2023-11-30 20:58:10 26 4
gpt4 key购买 nike

代码有什么问题。为什么条件语句不能在 printf 内部执行。

#include<stdio.h>
int main()
{
int ch,hc;
ch=getchar();
printf("character entered by you is :- %c\n",ch);
printf("letter in capital is %c\n",(((char(ch) >='a') && (char(ch)<='z'))?(ch-32):(ch)));
return 0;
}

请帮我理解。

最佳答案

char 不是函数。您无法调用 char(ch)。如果你想进行类型转换,可以这样完成:

(char) ch

此外,您不必将 int 转换为 char 来与字符进行比较。这是完全有效的:

ch >= 'a'

即使ch是一个int

因此,了解了这一点,您可以将 printf 行更改为:

printf("letter in capital is %c\n", ( ch >= 'a' ) && (ch <= 'z') ? (ch-32) : (ch));

关于printf 中的条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53682221/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com