VC++的问题~

#include <stdio.h>
void main(void)
{
int x,y,k=10;
x=k++;
y=++k;
printf("k=%d,x=%d,y=%d\n",k,x,y);
k=10;
x=k--;
y=--k;
printf("k=%d,x=%d,y=%d\n",k,x,y);
}
1 ++k跟k++有什么区别?
2 int定义常量跟变量都可以吗?k=10是常量吧?
3 %d的具体含义?
4 运行后为什么k的数值变了x却不变??
5 void什么含义??

1 ++k跟k++有什么区别?
答 : ++k 是先 让k自身加1 ,然后将 加1后的值 给 y
k++ 是先取 k的值给 x,然后在把k 加 1
k-- ,--k语法 通上,只是 减一
2 int跟变量都可以吗?k=10是常量吧?
int 定义的全是变量,没有常量,int k=10;只是 初始化k=10;
跟 int k; k=10; 这两句 没有任何区别。
3 %d的具体含义 ,
常见与 输出语句 %d 的意思 是 按照 整形 输出,与 int 对应,其次 还有%l 与long 对应,%c 与 char 对应, %s 与 “字符串” 或 char[] 对应
如 printf("k=%d,x=%d,y=%d\n",k,x,y); 中的 第一个%d 是让k的值填充,第二个%d 是让x值填充,,类推
4运行后为什么k的数值变了x却不变??
因为k经过了一系列的自加运算 自减 运算, 值就会变了
5void什么含义??
void 就是空的,一般 在 修饰一个没有返回值函数 的时候使用,也就是没有return 语句的时候使用,如果 一个函数 return 一个 int 类型,那么 这个函数必须用 int 来修饰,特别是有些 开发软件 ,如果不没有返回值,又 不用修饰 语句 就会报错。如果 你的 函数 前面 使用了 非 void 修饰 ,那么 必须 在 函数能到达的结尾处 加上 return 语句,return 后面跟一个 与修饰词 一致 的 常量 或 变量。如
int main()
{
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-03-14
1、++k跟k++分别是前缀自增和后缀自增的表示法。x=k++的意思是先把k的值赋值给x,然后k在自增1(就是k=k+1),而y=++k是先给k自增1,然后把k的值赋值给y。对于你这个程序,'x=k++; y=++k; " 执行完后,x=10,而y=12.--K和K--类似,不过是自减1.

2、int定义常量跟变量都可以。不过定义常量还需要加关键字const,即
const int k=10;
const是常量定义的关键字,int是变量类型,像double,char都是变量类型,都可以定义变量。

3、“%d的具体含义”,这是c语言的输入表示,%相当于分隔符,d表示变量类型,%前面的内容是能够在dos窗口输出的内容。

4、(参见1的回答)

5、“void”是函数的返回值类型,也可以是int,double等。void表示该函数没有返回值,所以你的main函数就没有return。
第2个回答  2010-03-14
1 若k=1; 则{a=k++; a=1;} {a=++k; a=2;}

2 int k=10 不是常量 常量是这样定义的const int k=10;

若定义 int k; 当你学过类的时候你就会明白; 它会自动调用构造函数,会给它一个初始值 一般情况下是0;不信你这样int k; cout<<k<<endl; 像这样 int k=10; 是调用含参数的构造函数, 将10赋值给k;
3 %c 代表字符串类型, 任意字符均为合法字符; %d代表10进制表示格式带整数类型, 合法字符为+ - 0-9;这些都是C/C++为了处理各种内部类型数据而定义的格式符;是C/C++的格式化缓冲输入输出常用的格式符。详细一点请到这里看 http://hi.baidu.com/scnu_08/blog/item/312d37f866b3bd1d6d22ebfc.html

4 (1楼)因为k--和--k使k改变了,x没变是应为都是直接把k=10赋给x的

5 不需要返回参数的时候就用void类型 比如 我要定义一个没有返回值的函数就这样定义 void fun(){ cout<<"abc"<<endl;} 在主函数调用的时候就直接fun();就行了。。
感谢支持
第3个回答  2010-03-14
1、k++ 和 ++k对k值影响是一样的,都是值加了1,但是返回值不一样,前者返回k,后者返回(k+1)
2、k是变量,10是常量,这是将k初始化为常量10
3、%d 是c语言格式化整形数
4、见(1)
5、void是空类型,在没有参数时才使用
第4个回答  2010-03-14
1.++k是先加1在使用,k++是先使用再加1
2。当然都可以了,k=10,是变量,那只是复初值
3。输出一个整形
4。因为k--和--k使k改变了,x没变是应为都是直接把k=10赋给x的
5。表示最后他没有返回值