关键词:
【中文标题】如何删除最后一个数字中的逗号?【英文标题】:How to remove the comma in the last number? 【发布时间】:2021-12-30 15:31:42 【问题描述】:列表必须显示“1,2,3,4”,但在这段代码中显示为“1,,2,,,3,,,4” 这段代码有什么问题?
for (i = 1; i <= num1; ++i)
if(num1 % i == 0)
printf("%d",i);
if(i<num1)
printf(",");
【问题讨论】:
【参考方案1】:只有在打印数字时才需要打印逗号,所以把它放在同一个if
中。
for(i = 1; i <= num1; ++i)
if(num1 % i == 0)
printf("%d",i);
if(i<num1)
printf(",");
【讨论】:
成功了。非常感谢!! 请不要只写代码答案。解释问题的原因以及应该如何解决。我们不是调试服务。【参考方案2】:问题是您正在打印,
,即使是未通过检查的数字
固定:
for (i = 1; i <= num1; ++i)
if (num1 % i == 0)
printf("%d", i);
if (i < num1)
printf(",");
printf("\n");
以上依赖于通过检查的最后一个元素。因为是这样,所以可以简化为:
for (i = 1; i < num1; ++i)
if (num1 % i == 0)
printf("%d,", i);
printf("%d\n", num1);
但是,一般来说,您不能依赖最后一个通过检查的数字。以下是一种更通用的方法,不依赖于通过检查的最后一个数字:
const char *prefix = "";
for (i = 1; i <= num1; ++i)
if (num1 % i == 0)
printf("%s%d", prefix, i);
prefix = ",";
printf("\n");
【讨论】:
【参考方案3】:或者比上面更有效:
for (i = 1; i < num1; ++i)
if (num1 % i == 0)
printf("%d,",i);
printf("%d",num1);
换句话说:
-
无需在每次迭代时检查
i < num1
上次迭代时无需检查num1 % i == 0
【讨论】:
【参考方案4】:为了避免 if
或条件运算符 (?:
),我通常只打印循环外的第一项
printf("1"); // 1
for (i = 2; i <= num1; ++i) // note: start at 2
if (num1 % i == 0)
printf(", %d", i); // , 2, 3, 4, ..., n
printf("\n"); // newline
【讨论】:
【参考方案5】:这是一个非常简短的版本,使用三元运算符:
#include <stdio.h>
int main(void)
int num1=24;
for (int i = 1; i <= num1; ++i)
printf((num1%i)? "": "%d%s", i, (i<num1)? "," : "");
return 0;
输出:
Success #stdin #stdout 0s 5660KB
1,2,3,4,6,8,12,24
【讨论】:
致破坏我答案的人,称其为条件运算符。不,它被称为三元运算符 (syntaxdb.com/ref/c/…) alternate 名称是“三元条件”运算符。 “条件运算符”是它的简写俚语。 就像你不可靠的来源一样,你错了。它被称为conditional operator。它是a三元运算符,是C语言的only三元运算符,但它被称为条件运算符。将其称为三元运算符就像将加法称为二元运算符。 无论如何,编辑的目的是使代码更具可读性,因为您必须滚动才能看到它。我刚刚解决了这个问题,因为我已经解决了你的答案的问题。否则我不会更改它,因为它被广泛称为三元运算符,即使这不是它的名字。但修复错误不会造成破坏。 抱歉,该链接是针对 C++ 的。 Correct link。和from the actual C spec。 (好吧,它的草稿很晚。)如何删除for循环中的最后一个逗号
】如何删除for循环中的最后一个逗号【英文标题】:Howtoremovethelastcommainforloop【发布时间】:2017-12-0503:10:12【问题描述】:`<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><m 查看详情
如何删除 D3 轴刻度中的逗号并删除最后一个刻度?
】如何删除D3轴刻度中的逗号并删除最后一个刻度?【英文标题】:HowtoremovethecommainD3axisticksandremovethelasttick?【发布时间】:2017-02-1522:39:44【问题描述】:我正在使用D3创建条形图。如何使用tickFormat()从每个刻度线中删除1982年的\'... 查看详情
如何删除数组中的最后一个逗号和空格? Java [重复]
】如何删除数组中的最后一个逗号和空格?Java[重复]【英文标题】:Howtoremovelastcommaandspaceinarray?Java[duplicate]【发布时间】:2017-09-0821:20:51【问题描述】:伙计们,我想知道如何从数组中删除多余的逗号和空格?当我运行程序时,... 查看详情
如何删除最后一个逗号?[重复](代码片段)
这个问题在这里已有答案: HowcanIremovethelastcommafromaloopinC++inasimpleway?6个答案 Removingacommafromac++output2回答 程序显示数字列表。例如:1,3,5,3,4,3,我需要像这样:1,3,5,3,4,3我尝试了if/else声明,但它没有好处。s.p 查看详情
如何删除最后一个字符(从数组创建字符串时的逗号)? [复制]
】如何删除最后一个字符(从数组创建字符串时的逗号)?[复制]【英文标题】:Howtoremovelastcharacter(commawhencreatingastringfromanarray)?[duplicate]【发布时间】:2015-11-0103:25:29【问题描述】:我正在尝试删除此代码输出中的最后一个字符... 查看详情
如何删除javascript数组的最后一个逗号
】如何删除javascript数组的最后一个逗号【英文标题】:Howtoremovelastcommaofajavascriptarray【发布时间】:2016-09-2616:47:51【问题描述】:我已经找到了很多关于如何删除javascript字符串的最后一个逗号等的答案,但我无处可找到解决以... 查看详情
如何删除字符串中的逗号
】如何删除字符串中的逗号【英文标题】:howtoremoveacommainastring【发布时间】:2012-08-1608:13:50【问题描述】:我有一个字符串,它显示带有逗号分隔符的数字,如下所示:DecimalFormatformatter=newDecimalFormat("#,###.000000");StringtoDouble=forma... 查看详情
php删除字符串中的最后一个逗号(代码片段)
如何从输出中删除最后一个逗号
】如何从输出中删除最后一个逗号【英文标题】:HowdoIremovethelastcommafromtheoutput【发布时间】:2021-10-0105:30:46【问题描述】:n=3result=[[1,2,3],[4,5,6],[7,8,9]]foriinrange(n):forjinrange(n):print(result[i][j],end=\',\')print()输出:1,2,3,4,5,6,7,8,9,我得到... 查看详情
如何删除最后出现的逗号,逗号本身可能不是sql中string的最后一个字符(代码片段)
表结构如下:-mysql>select*fromformjson;+----+---------------------------------------------------------+|id|jsonData|+----+---------------------------------------------------------+|1|"721005":"NO","7209 查看详情
jQuery从数组中删除最后一个逗号
...但我希望最后一个重复的项目被去掉逗号。有人可以建议如何从最后一个重复的项目中删除逗号。提前非常感谢!<scripttype="text/javascript">$("#gal 查看详情
删除foreach最后一个逗号PHP [重复]
...aPHP[duplicate]【发布时间】:2016-06-0819:24:33【问题描述】:如何从foreach()循环的输出中删除最后一个逗号?谁能帮我修改这段代码。$sth=$dbh->query(\'SELECT*FROM`stage5`ORDERBY`stage5`.`lenght`DESC\');$sth->se 查看详情
在 JavaScript 中删除最后一个逗号之前的文本
...过自动完成附加的。我当然希望\'bun\'被兔子取代。那么如何删除最后一个逗号之前的文本但保留其他所有内容?所以字符串会是“cats,dogs,bu 查看详情
如何在 array.map 中的每个元素之后添加逗号,除了 React JSX 中的最后一个元素
】如何在array.map中的每个元素之后添加逗号,除了ReactJSX中的最后一个元素【英文标题】:Howtoaddacommainarray.mapaftereveryelementexceptlastelementinReactJSX【发布时间】:2018-06-0113:57:00【问题描述】:如何在数组的每个元素之后添加一个尾... 查看详情
如何从 .tpl 文件中动态出现的数字中删除逗号
】如何从.tpl文件中动态出现的数字中删除逗号【英文标题】:Howtoremovecommafromnumberwhichcomesdynamicallyin.tplfile【发布时间】:2012-09-2405:18:48【问题描述】:我想从.tpl文件中的数字中删除逗号(例如将1,125更改为1125)。该值像$var... 查看详情
如何使用php用“and”替换字符串中的最后一个逗号?
】如何使用php用“and”替换字符串中的最后一个逗号?【英文标题】:Howtoreplacelastcommainstringwith"and"usingphp?【发布时间】:2017-06-0509:35:25【问题描述】:我正在尝试使用strrchr()和str_replace()将文本中最后出现的逗号替换为... 查看详情
使用javascript删除字符串中最后出现的逗号
...它测试,文本,123没有最后一个逗号(123后没有逗号)。如何使用javasctipt实现这一点?【问题讨论】:【参考方案1】:str.replace(/,(?=[^ 查看详情
十进制逗号删除并将逗号添加到javascript中的大数字
】十进制逗号删除并将逗号添加到javascript中的大数字【英文标题】:decimalcommaremoveandaddcommatobignumberinjavascript【发布时间】:2020-09-1106:42:59【问题描述】:我想删除结果值中的小数逗号,并以逗号作为千位分隔符打印数字。这是... 查看详情