在c

时间:2016-10-26 03:28:08

标签: c

我有一个简短的程序,我希望用户输入一个大写字母,然后输入一个大写字母的第二个输入,它将是一个偏移量。然后程序根据偏移字母计算出新字母的值。问题是我的程序似乎只允许输入第一个字母。我假设这是因为返回键被视为第二个输入。我不确定如何克服这个问题。

任何人都可以提供建议。

以下是我的代码:

/*********************************************
*             ASCII CHARACTER PROG           *
**********************************************/

#include<stdio.h>

int main()
{
char ch1;
char offset;
int value = 0;

// USER ENTERS A CAPITAL LETTER
printf("please enter a capital character:  ");
ch1=getchar();
printf("\n");

// USER ASKED TO ENTER ANOTHER CAPITAL LETTER AS AN OFFSET 
printf("please enter a capital character as an offset:  ");
offset=getchar();
printf("\n");

//CALCULATES THE NEW LETTER VALUE BASED ON THE OFFSET
value = offset + (ch1 - 'A');

// ENSURES THE VALUE WILL STAY WITHIN 65 - 90
if (value > 90)
{
    value = value - 26;
}

printf("the value of the new character is: %d", value);
printf("\n");


return 0;
}

1 个答案:

答案 0 :(得分:0)

您可以使用

来使用换行符
ch1=getchar(); getchar();