cs50

    -1热度

    1回答

    我正在解决cs50课程的贪婪算法,而不使用cs50头文件。我写了一个代码。它可以很好地处理数字作为输入,但是当我给它一个字符串或字母作为输入时,它不会提示我回来。我不知道如何解决这个问题。 #include <stdio.h> int main() { float c; int C, nQ, rem1, nD, rem2, nN, rem3; do { printf("O

    2热度

    1回答

    我想在C中实现Vigenere的密码,但问题是,当我尝试重复使用它在数组中使用的密钥时,它会在第四个字母后中断。所以如果密钥是ABC并且明文是HELLO,它将返回HFNLO而不是HFNLP。当我查看我的代码时,它逻辑上是有道理的,但它似乎不起作用。有人可以看到这个问题吗? 下面是代码: int main(int argc, string argv[]) { if(argc != 2)

    1热度

    4回答

    因此,我目前正在学习C与CS50,我目前正在从pset1做greedy problem,这个程序的目的是向用户输出他将为他所欠的变化而收到的最少数量的硬币:例如如果他获得32美分的变化,他将获得1个季度,1个镍和2个便士,总共4个硬币。在使用模函数来计算我继续收到错误的硬币之后,我一直在计算他将接收到的硬币数量时遇到了一些麻烦:对二进制表达式的无效操作数('double'和'double')我不知

    0热度

    1回答

    编写此代码以使用TRIE数据结构在字典中搜索单词。这段代码在使用make(Clang)和GCC的CS50 IDE编译器上完美运行,并始终给出正确的答案,但是当我在GCC编译器(TDM-GCC)上运行相同的代码时,它会进入无限循环。它开始使用大量的RAM(512 MB直到我强制关闭它)。我所运行的代码在两种情况下都完全相同。同样在这两种情况下,代码完美编译。 #include <stdio.h>

    1热度

    1回答

    我的凯撒代码有些问题。 1)我不知道如何检查一个字符是否是标点符号并且没有总和打印。 2)在同一行上打印字符,但完成后返回一个换行符。 3)通过字母大数字迭代返回给我一个标点符号,我该怎么做才能返回一个字符? import sys import string def main(): if len(sys.argv) != 2: print("Usage: caesar

    -2热度

    2回答

    我刚开始编程,所以我知道这可能是一个很基本的错误,但我一直在试图找出如何在我的代码修复逻辑错误对哈佛大学CS50课程的greedy.c作业没有成功。我已经寻找解决问题的办法,但他们似乎都以不同于我尝试的方式解决问题。我已经反向设计了其他例子,现在我明白了,但我真的想知道如何让自己的版本运行良好。 我想获得的一系列while循环,每个减去应付总有一定的硬币值完成的问题,并增加一个硬币总硬币计数。对我

    1热度

    3回答

    问题:http://docs.cs50.net/problems/initials/more/initials.html 正如我在标题中所说的,如果用户在名称前输入额外的空格,或者在名字和姓氏之间输入了额外的空格,我似乎无法让程序输出没有空格的首字母。 现在,它只有在输入我的名字时才起作用:First Last在名称前没有空格,两个单词之间只有一个空格。它将打印出FL没有任何额外的空间。我希望它能

    0热度

    2回答

    upd。所以我刚刚意识到这实际上是非常愚蠢的想法,因为,据我所知,没有办法将负面的“飞越”数字转换为字符串,除非以某种方式禁止编译器在数字前显示“ - ”。 这是我的第一条消息,请原谅我是否有什么问题。 因此,从第1周的演讲中得到了这个基本代码。 int main(void) { int n = 1; for (int i = 0; i < 64; i++) {

    -2热度

    1回答

    我的代码怎么不打印int叫coins? 运行调试系统时看不到任何错误。 #include <cs50.h> #include <stdio.h> int main(void) { // getting the user validation printf("please enter a amount of change \n"); int change = get_i

    -2热度

    1回答

    当我运行make时,我得到一个没有文件类型的文件。有没有办法创建一个.exe文件,我可以在Windows中单击运行? 我安装我的主目录: sudo apt-get install mingw-w64 但是当我从〜/工作区运行/ pset2 /的V @ genere: i686-w64-mingw32-gcc -o vigenere.exe vigenere.c 我得到: vigenere.