| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1059 人关注过本帖
标题:控制使输入的数必需在1-35的范围,其他无法输入
只看楼主 加入收藏
h978147355
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:63
专家分:187
注 册:2009-12-29
收藏
得分:0 
我C学的不是很好  先这样吧  你再看看怎么改
输入一个在1到35之间的数字  按回车结束输入;
#include<stdio.h>
#include <conio.h>
void main()
{
char i='a',j='a',enter='a';
int number;
printf("please press a number between 1 and 35\n");
 while(i<'0'||i>'9')
   i=getch();
printf("%c",i);
 if(i>'3')
  { while(enter!=13)
     {printf("\a");
     enter=getch();
     }
    number=i-48;
  }
 else
 {while(j<'0'||j>'9'||(i-48)*10+(j-48)>35)
   j=getch();
   putchar(j);
   while(enter!=13)
   enter=getch();
   number=(i-48)*10+(j-48);
 }
printf("\n%d",number);
getchar();
}
2010-01-07 22:01
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
#include<stdio.h>
#include<ctype.h>//字符判别和转换函数
main()
{
    char x[2];
    int i,j;

    printf("please press a number between 1 and 35\n");
    gets(x);
    i=isdigit(x[0]);//isdigit函数包含在#include<ctype.h>,是数字是返回个大于零的整数
    j=atoi(x);//atoi函数包含在#include<ctype.h>,将字符串转换成整数。
    if(i!=0&&j>0&&j<36)
        printf("输入正确。输入的数字是:%d",j);
    else
        printf("输入的是字符或者数字超出范围了。");   
}


[ 本帖最后由 jiangwu10057 于 2010-1-7 22:39 编辑 ]
2010-01-07 22:27
yinfuyong
Rank: 2
等 级:论坛游民
帖 子:35
专家分:45
注 册:2009-10-31
收藏
得分:0 
c 里有几个函数
头文件好像是ctype.h
======================
isdigit()//十进制数字,但是只能是0~9,你自己想想怎么改进
isxdigit()//十六进制数字
2010-01-08 10:10
树上月
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:114
专家分:154
注 册:2010-1-6
收藏
得分:0 
#include<stdio.h>
int main()
{
    int i,j=0,n,a[80],b[80];
    printf("Enter n:");
    scanf("%d",&n);
    printf("请输入n个数字:");
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(i=0;i<n;i++){
        if(a[i]<=35&&a[i]>=1){
            b[j]=a[i];
            j++;
        }
    }
    n=j;
    for(j=0;j<n;j++)
        printf("%4d",b[j]);
    return 0;
}

每一个不曾起舞的日子,都是对未来的一种辜负......
2010-01-08 21:04
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
回复 14楼 树上月
#include<stdio.h>
main()
{
    int i,j;

    printf("请输入1个需判断的数字:");
    j=scanf("%d",&i);//1.scanf()函数有返回值且为int型。
                    //2.scanf()函数返回的值为:正确按指定格式输入变量的个数;也即能正确接收到值的变量个数。
    if(j!=0)
    {
        if(i<=35&&i>=1)
            printf("%4d",i);
    }
    else
        printf("input error!");
}
把你的化简了·
2010-01-09 12:01
快速回复:控制使输入的数必需在1-35的范围,其他无法输入
数据加载中...
 
   



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

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