职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 922|回复: 6

求助:关于C语言的改错~~

[复制链接]
狗狗汪汪 发表于 2009-8-22 11:38 | 显示全部楼层 |阅读模式
题目:写出语句scanf(\"yy-mm-dd=%d-%d-%d\",&year,&month,&date);从键盘上的输入形式~~
既写出相对应的printf语句~~
我的答案是:
这是我后来输入的编码:
#include<stdio.h>
main()
{
int year, month, date;
scanf(\"yy-mm-dd=%d-%d-%d\",&year,&month,&date);
printf(\"yy-mm-dd=%d-%d-%d,year,mmonth,data\");
}

可在执行后
我输入2009
08
11后

出现的却是
yy-mm-dd=2654561-415613123-165161612,year,mmonth,data
怎么回事啊?
我该怎么改?
培记 发表于 2009-8-22 11:38 | 显示全部楼层

求助:关于C语言的改错~~

我来给你全面改个错
#include<stdio.h>
main()
{
int year, month, date;
scanf("%d%d%d",&year,&month,&date); //这里的目的是输入3个数字你前面加了一大串更本没一点用!
printf("yy-mm-dd=%d-%d-%d",year,month,date);//这里你的"加错位置
应该如我所示
另英语问题mmonth改month
data改date
(相信你是手误)
}
山人2000 发表于 2009-8-22 11:38 | 显示全部楼层

求助:关于C语言的改错~~

楼主
scanf除了格式控制以外(%d%f之类的
其他的都要照抄才能正确运行的)

你试一下这样输入

yy-mm=2009-08-11
这样就肯定可以了

其实数字就是用%d来存储了
而其他的符号因为系统 不分配给他存储的地址
所以必需要照写
来中和掉
osp 发表于 2009-8-22 11:38 | 显示全部楼层

求助:关于C语言的改错~~

你写输入时候有yy-mm-dd=%d-%d-%d
所以在键盘上输入的时候也应该输入这些字母的
这才叫对应
输出用该改成
printf("yy-mm-dd=%d-%d-%d”,year,mmonth,data);
alandeng 发表于 2009-8-22 11:38 | 显示全部楼层

求助:关于C语言的改错~~

#include<stdio.h>
main()
{
int year, month, date;
scanf("%d%d%d",&year,&month,&date);
printf("yy-mm-dd=%d-%d-%d\n",year,month,date);
}
1382926094 发表于 2009-8-22 11:39 | 显示全部楼层

求助:关于C语言的改错~~

输入要保持一致
%d-%d-%d就要2009-08-11就是输入
小明 发表于 2009-8-22 11:39 | 显示全部楼层

求助:关于C语言的改错~~

scanf函数中
除了"%(格式说明符)"之外
其他都得原文输入
所以
你既然这样写:
scanf("yy-mm-dd=%d-%d-%d");
输入时就应该写成这样:
yy-mm-dd=2009-08-11
这样结果就是:
yy-mm-dd=2009-08-11,year,mmonth,data
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-4-19 19:03 , Processed in 0.119316 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表