大家帮我看看这道C语言的题目哪里错了。。
/*大小写的字母都转换为大写字母(要求:必须用函数编写)*/#include<stdio.h>intmain(){inttoupper(char);charch,x,X,...
/*大小写的字母都转换为大写字母(要求:必须用函数编写)*/
#include <stdio.h>
int main()
{
int toupper(char);
char ch,x,X,A,Z,a,z;
printf("请输入想要转换的字母:");
ch=getchar();
while( scanf("%f",&ch)!=x || scanf("%f",&ch)!=X )
{
if (ch >= A && ch <= Z)
putchar(ch);
break;
else if (ch >= a && ch <= z)
toupper(ch);
break;
else
printf("抱歉,您输入的字符有误,请输入正确的字符.\n");
break;
}
printf("您已完成本次操作!\n");
return 0;
}
int toupper (char x)
{
putchar(x-32);
} 展开
#include <stdio.h>
int main()
{
int toupper(char);
char ch,x,X,A,Z,a,z;
printf("请输入想要转换的字母:");
ch=getchar();
while( scanf("%f",&ch)!=x || scanf("%f",&ch)!=X )
{
if (ch >= A && ch <= Z)
putchar(ch);
break;
else if (ch >= a && ch <= z)
toupper(ch);
break;
else
printf("抱歉,您输入的字符有误,请输入正确的字符.\n");
break;
}
printf("您已完成本次操作!\n");
return 0;
}
int toupper (char x)
{
putchar(x-32);
} 展开
展开全部
给你一个将一个字母(无论大写小写)转换为大写字母的函数吧。
char outUpper (char x)
{
if (x - 'A' >= 32)
return (char)(x - 32);
return x;
}
补充:
仔细看一下scanf的用法,你程序里写得可以看出来,你完全不懂怎么用它。
char outUpper (char x)
{
if (x - 'A' >= 32)
return (char)(x - 32);
return x;
}
补充:
仔细看一下scanf的用法,你程序里写得可以看出来,你完全不懂怎么用它。
更多追问追答
追问
抱歉,我是初学者,确实不是很懂啊,,可否给我解释下呢,,,,就是你帮我补充的这个程序我也不是很懂哈。。。麻烦啦。。。
追答
scanf函数的原型是int scanf(格式控制参数,地址1,地址2,……);
初学者可以不必深究,但要会用。比如说,你要获取一个输入的字符,用scanf获取的话,应该这样写:
char ch;
printf("请输入想要转换的字母:");
scanf("%c", &ch);
这样变量ch中就保存了你输入的字符了。当然用ch = getchar(); 效果一样。
展开全部
#include <stdio.h>
int main(void){
char c;
while((c=getchar()) != 'z'){
if(c>='A' && c<='Z'){
putchar(c);
}else if(c>='a' && c<='z'){
toUpperCase(&c);
putchar(c);
}else
printf(" ");
}
printf("你已完成本次操作\n");
}
void toUpperCase(char* c){
*c = *c-32;
}
int main(void){
char c;
while((c=getchar()) != 'z'){
if(c>='A' && c<='Z'){
putchar(c);
}else if(c>='a' && c<='z'){
toUpperCase(&c);
putchar(c);
}else
printf(" ");
}
printf("你已完成本次操作\n");
}
void toUpperCase(char* c){
*c = *c-32;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询