| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 470 人关注过本帖
标题:看看这个题如何做
只看楼主 加入收藏
michaelwang
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-9
收藏
 问题点数:0 回复次数:7 
看看这个题如何做
由键盘任意输入两个数,再进行判断,如果输入的不是数值,重新输入,如果是数值是进行相加,
我是这样做的总不能实现:
int sum;
char a, b;
sum=0;
printf("请输入两个整数:\n");
scanf("%c%c",&a,&b);
while ('a'<48 || 'b'>57){
printf("请输入两个整数:\n");
scanf("%c%c",&a,&b);
}
sum=a+b;
printf("sum=%d\n",sum);

[此贴子已经被作者于2006-8-8 12:30:00编辑过]

搜索更多相关主题的帖子: 如何 
2006-08-08 09:44
vancebs
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-3
收藏
得分:0 
int sum;
char a, b;
sum=0;
printf("请输入两个整数:\n");
scanf("%c%c",&a,&b); //这样输入进来的只能是一位的整数,建议用%s
while ('a'<48 || 'b'>57){
printf("请输入两个整数:\n");
scanf("%c%c",&a,&b);
if
}
sum=a+b; //虽然前面已经过滤了不是整数的情况,但是现在的a,b都是asic码,要减去48
printf("sum=%d\n",sum);

2006-08-08 11:02
michaelwang
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2006-7-9
收藏
得分:0 
但这条printf("请输入两个整数:\n");输出很多
2006-08-08 12:31
无心剑
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-8-4
收藏
得分:0 
你的程序一定要使用char型变量吗,如果是这样的话,你就必须使用字符串数组了,用循环比较的办法来判断是否为整数,然后再把数组的值转换成一个int型的常量进行运算!!
2006-08-08 14:06
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
dou xie de shen m luan qi ba zao de, wo di er ci hai shu ru zi fu zen m ban??????

日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-08-08 15:10
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 
#include <setjmp.h>
#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>

jmp_buf env;

int main(void)
{
char a, b;
int sum;

if (setjmp(env) != 0) {
printf("Enter a and b: \n");
getchar();
}

scanf("%c %c", &a, &b);

if (!isdigit(a) || !isdigit(b))
longjmp(env, 1);

sum = (a - '0') + (b - '0');
printf("sum = %d\n", sum);

exit(0);
}


日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-08-08 15:20
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
#include<stdio.h>
int main()
{
int sum=0;
char a, b;
printf("请输入两个字符:\n");
scanf("%c%c",&a,&b);
while (!(a>='0'&&a<='9'&&b>='0'&&b<='9'))
{
printf("请输入两个整数:\n");
scanf("%c%c",&a,&b);
}
sum=a+b;
printf("sum=%d\n",sum);
return(0);
}

倚天照海花无数,流水高山心自知。
2006-08-09 23:22
shuaiye
Rank: 1
等 级:新手上路
帖 子:445
专家分:0
注 册:2006-5-15
收藏
得分:0 
#include <stdio.h>
int main (void)
{
int a,b;
while (1)
{
printf ("enter two numbers\n");
if (2==scanf ("%d%d",&a,&b))
break;
else
fflush(stdin);
continue ;
}
printf ("%d+%d=%d\n",a,b,a+b);
return 0;
}

由于工作,N久都没来了!
2006-08-10 17:52
快速回复:看看这个题如何做
数据加载中...
 
   



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

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