gpt4 book ai didi

c - 程序求助!用户点击后进入程序结束

转载 作者:太空宇宙 更新时间:2023-11-04 07:11:12 24 4
gpt4 key购买 nike

好的,我正在编写一个程序,从用户那里读取两个字符,然后打印这两个字符之间的 ASCII 字母。问题是程序运行时会提示用户输入第一个字符,一旦用户点击回车,程序就会结束。我错过了什么?

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]){


char firstchar;
char secondchar;
int variable;
int highest;
int lowest;
char ASCIvariable;

printf("Please enter a character. ");
scanf("%d", &firstchar);

printf("Please enter another character. ");
scanf("%d", &secondchar);

if(firstchar < secondchar)
{
secondchar = highest;
firstchar = lowest;
}else{
firstchar = highest;
secondchar = lowest;
}

variable = lowest;

for ( variable != highest; variable < highest; variable++ )
{
variable = ASCIvariable;
printf(ASCIvariable);
}

return 0;
}

我显然也不明白如何在此站点上发布代码。我需要在每一行代码之前手动输入四个空格吗?


这里更新的是当前代码也控制 k 将不允许粘贴....

#include <stdio.h>
#include <stdlib.h>



int main(int argc, char *argv[]) {


char firstchar;
char secondchar;
int variable;
int highest;
int lowest;
char ASCIvariable;

printf("Please enter a character. ");
scanf(" %c", &firstchar);

printf("Please enter another character. ");
scanf(" %c", &secondchar);

if(firstchar < secondchar)
{
highest = secondchar;
lowest = firstchar;
}
else
{
highest = firstchar;
lowest = secondchar;
}

variable = lowest;


for (variable != highest; variable <= highest; variable++ )
{
ASCIvariable = variable;
printf("%c ", ASCIvariable);

}


return 0;
}

它成功地让用户输入了两个字符,然后打印了两个字符之间的字母。我认为这是正确的?

最佳答案

使用错误的格式说明符可能会导致 UB。你需要扫描一个字符

scanf("%c", &firstchar);

然后使用

刷新换行符
scanf(" %c",&secondchar);

%c 之前的空格占用换行符。

关于c - 程序求助!用户点击后进入程序结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28231383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com