想知道题中执行程序
c=c-32后
输入对应大写字母用printf(“%c,c”)
再return 0为何题会判只有3分(有分号)
而标准答案是return(c)
没有printf,求解答
题目中的程序是将小写字母转换成对应的大写字母,具体实现方式是将字符变量c减去32,即可得到对应的大写字母。要输出转换后的字符,可以使用printf函数,格式化输出字符%c。而return 0是表示函数执行成功并返回0,是程序结束的标志。
正确的程序应该是这样的:
#include <stdio.h>
int main()
{
char c;
scanf("%c", &c); // 读入一个字符
if (c >= 'a' && c <= 'z') // 判断是否为小写字母
{
c = c - 32; // 转换为大写字母
printf("%c\n", c); // 输出结果
}
return 0;
}
如果要将转换后的字符作为函数的返回值,可以使用return语句,如下所示:
#include <stdio.h>
char convert(char c) // 声明一个char类型的函数,参数为字符c
{
if (c >= 'a' && c <= 'z') // 判断是否为小写字母
{
c = c - 32; // 转换为大写字母
}
return c; // 返回转换后的字符
}
int main()
{
char c;
scanf("%c", &c); // 读入一个字符
c = convert(c); // 调用convert函数进行转换
printf("%c\n", c); // 输出结果
return 0;
}
是在函数里直接打印,还是通过返回值返回,要看题目要求啊
你不放题目,鬼知道什么要求
要求你返回你就得返回,乱打印当然和预期不一致了