| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 493 人关注过本帖
标题:这个程序哪里出了问题
只看楼主 加入收藏
xiao92010
Rank: 2
来 自:江西,赣州
等 级:论坛游民
帖 子:16
专家分:17
注 册:2010-8-5
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
这个程序哪里出了问题
#include"stdio.h"
main()
{
    int i,n1,n2;
    char str[20];
    char c1,c2,a,b,c3,c4;
    float x,y,z,p;
    long int x1,x2;
   
    printf("请输入一个十进制整数:");
    scanf("%d",&i);
    printf("请输入一个字符串:");
    scanf("%s",&str);
    fflush(stdin);
    printf("请输入第一个字符:");
    scanf("%c",&c1);
    fflush(stdin);
    printf("请输入第二个字符:");
    scanf("%c",&c2);
    fflush(stdin);
    printf("请输入两个字符串:");
    scanf("%c%c",&a,&b);
    printf("请输入两个十进制整数(用空格隔开)、两个连续字符(用空格隔开)、三个小数(用空格隔开)、逗号、又一个小数:\n");
    scanf("%5d%5d%c%c%f%f%*f,%f",&n1,&n2,&c3,&c4,&x,&y,&z,&p);
    printf("请输入大于四位数的十进制整数:");
    scanf("%4d%4d",&x1,&x2);
   
    printf("i=%d\n",i);
    printf("c1=%c\n",c1);
    printf("c2=%c\n",c2);
    printf("a=%c,b=%c\n",a,b);
    printf("n1=%d\n n2=%d\n c3= %c\n c4=4%c\n x=%f\n y=%f\n z=b%f\n p=%f",n1,n2,c3,c4,x,y,z,p);
    printf("x1=%d,\n x2=%d",x1,x2);
}

不懂的地方:   scanf("%4d%4d",&x1,&x2);为什么要加数字4?   
               scanf("%5d%5d%c%c%f%f%*f,%f",&n1,&n2,&c3,&c4,&x,&y,&z,&p);   %*f代表的是什么?
搜索更多相关主题的帖子: include 十进制 字符串 
2010-08-05 21:43
erikyo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:270
专家分:1154
注 册:2010-6-10
收藏
得分:20 
加上数字4是用来对齐的,表示输出的数据的长度是4,按右对齐输出,若不足在左边不空格。
%*f表示忽略一个float类型的数据
2010-08-05 21:49
xiao92010
Rank: 2
来 自:江西,赣州
等 级:论坛游民
帖 子:16
专家分:17
注 册:2010-8-5
收藏
得分:0 
回复 2楼 erikyo
还是不太懂,刚学C语言,,这个scanf函数是用来输入数据的,不需要加数值,直接用空格隔开不是可以吗.?

今天的努力=明天的收获
2010-08-05 22:07
erikyo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:270
专家分:1154
注 册:2010-6-10
收藏
得分:0 
看成printf了,不过scanf也是有的,他表示的输入字段的最大长度。
2010-08-06 08:52
快速回复:这个程序哪里出了问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019654 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved