题目
以下程序,输入为97时,运行结果是( )。#include<stdio.h> int main(void) { char x,y; x=getchar(); if(x>='A'&&x<='Z') y=x+32; else if(x>='a'&&x<='z') y=x-32; else y=x; printf("%cn",y); return 0; }A.B.aC.9D.97
以下程序,输入为97时,运行结果是( )。
#include<stdio.h>
int main(void)
{
char x,y;
x=getchar();
if(x>='A'&&x<='Z')
y=x+32;
else if(x>='a'&&x<='z')
y=x-32;
else
y=x;
printf("%c\n",y);
return 0;
}
A.
B.a
C.9
D.97
题目解答
答案
程序的功能是将输入字符转换为相应的大小写形式,其中大写字母变成小写字母,小写字母变成大写字母,其他字符保持不变。 在这种情况下,输入97对应于ascii表中的字母'a',所以在if语句中的第二个条件得到满足,变量y被赋值为'a'的大写形式'A',然后输出结果为A。故答案为:A.
解析
步骤 1:输入字符
程序首先通过`getchar()`函数从标准输入读取一个字符。输入为97,对应ASCII码中的字符'a'。
步骤 2:条件判断
程序接下来检查输入字符是否在大写字母'A'到'Z'之间。由于输入字符'a'不在这个范围内,所以这个条件不成立。
步骤 3:条件判断
程序检查输入字符是否在小写字母'a'到'z'之间。由于输入字符'a'在这个范围内,所以这个条件成立。因此,程序将输入字符'a'转换为大写字母'A'。
步骤 4:输出结果
程序通过`printf("%c\n",y);`语句输出转换后的字符。由于输入字符'a'被转换为大写字母'A',所以输出结果为'A'。
程序首先通过`getchar()`函数从标准输入读取一个字符。输入为97,对应ASCII码中的字符'a'。
步骤 2:条件判断
程序接下来检查输入字符是否在大写字母'A'到'Z'之间。由于输入字符'a'不在这个范围内,所以这个条件不成立。
步骤 3:条件判断
程序检查输入字符是否在小写字母'a'到'z'之间。由于输入字符'a'在这个范围内,所以这个条件成立。因此,程序将输入字符'a'转换为大写字母'A'。
步骤 4:输出结果
程序通过`printf("%c\n",y);`语句输出转换后的字符。由于输入字符'a'被转换为大写字母'A',所以输出结果为'A'。