c程序设计语言%是什么意思,C语言,程序是什么意思?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

解释如下:#include //包含头文件stdio

#define N 10 //宏定义遇到N的地方用10代替

main() //主函数

{

int i, p, q, t, id[N]; //定义int型变量i,p,q,t其中id[10]表示有10个元素的一维数组

for (i = 0; i < N; i++) //for循环由0开始循环10次

id[i] = i; //每次给数组id赋值0,1,2,3,4,5,6,7,8,9

while (scanf("%d %d\n", &p, &q) == 2) //while循环 这里搞不懂啥意思怎么会让scanf与2相等

{

if (id[p] == id[q]) //如果id[p]和id[q]相等

continue; //跳过后面的语句,重新执行下一次的while

for (t = id[p], i = 0; i < N; i++) //for循环 t=id[p],i=0,i<10 循环10次

if (id[i] == t) //如果id[i]等于t

id[i] = id[q]; //让id[i]等于id[q];

printf(" %d %d\n", p, q); //输出p和q的值

}

}提问者评价谢谢,scanf函数返回值等于2,说明两个输入参数正确都是正确(int),=1,1个,=0,0个

说明:程序是有问题的,while (scanf("%d %d\n", &p, &q) == 2) 应该改成 while (scanf("%d %d", &p, &q) == 2)才符合编程者意思,从程序看程序的意思是想把数组中所有与id[p]数值相等的数都替换成id[q]的内容。所以作用是“查找并全部替换”!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值