- 论坛徽章:
- 0
|
原帖由 77902543 于 2006-5-13 09:47 发表
我也是新手……把程序稍微修改一下:
#include <stdio.h>
#include <string.h>
int main(void){
int *i,*p,*q,*tmp;
printf("Please input three numbers:");
...
My God! 我刚才不是在楼上说了吗? 指针使用前得初始化!!!你这儿的三个整形指针i,p,q初始化了吗? 没有!再说,对于整形你这儿也不需要指针类型。还有,函数strcmp是对字符串类型进行比较的,你用它来比较指针变量(按你的想法应该是整形变量)干吗?回去好好看书吧,把基础学好了!
帮你改一下代码中的错误吧
- #include <stdio.h>
- #include <string.h>
- int main(void){
- int i,p,q,tmp;
- printf("Please input three numbers:");
- scanf("%d%d%d",&i,&p,&q); //scanf函数要求传变量的地址,所以用&取变量的地址
- printf("%d %d %d\n",i,p,q);
- if(i>p){
- tmp=i;
- i=p;
- p=tmp;
- }
- printf("%d %d %d\n",i,p,q);
- if(p>q){
- tmp=p;
- p=q;
- q=tmp;
- }
- printf("%d %d %d\n",i,p,q);
- if(i>p){
- tmp=i;
- i=p;
- p=tmp;
- }
- printf("The result is: %d < %d < %d \n",i,p,q);
- }
复制代码
[ 本帖最后由 tyc611 于 2006-5-13 11:05 编辑 ] |
|