C 如何打印while循环期间、while循环之后插入的数据?

C 如何打印while循环期间、while循环之后插入的数据?,c,C,基本上,我希望能够打印用户在while循环期间输入的数据,在while循环之后。我如何实现这一点 (程序的工作原理是,用户登录系统并添加一系列详细信息,然后询问他们是否希望继续(如果他们输入“是”,程序将继续,否则将返回登录屏幕)。我想打印用户选择继续后输入的信息) #包括 #包括 #包括 内部主(空){ char-ans[10]; 做 { 字符用户名[6]; 字符密码[6]; bool valid=false; while(!valid){ printf(“提供用户名:\n”); scanf(

基本上,我希望能够打印用户在while循环期间输入的数据,在while循环之后。我如何实现这一点

(程序的工作原理是,用户登录系统并添加一系列详细信息,然后询问他们是否希望继续(如果他们输入“是”,程序将继续,否则将返回登录屏幕)。我想打印用户选择继续后输入的信息)

#包括
#包括
#包括
内部主(空){
char-ans[10];
做
{
字符用户名[6];
字符密码[6];
bool valid=false;
while(!valid){
printf(“提供用户名:\n”);
scanf(“%s”,用户名(&s));
printf(“给出密码:\n”);
scanf(“%s”和密码);
if(strcmp(用户名,“user1”)==0&&strcmp(密码,“2020”)==0){
有效=真;
}
else if(strcmp(用户名,“u”)==0&&strcmp(密码,“2020c”)==0){//检查用户的
valid=true;登录信息为
}正确的
否则{
有效=错误;
}
}
//一堆代码//
printf(“给出名称:\n”);
scanf(“%s”,名称);
printf(“给出姓氏:\n”);//在循环结束后我要打印的信息
scanf(“%s”,姓氏);
printf(“给出年龄:\n”);
scanf(“%d”和年龄);
printf(“您想参保吗?\n”);
scanf(“%s”,ans);
系统(“cls”);
}while(!(strcmp(ans,“yes”)==0));//仅当用户输入“yes”时才允许程序继续
//在这里打印所说的信息

你应该在while循环之前定义那些你想在循环外部使用的变量,然后在循环内部设置值。

我担心这个注释听起来会很“乏味”,但只需在你想执行的地方添加你想执行的代码行(就像在大多数编程语言中一样…)。我试图猜测您可能遇到的问题,因为我希望假设您已经尝试过:您需要在“范围”中声明相关变量,因此在这种情况下,
姓氏
需要在循环之外声明,即在整个函数中可见,而不仅仅在循环中可见(看起来,
用户名
密码
@Pac0的情况非常感谢。我意识到我的问题现在听起来有多愚蠢,我不知道为什么我没有想到这一点。@ArMANIAK谢谢你的解决方案。@philipnasus你有一些错误,但我认为你可以解决它们!就像一些变量note声明和你的scanfs,以及e是您的姓名/姓氏/年龄变量等
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdbool.h>
 int main(void){

 char ans[10];

do
{
  char username[6];
  char password[6];

  bool valid = false;
  while(!valid) {
   printf("give username: \n");
   scanf("%s",&username);
   printf("give password: \n");
   scanf("%s", &password);
   if( strcmp(username, "user1") == 0 && strcmp(password, "2020") == 0 ) {
      valid = true;
   }
   else if( strcmp(username, "u") == 0 && strcmp(password, "2020c") == 0 ) { // checking if user's 
      valid = true;                                                             log in info is 
   }                                                                            correct
   else {                                                                      
      valid = false; 
   }
}

// bunch of code//

printf("give name: \n");
scanf("%s", name);
printf("give surname: \n");  //info I want to print after while loop bellow ends
scanf("%s", surname);
printf("give age: \n");
scanf("%d", &age);

printf("do you wish to contrinue?\n");
scanf("%s",ans);
system("cls");

}while(!(strcmp(ans,"yes") == 0)); // lets the program continue only if user inputs "yes"

//print said info here