问题分类 [C]

提问
29 问题

0

价值

1

答案

29

浏览

用C语言编译,跑起来,运行出错,请帮帮忙

以下是遍历一个数组,使用指针,但是报错...请帮忙看看是什么问题,特别是 变量  len 初始化是 3,后面会被无缘无故地修改??

请使用C编译器

#include <stdio.h>
#include <stdlib.h>

int main()
{
	int a[] = { 300, 100, 200 };
	int len = sizeof(a) / sizeof(i
C
ava
鱼む翅

2020-9-23

0

价值

2

答案

55

浏览

C语言蓝桥杯 - 跑步训练

/*问题描述:小明要做一个跑步训练。
初始时,小明充满体力,体力值计为 10000。如果小明跑步,每分钟损耗
600 的体力。如果小明休息,每分钟增加 300 的体力。体力的损耗和增加都是
均匀变化的。
小明打算跑一分钟、休息一分钟、再跑一分钟、再休息一分钟……如此循
环。如果某个时刻小明的体力到达 0,他就停止锻炼。
请问小明在多久后停止锻炼。为了使答案为整数,请以秒为单位输出答案。
答案中只填写数,不填写单位。编程求解。*/

答案是3880,而我的代码却是

ava
陳以卿

2020-9-9

0

价值

2

答案

64

浏览

C 语言蓝桥杯:在 1 至 2020 中,有多少个数的数位中包含数字 9?

【问题描述】在 1 至 2020 中,有多少个数的数位中包含数字 9?

注意,有的数中的数位中包含多个 9,这个数只算一次。
例如,1999 这个数包含数字 9,在计算只是算一个数。
编程求解。

我的错误代码如下

#include <stdio.h>

int main()
{
	int i = 1, y = 0, z = 0;
	for (i = 1; i <= 2020; i++)
	{
		while (i)
		{
			if (9 == i %
ava
陳以卿

2020-9-4

0

价值

1

答案

71

浏览

复制代码到新文件中报错了

char s[10];

InputBox(s, 10, _T("请输入票数"));
sscanf_s(s, "%d", &num);

drawtext(s, &R6, DT_CENTER | DT_VCENTER | DT_SINGLELINE);


错误(活动) E0304 没有与参数列表匹配的 重载函数 "drawtext" 实例 


错误(活动) E0167 "char *" 类型的实参与 "LPTSTR" 类型的形参不兼容 

在原来的文件中是没有错误的

ava
雷雨阵阵

2020-8-30

0

价值

1

答案

68

浏览

easyx相关函数

我想用easyx实现文本输入框和确认按钮但是我不知道easyx中有哪些相关函数,希望大佬们能贴一些实例代码

C

1

价值

1

答案

100

浏览

C如何获取剪贴板内的带格式内容?WPS为什么可以知道一段文字的格式信息?

WPS可以带格式粘贴,但是WPS是如何得到格式信息的呢?

将带有格式的内容粘贴到文本文档中,却没有任何HTML标签出现来证明他是带格式的内容

一开始我以为是GetClipboardData函数的参数问题,通过改变他的参数可以得到带格式的内容,于是我在MSDN查到了他的所有参数并逐个进行了尝试:

https://docs.microsoft.com/

ava
huidong

2020-8-16

0

价值

1

答案

98

浏览

EasyX有没有什么画半透明图形的方法?

或者有没有获取屏幕缓存区首地址的方法?通过用户自定义的算法来产生类似于半透明的效果。我之前仿照手机CAPP的体系试着做了一些,自定义了一个屏幕缓存区,再用putpixel将屏幕缓存区的内容打到屏幕上。但这效率太低了,刷新一个640*480的屏幕需要将近一秒。所以有没有更方便快捷的方法?

这里是我的源码,其实有四个文件的我整合到一块了。

//这里开始是types.h

#ifndef types_h
#define types_h 1

typedef int int32;
typedef u
ava
C酱

2020-8-3

0

价值

1

答案

90

浏览

怎么把float类型变量用drawtext或者outtext输出?
float fare;
char a[20];
fare = 3.0;
sprintf_s(a, "%s", fare);
drawtext(a, &R4, DT_CENTER | DT_VCENTER | DT_SINGLELINE);

这样的输出结果是(NULL)

不知道哪里有问题

ava
雷雨阵阵

2020-7-29

0

价值

1

答案

81

浏览

InputBox的char*类型实参与LPTSTR类型的形参不兼容
#include <graphics.h>
#include <conio.h>
#include <stdio.h>

int main()
{
	// 初始化绘图窗口
	initgraph(640, 480);

	// 定义字符串缓冲区,并接收用户输入
	char s[10];
	InputBox(s, 10, _T("请输入半径"));

	// 将用户输入转换为数字
	int r;
	sscanf(s, "%d", &r);

	// 画圆
	circle(320, 240, 
ava
雷雨阵阵

2020-7-28

0

价值

2

答案

132

浏览

mciSendString放不了音乐

本人刚学用VS,用的VS2019,EasyX_20200520(beta)。程序如下,音乐MP3文件也放到.cpp所在文件夹了。

但是就是放不了音乐,调试时也没有跳过mciSendString函数,其余功能(创建窗口、退出)也正常。请问应该怎么改?

#include <graphics.h>
#include <conio.h>
#pragma comment(lib,"Winmm.lib")

int main()
{
	initgraph(640, 480);
	mciSen
ava
青青子衿

2020-7-24

0

价值

1

答案

112

浏览

服务程序出现为处理的异常

第一次做图形界面,用easyx,刚尝试了第一个函数就报错卡住了。相同的问题我也去网上搜过了,没有找到类似的报错原因,所以想来求助一下。

代码

#include <stdio.h>
#include <easyx.h>

int main()
{
	setlinecolor(BLUE);
	closegraph();

	return 0;
}

报错在第六行,异常描述:0x00F1545C 处(位于 test.exe 中)引发的异常: 0xC0000

ava
兔子

2020-7-11

0

价值

2

答案

163

浏览

单链表插入输出问题
void insert(node *head)//新建插入数据
{
	node *p;
    node *r;
	p = r = head->next;
	while(p)
		p = p->next;
	p = (node *)malloc(sizeof(node));
	printf("请按以下格式输入信息:姓名 成绩\n");
	scanf("%s %f",p->lan.name,&p->lan.score);
	printf("姓名:%s\t成绩:%.1f\n",p->lan.nam
ava
谢衡南

2020-6-14

-1

价值

2

答案

184

浏览

ege19.01版本的easyx怎样贴图?

代码后面是vs2019的报错,我不知道问题在哪,搜了好几天也没找到解决办法,easyx是ege19.01版本的,用vs2019运行的。

initgraph(600, 500);

IMAGE img_bk;     E0070	不允许使用不完整的类型	

LoadImage(&img_bk, "开始界面.jpg");  E0167	"ege::IMAGE *" 类型的实参与 "HINSTANCE" 类型的形 
                                             参不兼容
ava
🌴

2020-6-10

0

价值

1

答案

143

浏览

显示: 非法 break
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#define high 480
#define width 640

int main()
{
	int x=width/2,y=high/2;
	int radius=30;//设置半径
	int v_x=1,v_y=1;
	char c;
	initgraph(width,high);//初始化绘画窗口
	setfillcolor(GREEN);//填充颜色为绿色
	Begin
C
ava
c

2020-5-22

0

价值

1

答案

153

浏览

请大佬解答一下结构体指针的相互赋值,谢谢
typedef struct Node		// 定义一个节点
{
	int data;			// 数据域
	struct Node* pNext;	// 指针域
}NODE, *PNODE;

假如这样定义 PNODE pHead, pNew, pHead 存放的数据域是 1,指针域是 x 的地址, pNew 存放的数据是 2,指针域是 y 的地址,若将 pNew 赋值给 pHead,即 pHead=pNew,那么 pHead 的指针域和数据域都会变成 pNew 的数值吗?

C
ava

2020-5-13

0

价值

1

答案

297

浏览

关于鼠标信息有延迟的问题

最近在做一个课设,在设计一个操作:当鼠标左键点击时,触发一次事件

但实际当左键点击一次时,会重复触发较多次该事件,特别是当左键一直处于按下状态时,事件会一直重复触发

所以我想请教一下,如何才能做到,当鼠标左键按下时,无论是否抬起,都只触发一次事件?

下面是我的代码:

while (1)
{
	BeginBatchDraw();

	putimage(0, 0, &game_background);

	while (MouseHit())
	{
		m = GetMo
ava
木辛

2020-5-3

-1

价值

1

答案

307

浏览

链表储存子弹信息出现异常, 其中IMAGE变量的访问出现了问题

求助大佬, 捕鱼游戏炮弹和大炮发射出了问题, 炮弹设成一个单一结构体的时候还能完美发射,后来想用链表达到连续多个炮弹发射的效果,但是链表好像出了问题, 没有报错只有异常, 具体异常如下:

第一个异常是在创建链表和插入节点时, 直接赋值初始化IMAGE成员变量会出问题:

(代码已删除)

把异常那两行和下面insertBulletNode函数的两行类似代码都改成直接loadimage()的形式就可以了. 但是又出现了第二个异常, 在旋转炮台函数里面:

ava
Orca

2020-5-1

0

价值

1

答案

217

浏览

手动安装后部分功能无法使用

环境:win10,vs2019,EasyX 2020-3-15 测试版

因为 VS 工具不在 C 盘,在打开安装包的时候安装程序并没有检测到我的 VS,所以手动安装 EasyX 2020-3-15 测试版。我手动安装的方式:

  1. 把安装包解压,把安装包里 include 文件夹下的两个头文件复制到 D:\Microsoft Visual Studio\VC\Auxiliary\VS\include\ 下。
  2. 把 lib 下 VC2015 下的 x86 和 x64 下的 lib 文件复制到 D:\Microsoft V
ava
光头暖男

2020-4-24

0

价值

2

答案

306

浏览

怎么做到通过修改注册表,使某一类型文件默认由我的程序打开

怎么做到通过修改注册表,使某一类型文件默认由我的程序打开?

上次也问了类似的问题,但是得到的回答更多的是如何使用argc和argv两个参数。

我在贴吧也问了这个问题,上次村长建议我使用InnoSetup等程序,在安装时实现,我觉得这样的话,如果我做一个小程序,还需要安装,有点麻烦。
并且,万一,嗯……万一。这个类型的文件被修改成别的程序默认打开了,用户也无法在我的程序中进行设置,使得该类型文件的默认打开方式恢复成我的程序。

因为我之前在网上搜到过通过修改注册表事程序开机自启的代码

C
ava
huidong

2020-4-7

-1

价值

1

答案

288

浏览

outtestxy放在循环里面,但只能输出第一次循环的结果

软件用的VC6.0,这个循环想实现的是每次输出的位置依次往下,不过只能输出一行也就是第一次运行的结果,程序里position_y 在上面已经给定了初始值

	while (t->next)
	{
		t = t->next;
		if(strcmp(t->s, word) == 0)
			num++;
		if(strcmp(t->s, a) == 0 || t->next==NULL)
		{
			if(num != 0)
			{
				char temp2[10];
				s
ava
D

2020-3-10