2015-05-10 182 views
1

我是一个初学者与没有这么好老师,并试图搞清楚这些事情对我自己......你如何改变c中的另一个变量的变量?

#include<stdio.h> 
#include<conio.h> 

int n,x,c,a; 
main() 
{ 
    scanf("%d",&n); 
    do 
    { 
     scanf("%d",&x); 
     a=x; 
     c++; 
    } 
    while(c!=n); 
    printf("%d",a); 

} 
在这段代码

,我想知道是否有可能改变的“a”在可以说'b'然后'c',然后'd'....我想将scanf("%d",&x);中的不同值存储在不同的变量中。 例如,如果我输入值,1,2,3,4,我想输出为A = 1,B = 2,C = 3,d = 4

感谢帮助

+0

查找数组。查看'scanf'的手册页获取返回值。初始化变量 –

+0

使用未明确初始化的变量时要小心,例如'c'。它现在可以工作,因为全局变量是零初始化的,但是如果你把'c'作为一个局部变量,它将不被初始化,'c'将会有一个不确定的值,并且使用它未初始化会导致*未定义的行为。你真的应该让变量本地化,让全局变量被大多数人认为是一个很大的禁忌。 –

+0

感谢您的回应,虽然有一些概念你提到,我不明白(初学者...)。零初始化,未初始化,未定义的行为,全局变量。你愿意解释一下吗? (没关系,如果你不,谷歌和东西...) – Zugoldragon

回答

2

我强烈建议你使用数组,如果你的教授。将会好起来。 还有一个问题:你想打印吗?或改变..

#include<stdio.h> 
int main(){ 
    int n[4]; 
    int i; 

    for(i=0;i<4;i++){ 
     printf("Enter 4 numbers"); 
     scanf("%d",&n[i]); 
    } 
    for(i=0;i<4;i++){ 
     printf("%c = %d\n",(97+i),n[i]);  
    } 

} 
+2

而不是(97 + i)最好写'a'+ i –

相关问题