我是C新手,一般编码,请耐心等待。如何用c中的用户的char值填充数组?
我试图创建一个“键盘测试”程序,其中用户必须通过在每个元件输入1个字符的值填充的阵列。然后数组的内容将被排序,printf
将显示哪个按键被按下最多(根据每个字符使用了多少个按键)。我已经研究了两天无果(大多数解决方案都是针对C++的,而不是C)。我在Visual Studios工作。以下是我迄今为止:
#define _CRT_SECURE_NO_WARNINGS
#define PAUSE system("pause")
#define CLS system ("cls")
#define FLUSH flush()
#define MAXELEMENTS 25
#include <stdio.h>
#include <stdlib.h>
// prototyped functions
int pressKeys(char keys);
main() {
char keys[MAXELEMENTS];
int x;
pressKeys(&keys[MAXELEMENTS]);
PAUSE;
}
// functions
int pressKeys(char keys) {
printf("Enter characters: \n");
scanf("%c", &keys); FLUSH;
printf("You typed: %c\n", keys);
return(0);
}
这个程序的输出似乎是第一个字符我输入了,所以它的部分工作,但它只能说明是什么键[0]。
如何获得它来存储所有类型的?
如何获得printf输出完整的数组?
然后,我会如何将数组传递给将对元素中的内容进行排序的函数?
(至于论点主,函数声明去)。
出于好奇,你有什么不利用C++来做这件事吗?你在学习特定的C语言程序课程,还是在学习续集之前试图学习原版? – Goodies
顺便说一句'&keys [MAXELEMENTS]'是最后一个元素的地址。 (并且它不使用:-) – BLUEPIXY
用户是否在其他键之间键入了输入键,在输入结束还是根本不输入? – chux