问:c语言数组查重的问题,题目如图?
- 答:
#include <stdio.h>
void main(){
int i,j,t,n,a[1000];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[j]<a[i])
{t=a[i];a[i]=a[j];a[j]=t;}
for(i=0;i<n-1;i++)
if(a[i+1]==a[i])
{
for(j=i+1;j<n;j++)
a[j]=a[j+1];
i--;n--;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
}运行示例:
问:C语言 橘色框内的代码看不懂了T_T求大神解释他为什么这样做?
- 答:图片有点模糊,看意图是要分子分母化简。我的第一个想法就是辗转相除法,即求得分子分母的最大公约数之后,用它化简分式,你可验证一下是不是我这样的思路
问:我现在需要用写的C++的程序,功能是能查重C语言的代码。?
就是一种有反抄袭功能的代码,当两段C语言代码相同或相近时,可以看到,重复率。一经采用,肯定加分。望各位高手指教
- 答:哇。。老师专用啊。。
直接用BeyondCompare好了,还编个程序。。。如果这是作业,腹黑呀,哈哈
就是一个文本比较算法吧,按行读取,如果出现空行,跳过,非空行比较近似度。其实做复杂了挺不容易的,你参考一下我说的这个软件功能就知道了,做好了对智能程度要求很高。 - 答:这个够你做好几年,我们研究这个快十几年了。
最简单的就是二进制比较,具体算法不方便告诉你,人家的版权。
问:c语言中如何看出一个人的编程是从另一个人那抄来的?
- 答:大概是思路一样,变量名一样,变量名思路一样,注释一样,格式一样。之类的吧。反正你说巧了,也还真可能是巧了。
答:可以使用antiplag 网页链接,来对c/c++,java,python等代码查重。查重的原理基本是文本相似度比较,不过对程序代码,一般会进行语法解析后,再比较。
- 答:不可能把, c 语言程序还没有上升到艺术品的地步