Ive been experimenting, trying to get sfRenderWindow_drawCircleShape() to work,
it does work, but the function sfCircleShape_setOrigin() accepts coordinates that are scaled and negated.
eg.
#include <time.h>
#include <SFML/System.h>
#include <SFML/Graphics.h>
#include <SFML/Window.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main(void) {
#define SCREEN_HEIGHT 300
#define SCREEN_WIDTH 400
sfVideoMode mode = {SCREEN_WIDTH, SCREEN_HEIGHT, 32};
sfRenderWindow *window = sfRenderWindow_create(mode, "SFML window", sfResize | sfClose, NULL);
sfCircleShape *SelectedCircle = sfCircleShape_create();
sfVector2f scale;
scale.x = 1;
scale.y = 0.5;
sfCircleShape_setScale(SelectedCircle, scale);
sfVector2f origin;
origin.x = -150;
origin.y = -150;
sfCircleShape_setOrigin(SelectedCircle, origin);
sfCircleShape_setRadius(SelectedCircle, 100);
sfCircleShape_setFillColor(SelectedCircle, sfTransparent);
sfCircleShape_setOutlineColor(SelectedCircle, sfCyan);
sfCircleShape_setOutlineThickness(SelectedCircle, 5.0);
sfRenderWindow_clear (window, sfColor_fromRGB (255,255,255));
sfRenderWindow_drawCircleShape(window, SelectedCircle, NULL);
//sfCircleShape_destroy(SelectedCircle);
sfRenderWindow_display(window);
while (1) {}
}
produces something like the attached image.