我尝试编写代码来计算给定数组中不同唯一元素的数量,但得到了不需要的输出。{ 2, 7, 5, 8, 9, 5, 7, 5, 5, 3}这是给定的数组元素。不同的唯一值{ 2, 8, 9, 3}意味着有 4 个。但我的程序返回 6: { 2, 5, 8, 9, 7, 3}
这是我的代码:
#include <stdio.h>
#include <stdlib.h>
int unique(int *arr, int n)
{
int u = 1;
for (int i = 1; i < n; ++i)
{
int is_u = 1;
for (int j = 0; is_u && j < i; ++j)
{
if (arr[j] == arr[i]) is_u = 0;
}
if (is_u) …Run Code Online (Sandbox Code Playgroud) 函数指针是否会影响程序的运行时间?
int (*fptr1)(int);
int square(int num) {
return num*num;
}
int main()
{
int n = 5;
fptr1 = square;
printf("%d squared is %d\n",n, fptr1(n));
return 0;
}
Run Code Online (Sandbox Code Playgroud)