C语言问题,第三个是比如输入a,输出结果是c1=a or 97,虽然我输出结果了,但不是我输入a他才出来的,高手帮忙!

用scanf函数输入数据:(要求输入前加适当的提示)a的值是3,b的值是4,c的值是5,x的值是1.2,y的值是2.5,z的值是-3.6,c1的值是a。想得到以下的输出格... 用scanf函数输入数据:(要求输入前加适当的提示)
a的值是3,b的值是4,c的值是5,x的值是1.2,y的值是2.5,z的值是-3.6,c1的值是a。想得到以下的输出格式和结果,请写出程序(包括定义变量类型和设计输出)。
要求输出的结果如下:
1)a=3,b=4,c=5;
2)x=1.200000,y=2.500000,z=-3.600000;
3)c1=a or 97

帮我看看我的程序哪里错了!!帮忙改改,谢了..
我的程序是:
#include "stdio.h"
void main()
{
int a,b,c,i;
float x,y,z;
char c1;
clrscr();
printf("Input a=");
scanf("%d",&a);
printf("Input b=");
scanf("%d",&b);
printf("Input c=");
scanf("%d",&c);
printf("1)a=%d,b=%d,c=%d\n",a,b,c);
printf("Input x=");
scanf("%f",&x);
printf("Input y=");
scanf("%f",&y);
printf("Input z=");
scanf("%f",&z);
printf("2)x=%f,y=%f,z=%f\n",x,y,z);
printf("Input c1=\n");
scanf("%c",&c1);
i=65; c1='A';
i=i+32; c1=c1+32;
printf("3)%c or %d",c1,i);
}
展开
 我来答
weaponed
2010-10-25
知道答主
回答量:10
采纳率:0%
帮助的人:0
展开全部
最后一个
printf("Input c1=\n");
scanf("%c",&c1);
i=65; c1='A';
i=i+32; c1=c1+32;
printf("3)%c or %d",c1,i);

不用这么麻烦。

直接
printf("Input c1=");
scanf("%c", &c1);
printf("c1=%c or %d", c1, c1);
就可以了,主要的问题在于,char型数据是以 4位2进制数存储的 他的范围是:-128~127,因此实际c1在内存中存储的方式是 97(对应的ASCII位'a'),也就是说如果我用一个int a=97, 屏幕显示printf("%c", a); 那么也会显示出‘a’的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
20081120049
推荐于2016-08-10
知道答主
回答量:51
采纳率:0%
帮助的人:29.3万
展开全部
#include "stdio.h"
#include<stdlib.h>
main()
{
int a,b,c,i;
float x,y,z;
char c1;

printf("Input a=");
scanf("%d",&a);
printf("Input b=");
scanf("%d",&b);
printf("Input c=");
scanf("%d",&c);
printf("1)a=%d,b=%d,c=%d\n",a,b,c);//少了分号
printf("Input x=");
scanf("%f",&x);
printf("Input y=");
scanf("%f",&y);
printf("Input z=");
scanf("%f",&z);
printf("2)x=%f,y=%f,z=%f\n",x,y,z);//少了分号
printf("Input c1=");//不用加换行
getchar();//需要加这句话,否则c1 为换行符
scanf("%c",&c1);
/*i=65; c1='A';
i=i+32; c1=c1+32;*///这几句话无用
printf("3)%c or %d",c1,c1);

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
甘灵溪0ef
2010-10-25 · 超过15用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:46.2万
展开全部
#include<stdio.h>
#include<stdlib.h>
main()
{ int a,b,c,i;
float x,y,z;
char c1;
//clrscr();
printf("Input a=");
scanf("%d",&a);
printf("Input b=");
scanf("%d",&b);
printf("Input c=");
scanf("%d",&c);
printf("1)a=%d,b=%d,c=%d\n",a,b,c);
printf("Input x=");
scanf("%f",&x);
printf("Input y=");
scanf("%f",&y);
printf("Input z=");
scanf("%f",&z);
printf("2)x=%f,y=%f,z=%f\n",x,y,z);
//printf("Input c1=\n");
//scanf("%c",&c1);
i=65; c1='A';
i=i+32; c1=c1+32;
printf("3)c1=%c or %d",c1,i);

system("pause");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式