数组\用数组做散列计算——一点小疑惑

简介: 数组\用数组做散列计算——一点小疑惑

在用使用循环的过程中,我发现输入值对于字母的输入很难判断并给予合适的返回

比如下面的代码(虽然进行了一定程度的改进),允许一次误触,但之后再输入字母还是会死循环,最后强制退出

我尝试了清空缓存区,但效果不大(难道是我的姿势不对?)

希望有好心的大佬看到以后指点一下【狗头】

#include<stdlib.h>
#include<stdio.h>
 
int main()
{
  const int num=10; //必须是常量,否则报错
  int x,i=0;
  int count[num];   //定义的常量在这使用 //定义数组
  for(int i=0;i<num;i++)
  {
    count[i]=0;     //初始化数组
  }
  printf("###误触字母一次可以,别瞎敲谢谢###\n");
  printf("请输入:");
  scanf("%d",&x);
  while(x!=-1)
  {
    if(x>=0 && x<=9)
    {
      count[x]++;
      printf("请输入:");
      scanf("%d",&x);
    }
    else
    {
      fflush(stdin);
      //对输入流进行清空缓存区,这样就能输入字母后再次返回
      printf("请重新输入:");
      scanf("%d",&x);
    }
    fflush(stdin);  //这里再清空一次
    int x=NULL;
  }
  for(i=0;i<num;i++)
    printf("%d:%d\n",i,count[i]);
 
  system("pause");
  return 0;
}


目录
相关文章
|
4月前
|
存储 算法 Java
深入算法基础二分查找数组
文章深入学习了二分查找算法的基础,通过实战例子详细解释了算法的逻辑流程,强调了确定合法搜索边界的重要性,并提供了Java语言的代码实现。
深入算法基础二分查找数组
|
6月前
力扣随机一题 哈希表 排序 数组
力扣随机一题 哈希表 排序 数组
38 1
|
7月前
|
算法 程序员 测试技术
【数据结构-哈希表 一】【原地哈希】:缺失的第一个正整数
【数据结构-哈希表 一】【原地哈希】:缺失的第一个正整数
89 0
|
7月前
[leetcode] 705. 设计哈希集合
[leetcode] 705. 设计哈希集合
|
7月前
|
存储 算法
算法系列--动态规划--⼦数组、⼦串系列(数组中连续的⼀段)(1)(下)
算法系列--动态规划--⼦数组、⼦串系列(数组中连续的⼀段)(1)
38 0
|
7月前
|
算法
算法系列--动态规划--⼦数组、⼦串系列(数组中连续的⼀段)(1)(上)
算法系列--动态规划--⼦数组、⼦串系列(数组中连续的⼀段)(1)
45 0
|
7月前
|
算法 索引
LeetCode刷题--- 138. 复制带随机指针的链表(哈希表+迭代)
LeetCode刷题--- 138. 复制带随机指针的链表(哈希表+迭代)
|
7月前
|
算法 Java Go
【数据结构和算法】判断子序列
给定字符串s和t,判断s是否为t的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。 进阶: 如果有大量输入的 S,称作 S1, S2, ... , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?
105 3
|
7月前
|
存储 算法 Java
数据结构和算法面试题:给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
数据结构和算法面试题:给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
94 0
|
7月前
|
人工智能
LeetCode刷题Day07——哈希表(n数之和、数组交集)
常见的三种哈希结构: 数组 set(集合) map(映射) 数组对于那些知道长度的题目比较适宜,因为map的空间消耗要比数组的大,所以有的时候用数组更贱简单有效。但是数组的大小是有限的,受到系统栈空间(不是数据结构的栈)的限制。如果数组空间够大,但哈希值比较少、特别分散、跨度非常大,使用数组就造成空间的极大浪费,这时候可以考虑采用set。set是一个集合,里面放的元素只能是一个key,而有的题目还需要记录一些额外的信息,如下标或出现次数,这时候可以考虑用map。