发布网友 发布时间:2024-10-23 19:09
共4个回答
热心网友 时间:2024-11-05 06:12
#include<stdio.h>
void main(){
int j,k;//应该有这个定义吧。
int t=j=k=0;
scanf("%d%*d%d%d",&t,&j,&k);//%*d是跳过输入的第二值,不存放进变量内存空间
printf("%d%d%d\n",t,j,k);}
所以,输入的第二值20不会被存放在J变量中,而是30存放在J中
热心网友 时间:2024-11-05 06:08
#include<stdio.h>
void main(){
int t=j=k=0;//此处等同于int t,j,k;t=0,j=0,k=0;
scanf("%d%*d%d%d",&t,&j,&k););//%*d是跳过输入的第二值,不存放进变量内存空间
printf("%d%d%d\n",t,j,k);}
所以输入10 20 30<回车>,10放在了t的地址,然后跳过20, 30放在j的地址,k还是0,
输出时没各个数没隔开,所以变成10300
热心网友 时间:2024-11-05 06:07
scanf("%d%*d%d%d",&t,&j,&k);////////////应该是这样scanf("%d%d%d",&t,&j,&k);
热心网友 时间:2024-11-05 06:13
以般不要用int t=j=k=0这种形式吧
上面两位已解释得很清楚了