struct product { char code[5]; float price; }y[4]={"100",100

烟火未央亲2022-10-04 11:39:541条回答

struct product { char code[5]; float price; }y[4]={"100",100}; 一下表达式错误的是:
A (*y).code[0]='2' B y[0].code[0]='2'
C y->price=10 D (*y)->price=10

已提交,审核后显示!提交回复

共1条回复
txboss 共回答了18个问题 | 采纳率94.4%
y是数组类型,相当于一个地址
所以要访问成员需要用->操作符
*y是解引用后的结果,用 . 操作符访问成员
所以选D
应改成(*y).price=10
1年前

相关推荐

有关C语言问题 求解若有以下定义和语句: struct student { int num, age;};struct
有关C语言问题 求解
若有以下定义和语句:
struct student
{
int num, age;
};
struct student stu[3] = {{1001, 20}, {1002, 19}, {1003, 21}};
struct student *p = stu;
则以下错误的引用是 _____。选择一个答案
A. (p++)->num
B. (*p).num
C. p = &stu.age
D. p++

为什么选择C呢?希望给出详解? 这个题中涉及哪些知识点?
whp_19781年前1
季候风1973 共回答了17个问题 | 采纳率94.1%
p是struct student类型的指针,stu.age是int型变量,p指向stu.age 会产生类型不匹配的问题
struct student **p = &studentt; 这句话怎么解释?为什么是两个**
struct student **p = &studentt; 这句话怎么解释?为什么是两个**
不好意思,多写了一个t,student是一个结构体,不明白为什么指针能指向一个结构体?结构体还没有实例化,那儿来的地址?
struct student **p = &student; 这句话怎么解释?为什么是两个**
nickhsu19831年前1
anababy007 共回答了16个问题 | 采纳率87.5%
**p = &studentt;
首先 studentt 是一个指针,这里 命名不够规范;
其次&studentt 取指针的地址;
然后 定义struct student 类型 指针的指针,并赋值.
请问英文单词如何缩写比如structure缩写为struct.,reference缩写为ref.等等.这种类型的缩写有什
请问英文单词如何缩写
比如structure缩写为struct.,reference缩写为ref.等等.
这种类型的缩写有什么规则?
烈舞宝贝1年前2
mosa123 共回答了16个问题 | 采纳率81.3%
一般就是第一个元音音节加上第二个元音音节的辅音部分
___ the clock structk twelve. I got home with my brother. A.
___ the clock structk twelve. I got home with my brother.
A.As B.While C.When D.Since
searicky1年前1
allan07 共回答了21个问题 | 采纳率90.5%
C

when,while,as解作“正当..”时,同义;他们区别主要在: when表示突然发生某事,常译为 “正在…(之时)突然…”; while表示对比,常译作 “而”; as表示时间,作 “随着…”解(不能用另二个替换。)
14.设struct data{int a;float b;}c,*p=&c;,引用正确的是
14.设struct data{int a;float b;}c,*p=&c;,引用正确的是
a.*p.a b.p.b
c.p->a d.*p->b
a是少个括号,b是少***符号和括号,c死多个指针符号吗
ss新手B1年前1
enancy 共回答了17个问题 | 采纳率76.5%
可以自己写一下:
struct data
{
int a;
int b;
};
data c;
data *p = null;
p = &c;
这和原题是一致的,首先p是指针,所以是->运算符,点运算符优先级高于*所以A错
11.有如下定义: struct{ int x; char *y; }tab[2]={{1,"ab"},{2,"cd"}
11.有如下定义: struct{ int x; char *y; }tab[2]={{1,"ab"},{2,"cd"}},*p=tab; 表达式*p->y 的结果是( )
11.有如下定义:
struct{ int x; char
*y; }tab[2]={{1,"ab"},{2,"cd"}},*p=tab;
表达式*p->y 的结果是( ).
表达式*(++p)->y 的结果是( ).
wlj30071年前1
啊蕾扎 共回答了13个问题 | 采纳率92.3%
楼上错了.
*p->y结果为:a
*(++p)->y结果为b
*p->y指向tab[0].y
*(++p)->y指向tab[1].y
指针只存放4个字节.
C# color是一个结构名?① Color 与我自己定义的一个结构:public struct student{}中的
C# color是一个结构名?
① Color 与我自己定义的一个结构:
public struct student
{}
中的student的地位一样吗?也就是说Color是一个结构名而不是一个实例?

Color.
Color newcolor =Color.
③ 创建一个实例时:
Color A与Color A=new Color()有什么不同?
chcm33441年前1
行走的小猪 共回答了20个问题 | 采纳率100%
那不是结构,Color是枚举类型,你用下面的代码可以得到所有预定义的Color名
foreach(string s in Enum.GetNames(typeof(Colors)))
{
//to do
}
关于枚举的基础知识可以自己查一下看看.
#include#include#define MAXNUM 20struct stacktype{int stack[
#include
#include
#define MAXNUM 20
struct stacktype
{
int stack[MAXNUM];
int top;
};
void InitStack(struct stacktype *s)
{s->top=-1;
}
int StackEmpty(struct stacktype *s)
{return(s->top==0);
}
int push(struct stacktype *s,int x)
{ if(s->top >= MAXNUM-1)
return false;
else
s->top++;
s->stack[s->top]=x;
return true;
}
int pop(struct stacktype *s)
{ if(s->top top--;
return(s->stack[s->top+1]);
}
void dec_to_bin(int N,int B)
{
int e;
struct stacktype *s;
x05InitStack(s); //初始化堆栈,算法定义见课本
x05while(N){
x05x05push(s,N%B);
x05x05N=N/B;
x05}
x05while(StackEmpty(s)){ //堆栈判空,算法定义见课本
x05x05e=pop(s);
x05x05printf("%d",e);
x05}
}
void main()
{int a;
scanf("%d",&a);
dec_to_bin(a,2);
}
运行没有错误但就是出现local variable 's' used without having been initialized这个的错误
jh_tldbagb16a71年前1
taylor苏 共回答了17个问题 | 采纳率88.2%
int e;
struct stacktype *s=NULL;
InitStack(s);
编译器说你的s没有初始化 你就把它赋值为NULL就可以了 像我这样
struct st{int x,int*y;}*p; int s[]={5,6,7,8} st a[]={10,&s[0
struct st{int x,int*y;}*p; int s[]={5,6,7,8} st a[]={10,&s[0],20,&s[1]30,&[2],40,&s[3]} main( ) {
p=a;
cout
刘而不备1年前1
skykingting 共回答了16个问题 | 采纳率100%
我是这样理解的:
st a[] = {.}实际上是a[0] = {10,&s[0]},a[1] = {20,&s[1]}.
p = a ;是将a的首地址赋值给p 也就是a[0]的地址,此时p指向a[0],p->x为10;
(++p)->x 是将指针p 加1之后取x的值,也就是a[1]的x值 为20;
*(++p)->y将p的值再加1,因为"->"的优先级比“*”高,所以会先执行->操作,得到*(&s[2]),取得s[2]的值为7;
最后一个基本同上,只是最后一个++操作,++8 为9;
不知道明白没有~
struct 函数的写法问题 想写一个复数加法的函数,再求一个在main中调用该函数的语句。
struct 函数的写法问题 想写一个复数加法的函数,再求一个在main中调用该函数的语句。
#include"stdio.h"
struct complex
{
float x;
float y;
}a,b,c;
float jiafa(a.x,a.y,b.x,b.y)
{
c.x=a.x+b.x;
c.y=a.y+b.y;
}
淡淡的伤口1年前1
烟雾里的沉思 共回答了19个问题 | 采纳率89.5%
#include
struct Complex
{
double x,y;
};
//Function addition
struct Complex addition(struct Complex *term1,struct Complex *term2)
{
struct Complex sum;
sum.x=term1->x+term2->x;
sum.y=term1->y+term2->y;
return sum;
}
int main()
{
struct Complex a,b,c;
//在此a,b赋值
c=addition(&a,&b);
return 0;
}
struct student **p = &studentt; 这句话怎么解释?为什...
GIGI蓝色夏天1年前1
漫步人生路LZK 共回答了16个问题 | 采纳率87.5%
struct student **p = &studentt; 这句话怎么解释?为什...
p = &studentt;
首先 studentt 是一个指针,这里 命名不够规范;
其次&studentt 取指针的地址;
然后 定义struct student 类型 指针的指针,并赋值.
捀伤廕孛叚娋犣围吗报儿弡檠倷兪
27.若有结构类型定义"typedef struct test{int x,y[2];}TEST;",则以下声明中正确的
27.若有结构类型定义"typedef struct test{int x,y[2];}TEST;",则以下声明中正确的是 _________
27.若有结构类型定义"typedef struct test{int x,y[2];}TEST;",则以下声明中正确的是
_________ .
A.struct test x:B.struct x; C.test x;D.struct TEST x;
为什么A?不是D
MrO酷洛桠1年前1
马路笨笨 共回答了14个问题 | 采纳率78.6%
答案为:C
A错:最后应为分号
B错:缺少结构体名
D错:TEST 已经被定义为类型名,不必再加struct
c语言 大神求指导若有以下说明,则下面哪个叙述是正确的(已知short占2个字节,float占4个字节)。struct&
c语言 大神求指导

若有以下说明,则下面哪个叙述是正确的(已知short占2个字节,float占4个字节)。


  1. struct
  2. {
  3. short a;
  4. float b;
  5. } v1;


  1. union
  2. {
  3. short a;
  4. float b;
  5. } v2;

得分/总分

  • A.

    执行sizeof(v1)获得的结果是6个字节,只能对结构体变量v1中的第一个成员进行初始化。

  • B.

    执行sizeof(v2)获得的结果是8个字节,只能对共用体变量v2中的第一个成员进行初始化

  • C.

    执行sizeof(v1)获得的结果是8个字节,对结构体变量v1中的任何一个成员都可以进行初始化。

  • D.

    执行sizeof(v2)获得的结果是6个字节,只能对共用体变量v2中的第一个成员进行初始化。


金点点1年前1
品茶cc摇椅 共回答了19个问题 | 采纳率89.5%
A是错的。事实上可以给两个成员分别初始化,互不影响。
B是错的。sizeof(v2)应该4(b占用的字节数)。
C不准确。平台的对齐方式是4时,是对的,否则,就是错的。
D是错的。执行sizeof(v2)获得的结果是4个字节。
structsales*next;putimage(x,y,logoBmp7,method);
structsales*next;putimage(x,y,logoBmp7,method);
E,
澡雪精神1年前1
中关村老大 共回答了21个问题 | 采纳率95.2%
E,
.owner是什么意思static struct file_operations dev_fops = { .owner
.owner是什么意思
static struct file_operations dev_fops = {
.owner = THIS_MODULE,
.ioctl = sbc2440_leds_ioctl,
};我知道owner,ioctl都是file_operations的成员,不明白前面要加个“.”的作用
不是要问这个单词什么意思
lulu1031年前1
常常发呆 共回答了21个问题 | 采纳率95.2%
没有特定的这种说法,要看上下文.feature可以解释为“专题”,而owner也有一个不太常用的意思是“负责人”,所以“feature owner”可以解释为“专题负责人”.这里没有上下文不好判断具体是什么,但举个例子,比如某个电视台要拍个专题节目,负责统筹这个节目拍摄的人就可以叫做feature owne
struct定义中在成员后面加冒号“:
struct定义中在成员后面加冒号“:
typedef unsigned char u_char;
struct frame_control {
u_char fc_subtype :4;
u_char fc_type :2;
u_char fc_protocol_version :2;
u_char fc_order :1;
u_char fc_wep :1;
u_char fc_more_data :1;
u_char fc_pwr_mgt :1;
u_char fc_retry :1;
u_char fc_more_frag :1;
u_char fc_from_ds :1;
u_char fc_to_ds :1;
};
里面成员定义中加:
qaz92501年前1
ll889 共回答了18个问题 | 采纳率72.2%
这是位域操作的表示方法,也就是说后面加上“:1”的意思是这个成员的大小占所定义类型的1 bit,“:2”占2 bit,依次类推.当然大小不能超过所定义类型包含的总bit数.
一个bytes(字节)是8 bit(bit).例如你的结构中定义的类型是u_char,一个字节,共8bit,最大就不能超过8.
32位机下,
short是2字节,共16bit,最大就不能超过16.
int是4字节,共32bit,最大就不能超过32.
依次类推.
这样定义比较省空间.例如你上面的结构,定义的变量类型是u_char,是一字节类型,即8bit.
fc_subtype占了4bit,fc_type占2bit,fc_protocol_version占2bit,共8bit,正好是一个字节.
其他八个成员,各占1bit,共8bit,正好也是一个字节.
因此你的结构的大小如果用sizeof(struct frame_control)计算,就是2bytes.
(36)没有定义struct complex{ int real,unreal ;} datal={1,8},data2
(36)没有定义
struct complex
{ int real,unreal ;} datal={1,8},data2; 则以下赋值语句中的错误的是
A)data2=data1; B)data2=(2,6); C)data2.real1=data1.real; D)data2.real=data1.unreal;
woof01181年前1
宇仔30 共回答了18个问题 | 采纳率77.8%
选择B
A)相同的类型的结构体肯定可以赋值啊
B)要写成data2={2,6};
C)同A一样,只是局部赋值
D)都是int型,同理
14. 设有以下说明语句 struct student { int x ; float y; ch
14. 设有以下说明语句 struct student { int x ; float y; ch
14. 设有以下说明语句
struct student
{ int x ; float y; char z ;} p,*example=&p;
则下面正确的是 B 。
A) struct.x B) example->z C) student->x D) example.z
52k01年前1
sophia_0514 共回答了17个问题 | 采纳率88.2%
A,D:显然错的。
B:example = &p p是一个struct student型的变量,像int a一样。而example是一个struct student 型的 指针 ,像int *b一样。而example = &p与b = &a一样。struct student *example = &p与int *a = b一样。
typedef union { UBYTE BYTE; struct{ UBYTE A:6; UBYTE B1:1; U
typedef union { UBYTE BYTE; struct{ UBYTE A:6; UBYTE B1:1; UBYTE B0:1; }BIT; }A;
笑熬江湖1年前1
xiaopan 共回答了21个问题 | 采纳率90.5%
UBYTE是宏定义过的 数据类型,应该是usigned char 类型的;
所以BYTE是 UBYTE类型的 变量,占8位;
同理A B1、B0也是UBYTE类型的变量,但 由于位域的概念,A只占6位,B1占1位,B0占1位;这其实是一种程序优化方案;
这个定义的总体意思是:
A类型占8位:如果想全部访问,那么就用A.BYTE,来访问;
如果想局部访问,就用A.BIT.A;A.BIT.B1;A.BIT.B2来访问.
大一c语言问题3.以下所列对结构类型变量td1的声明中,错误的是 。 A.typedef struct aa B.#de
大一c语言问题
3.以下所列对结构类型变量td1的声明中,错误的是 。
A.typedef struct aa B.#define AA struct aa
{ int n;float m;}AA; AA{ int n; float m;}td1;
AA td1;
C.struct D.struct
{ int n; float m;}aa; { int n; float m;}td1;
struct aa td1;
啊笯1年前1
我要提问呀 共回答了25个问题 | 采纳率96%
c是错的,aa已经是定义出的一个结构体变量。
程序1.设typedef struct{char id[10];float
程序1.设typedef struct{char id[10];float
1.设typedef struct{char id[10];float score}STU;则sizeof(STU)值是【 】。
A.14   B.16  C.5   D.12
2. 设typedef union{int i;char c;float x}TEST;则sizeof(TEST)值是【 】。
A.4  B.7 C.6  D.5
lliucheng1年前1
浮生于世上 共回答了16个问题 | 采纳率87.5%
1.A结构体在内存中占的字节数,应该等于所有元素所占字节数的和 sizeof(STU)=sizeof(char)*10+sizeof(float)=1*10+42.A联合结构在内存中占的字节数,应该等于他的占最大字节数的那个元素占的字节数我们可以发现,占...
11.有如下定义:struct{ int x; char *y;
11.有如下定义:struct{ int x; char *y;
11.有如下定义:
x05 struct{ int x; char
x05*y; }tab[2]={{1,"ab"},{2,"cd"}},*p=tab;
x05 表达式*p->y 的结果是( ).
表达式*(++p)->y 的结果是( ).
时间地尾巴1年前1
realangle 共回答了12个问题 | 采纳率91.7%
*p->y 指向tab[0].y
*(++p)->y 指向tab[1].y
struct S {int a,b;} data [2]={10,100,20,200}; mian() {struct
struct S {int a,b;} data [2]={10,100,20,200}; mian() {struct S p=data[1;] printf("%dn",++(p.a)); }
阿wings1年前1
凌乱不堪220 共回答了14个问题 | 采纳率85.7%
struct S {int a,b;} data [2]={10,100,20,200};
// 定义结构 S,它含2 个整型成员.
// 声明 data 是 结构 S 数组.初始化 data[0].a=10; data[0].b=100;data[1].a=20;data[1].b=200;
main() {
struct S p=data[1] ; // 声明 p 是 结构 S.初始化 为 data[1],也就是 p.a=data[1].a;p.b=data[1].b;
printf("%dn",++(p.a)); // p.a 先增 1 再打印.p.a = data[1].a=20,先增 1 等于21.
}
打印 得21
求翻一篇(小)英语文章!很快的Honeybees cannot live alone.Their body-struct
求翻一篇(小)英语文章!很快的
Honeybees cannot live alone.Their body-structure and instincts equip them for life in a colony or community,where they have a complex social organization and the various duties are divided among the individuals according-to physical fitness and age.An individual worker bee cannot reproduce itself.While it may continue to live if forcibly isolated from its mates,it fails to care for itself adequately,an soon dies.Most insects have the abliity to hibernate in winter,but the honeybee seems to have lost this.Since at low temperatures the bee will die,it must have the ability to make its own environment,so far as temperature is concerned.This makes a colony necessary to the bees in winter,so that they may collectively warm each other.Efficiency,if not necessity,demands that the work of the colony be divided,and such a division of labor tends to enhance the need to maintain thecolony.The physical structure of the honeybee is further suited for the defense of the fact that it is left behind in the victim.With the loss of the sting,however,the bee dies.This kind of defensive weaponis not of service to the individual,but to the community.
PS:希望人工翻译
米千月1年前1
lizhao2003 共回答了11个问题 | 采纳率90.9%
蜜蜂无法独自存活.它们的身体构造和本能使它们在群体生活中胜任终身,其中它们具有复杂的社会构成并且根据个体的身体构造和年龄各自被不同分工.
有以下定义和语句struct stu{int n;struct st *next;};
有以下定义和语句struct stu{int n;struct st *next;};
static struct st a[3]={5,&a[1],7,&a[2],9,' '},*p;
p=&a[0];,则值为6的表达式是
A.p++->n B.p->n++ C.(*p).n++ D.++p->n
求详解
sky04361年前1
grace0911 共回答了21个问题 | 采纳率100%
D.其实是一个链表,p->n指的就是其中的值,p++则指向下一个元素.
A p++->n相当于(&a[0]->n),于是是5
B p->n++相当于(&a[0]->n)++,也是5
C (*p).n++相当于(a[0].n)++,结果也是5
D ++p->n相当于++(p->n),结果6
static void soap_default__cwmp__FactoryResetResponse(struct
static void soap_default__cwmp__FactoryResetResponse(struct soap *soap,struct _cwmp__FactoryResetResponse *a) {
(void)soap; (void)a; /* appease -Wall -Werror */
}
ō雪梨ō651年前1
板板671 共回答了20个问题 | 采纳率100%
就是把结构体指针转化为void指针,没别的意思
for (n=0;!feof(fp) && fread(&tongxun[n],sizeof(struct tongxu
for (n=0;!feof(fp) && fread(&tongxun[n],sizeof(struct tongxunlu),1,fp);n++);是什么意思?
轻风舞叶夜1年前1
我的名字不太长 共回答了21个问题 | 采纳率95.2%
这个意思是这样,
初始条件,n=0;
每循环一次,n加1.
循环的过程中检查fp指向的文件:1.有没有到文件尾 2.每次读1个tongxun结构的字节数据是否成功.
其功能是实现,读取文件里面的tongxun结构的数据,每次读一个结构体,遇文件尾结束.
struct和enum 这2个词怎么读,我在词霸上查不到它的音标
struct和enum 这2个词怎么读,我在词霸上查不到它的音标
struct和enum 这2个词英文发音怎么读,我在词霸上查不到它的音标
相思的豆豆1年前1
dcj108 共回答了19个问题 | 采纳率94.7%
strucs是structure 的缩写
enum是enumerate 的缩写
再查一下看看
对于以下结构定义:struct { int len; char *str;}*p;(*p)->str++中的++加在__
对于以下结构定义:struct { int len; char *str;}*p;(*p)->str++中的++加在________
A指针str上 B. 指针p上 C. str所指的内容上 D.语法错误
拜托讲解一下,谢谢
我爱rain啊1年前1
vannessa81 共回答了20个问题 | 采纳率95%
选D
p是一个结构体指针,结构体指针访问成员用"->",结构体变量用"."
正确的应该是p->str++,或者(*p).str++
(1)说出下列算法的功能.template struct Binnode { T data; Binnode *prio
(1)说出下列算法的功能.template struct Binnode { T data; Binnode *prior,*next; };
piaochx1年前1
MICHAEL_SN 共回答了11个问题 | 采纳率100%
#include
void split(int n)
{
int i;
int bit[10];
for(i=0;i>=1;
}
for(i=3;i>=0;i--)
在线等structsales*next;intmain()intchoice,n=0,melsepDC->SelectO
在线等structsales*next;intmain()intchoice,n=0,melsepDC->SelectO
while(!s.empty())root=s.top;q->prior=p;
周亮112201年前2
fayeng 共回答了10个问题 | 采纳率90%
outtextxy(250,171,"13CARDS");#defineUP0x4800所以for(i=0;i
报错,//图书管理#include #define LEN sizeof(struct)void add_book();
报错,
//图书管理
#include
#define LEN sizeof(struct)
void add_book();
struct Book
{
int num;
char name[20];
char author[20];
struct Book *next;
};
int main()
{
x05int funk;
x05int a;
x05struct book *head=NULL;
x05
x05printf("本软件有4项功能:nn");
x05printf(" 1.添加图书n 2.删除图书n 3.查看图书 4.修改图书nn");
x05printf("请输入功能标号以实现功能n");
x05scanf("%d" ,&funk);
x05//if((funk >= 1)&&(funk num);
x05printf("请输入增加图书的名称:n");
x05scanf("%s" ,&p1->name);
x05printf("请输入增加图书的作者:n");
x05scanf("%s" ,&p1->author);
x05fprintf(fp,"%d ,%s ,%s",p1->num ,p1->name ,p1->author);
x05
x05while(p1->num!=0)
x05{
x05x05n = n + 1;
x05x05if(n == 1)
x05x05{
x05x05x05head = p1;x05
x05x05}
x05x05else
x05x05{
x05x05x05p2 -> next = p1;
x05x05}
x05x05p2 = p1;
x05x05p1 = (struct Book *)malloc(LEN);
x05x05printf("请输入增加图书的数量:n");
x05x05scanf("%d" ,&p1->num);
x05x05printf("请输入增加图书的名称:n");
x05x05scanf("%s" ,&p1->name);
x05x05printf("请输入增加图书的作者:n");
x05x05scanf("%s" ,&p1->author);
x05x05fprintf(fp,"%d ,%s ,%s",p1->num ,p1->name ,p1->author);
x05}
x05p2 -> next = NULL;
}
/*void del_book(struct book *head)
{
x05
x05
x05printf("请输入你要删除的图书名称:n");
x05scanf("%s",&name);
x05
x05
x05
x05
x05
x05
x05
x05
x05
x05
x05
}
void scan_book(struct book *head)
{
x05struct book *p;
x05p = head;
x05
x05if(head = NULL)
x05{
x05x05do
x05x05{
x05x05x05printf("%d %s %s",p->)
x05x05}
x05}
x05
x05
x05
x05
x05printf("所有的图书为:n");
x05
x05
x05
x05
x05
x05
x05
x05
x05
x05
x05
}
*/
秋语伊人1年前1
xpsjl 共回答了20个问题 | 采纳率95%
第四行改为:#define LEN sizeof(struct Book)
gets(str);structin_product*ip;
gets(str);structin_product*ip;
inti,num=15,top=50;maxIdx=i;ifUsed(0,0);
shad55551年前1
azwsxq 共回答了23个问题 | 采纳率87%
if(flag!=0)structin_product*ip;因为unsignedcharzeroArea_2[3];gets(str); bh5dnmu4
#include struct student { long num; char name[10]; int age;
#include struct student { long num; char name[10]; int age; double s[10]; };
main()
{ printf("%dn",sizeof(struct atudent));
}
输出结果是( )
(A) 96 (B)56 (C)4 (D) 22
阿拉知道1年前1
芒芒芒芒 共回答了17个问题 | 采纳率76.5%
A 96
long的长度=4
char [10]的长度 =1*10
int的长度 = 2
double [10]的长度 = 8 * 10
不过这个是在16位计算机上的答案,如果是32位机或者64位机算法会不一样,也就是说你用你现在发问题的这台机器来试验可能不是这个答案……
C语言判断点是否在三角形内或外#include#includestruct point{double x;double
C语言判断点是否在三角形内或外
#include
#include
struct point
{
double x;
double y;
};
int area(float m,float n,float t)
{
float p,S;
p=(m+n+t)/2;
S=sqrt(p*(p-m)*(p-n)*(p-t));
return S;
}
void main()
{
point a,b,c,d,p;
float AB,BC,AC;
float S0,S1,S2,S3;
scanf("%lf,%lfn",&a.x,&a.y);
scanf("%lf,%lfn",&b.x,&b.y);
scanf("%lf,%lfn",&c.x,&c.y);
AB=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
BC=sqrt((b.x-c.x)*(b.x-c.x)+(b.y-c.y)*(b.y-c.y));
AC=sqrt((a.x-c.x)*(a.x-c.x)+(a.y-c.y)*(a.y-c.y));
if((AB+BC)>AC && (AB+AC)>BC && (AC+BC)>AB){
printf("请输入D点坐标:n");
scanf("%lf,%lfn",&d.x,&d.y);
float DA,DB,DC;
DA=sqrt((d.x-a.x)*(d.x-a.x)+(d.y-a.y)+(d.y-a.y));
DB=sqrt((d.x-b.x)*(d.x-b.x)+(d.y-b.y)+(d.y-b.y));
DC=sqrt((d.x-c.x)*(d.x-c.x)+(d.y-c.y)+(d.y-c.y));
S0=area(AB,BC,AC);
S1=area(DA,DB,AB);
S2=area(DA,DC,AC);
S3=area(DB,DC,BC);
if(S1+S2+S3-S0==0)
printf("点D位于三角形内部n");
else
printf("点D位于三角形外部n");
}
else
printf("不能构成三角形!");
}
在夜晚开始流浪1年前1
dudubook 共回答了15个问题 | 采纳率93.3%
#include
#include
struct point
{
double x;
double y;
};
int area(float m,float n,float t)
{
float p,S;
p=(m+n+t)/2;
S=sqrt(p*(p-m)*(p-n)*(p-t));
return S;
}
void main()
{
struct point a,b,c,d,p;
float AB,BC,AC;
float S0,S1,S2,S3;
float DA,DB,DC;
scanf("%lf,%lfn",&a.x,&a.y);
scanf("%lf,%lfn",&b.x,&b.y);
scanf("%lf,%lfn",&c.x,&c.y);
AB=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
BC=sqrt((b.x-c.x)*(b.x-c.x)+(b.y-c.y)*(b.y-c.y));
AC=sqrt((a.x-c.x)*(a.x-c.x)+(a.y-c.y)*(a.y-c.y));
if((AB+BC)>AC && (AB+AC)>BC && (AC+BC)>AB){
printf("请输入D点坐标:n");
scanf("%lf,%lfn",&d.x,&d.y);
DA=sqrt((d.x-a.x)*(d.x-a.x)+(d.y-a.y)+(d.y-a.y));
DB=sqrt((d.x-b.x)*(d.x-b.x)+(d.y-b.y)+(d.y-b.y));
DC=sqrt((d.x-c.x)*(d.x-c.x)+(d.y-c.y)+(d.y-c.y));
S0=area(AB,BC,AC);
S1=area(DA,DB,AB);
S2=area(DA,DC,AC);
S3=area(DB,DC,BC);
if(S1+S2+S3-S0==0)
printf("点D位于三角形内部n");
else
printf("点D位于三角形外部n");
}
else
printf("不能构成三角形!");
}
//看看这样可比可以.你这个题还有更简单的方法,试试把每个边当成直线段,然后用d点带入和0比较大小,就会很简单.
将La和Lb合并成Lc合并问题#include "stdio.h"typedef struct{int elem;}Li
将La和Lb合并成Lc合并问题
#include "stdio.h"
typedef struct{
int elem;
}List;
void MergeList(List La ,List Lb ,List &Lc ){
int i,j,k;
InitList(Lc);
i=j=1;k=0;
La_len = ListLength(La);Lb_len = ListLength(Lb);
while ((i
421978691年前1
一贯亲手 共回答了14个问题 | 采纳率85.7%
#include
typedef struct
{
x09int *elem;
x09int length;
x09int listsize;
}SqList;
void InitList(SqList *L)//初始化函数
{
x09L->elem=(int*)malloc(100*sizeof(int));
x09if(!(L->elem))
x09x09exit(0);
x09L->length=0;
x09L->listsize=100;
}
int ListInsert(SqList *L,int i,int e)
{
x09int newbase,*q,*p;
x09if(iL->length+1)
x09x09return 0;
x09if(L->length>=L->listsize)
x09{
x09x09newbase=(int*)realloc(L->elem,(L->listsize+10)*sizeof(int));
x09x09if(!newbase)
x09x09x09exit(0);
x09x09L->elem=newbase;
x09x09L->listsize+=10;
x09}
x09q=&(L->elem[i-1]);
x09for(p=&(L->elem[L->length-1]);p>=q;--p)
x09{
x09x09*(p+1)=*p;
x09}
x09*q=e;
x09++L->length;
}
int GetElem(SqList L,int i,int *e)
{
x09if(iL.length)
x09x09return 0;
x09else
x09{
x09x09*e=L.elem[i-1];
x09x09return 1;
x09}
}
void MergeList(SqList La,SqList Lb,SqList *Lc)
{
x09int i=1,j=1,k=0;
x09int ai,bj;
x09int La_len=La.length,Lb_len=Lb.length;
x09while((i
设有定义语句“struct {int a;float b;char c;}abc,*p;”,则对结构体成员a的引用可以是
设有定义语句“struct {int a;float b;char c;}abc,*p;”,则对结构体成员a的引用可以是( ).
A、abc.a
B、abc->a
C、(*p).a
D、p->a
Seabin771年前1
春天的燕子sxy 共回答了10个问题 | 采纳率100%
ACD都可以.
函数的参数问题struct EngineerStruct //声明存储工程师信息的结构体 { unsigned int
函数的参数问题
struct EngineerStruct //声明存储工程师信息的结构体
{
unsigned int EngineerNo; //工程师编号
char EngineerName[20]; //工程师姓名
enum Sex EngineerSex; //工程师性别
struct DateStruct EngineerBirth; //工程师生日
char EngineerHometown[10]; //工程师籍贯
unsigned int EngineerEducation; //工程师学历
char EngineerAddress[30]; //工程师地址
char EngineerPhone[15]; //工程师电话
unsigned int EngineerWorkYears; //工程师工龄
float EngineerBaseSalary; //工程师基本薪水
};
int InputEngineerNo(struct EngineerStruct Engineer[].EngineerNo,int i)//这里的参数怎么填写?
{
printf("请输入工程师的编号");
scanf("%d",&i);
if(DataNo[i]==1)//DataNo测试编号是否重复
{
printf("此编号已存在请重新输入");
InputEngineerInformation();
}
else
{
DataNo[i]=1;//DataNo标记编号已使用
Engineer[i].EngineerNo=i;
}
return 0;
}
int InputEngineerInformation(struct EngineerStruct Engineer[])
{
int i;

InputEngineerNo(Engineer[i].EngineerNo,i);
}
最后那段写错了,应该是
int InputEngineerInformation(struct EngineerStruct Engineer[])
{
int i;

//编号输入
InputEngineerNo();
}
张高生1年前1
蓝天的粉丝 共回答了20个问题 | 采纳率95%
这样写就可以了:
"int InputEngineerNo(EngineerStruct Engineer[],int i)“
这种写法等同于:
"int InputEngineerNo(EngineerStruct *Engineer,int i)”
对于C的编译起来说都等同于得到了一个EngineerStruct数组的头指针.
C遗传算法struct individual{unsigned char *chrom;double fitness;d
C遗传算法
struct individual
{
unsigned char *chrom;
double fitness;
double varible;
int xsite;
int parent[2];
int *utility;
};
struct individual *oldpop;
struct individual *newpop;
void initmalloc()
{
unsigned char nbytes;
int j;
nbytes=popsize*sizeof(struct individual);
if((oldpop=(struct individual*)malloc(nbytes))==NULL)
nomemory("oldpop");
if((newpop=(struct individual*)malloc(nbytes))==NULL)
nomemory("newpop");
nbytes=chromsize*sizeof(unsigned char);
for(j=0;j
plmn51年前1
喷喷龙 共回答了17个问题 | 采纳率94.1%
一个非常简单的遗传算法源代码,是由Denis Cormier (North Carolina State University)开发的,Sita S.Raghavan (University of North Carolina at Charlotte)修正.代码保证尽可能少,实际上也不必查错.对一特定的应用修正此代码,用户只需改变常数的定义并且定义“评价函数”即可.注意代码的设计是求最大值,其中的目标函数只能取正值;且函数值和个体的适应值之间没有区别.该系统使用比率选择、精华模型、单点杂交和均匀变异.如果用Gaussian变异替换均匀变异,可能得到更好的效果.代码没有任何图形,甚至也没有屏幕输出,主要是保证在平台之间的高可移植性.读者可以从ftp.uncc.edu,目录 coe/evol中的文件prog.c中获得.要求输入的文件应该命名为‘gadata.txt’;系统产生的输出文件为‘galog.txt’.输入的文件由几行组成:数目对应于变量数.且每一行提供次序——对应于变量的上下界.如第一行为第一个变量提供上下界,第二行为第二个变量提供上下界,等等.
//
.
代码太多 你到下面呢个网站看看吧
void main(void)
{
int i;
if ((galog = fopen("galog.txt","w"))==NULL)
{
exit(1);
}
generation = 0;
fprintf(galog,"n generation best average standard n");
fprintf(galog," number value fitness deviation n");
initialize();
evaluate();
keep_the_best();
while(generation{
generation++;
select();
crossover();
mutate();
report();
evaluate();
elitist();
}
fprintf(galog,"nn Simulation completedn");
fprintf(galog,"n Best member:n");
for (i = 0; i < NVARS; i++)
{
fprintf (galog,"n var(%d) = %3.3f",i,population[POPSIZE].gene[i]);
}
fprintf(galog,"nn Best fitness = %3.3f",population[POPSIZE].fitness);
fclose(galog);
printf("Successn");
}
另外,虚机团上产品团购,超级便宜
假定有“struct BOOK{char title[40]; float price;}; BOOK *book;”,
假定有“struct BOOK{char title[40]; float price;}; BOOK *book;”,则不正确的语句为( A ). A. BOOK
假定有“struct BOOK{char title[40]; float price;}; BOOK *book;”,则不正确的语句为( A ).
A. BOOK *x=new book; B. BOOK x={"C++ Programming",27.0};
C. BOOK *x=new BOOK; D. BOOK *x=book;求解释
lzqf12191年前1
wangzhongping 共回答了17个问题 | 采纳率88.2%
A. book是一个指针,非类型,语法错;
B. 直接对结构体内部成员初始化;
C.用new创建;
D.指针赋值,尽管book现在没有初值,但是语法上没有问题.
union的定义union //程序标志位{uint16 Register;struct {uint8 bus_rese
union的定义
union //程序标志位
{
uint16 Register;
struct
{
uint8 bus_reset :1;
uint8 suspend :1;
uint8 remote_wakeup :1;
uint8 int_isr :1;
uint8 not_end :1;
uint8 usb_idle :1;
uint8 usb_busy :1;
uint8 setup_packet_in :1;
uint8 setup_packet_out :1;
uint8 set_addr :1;
uint8 usb_endp0_in :1;
uint8 usb_endp2_in :1;
uint8 usb_endp2_out :1;
}flags;
}usb_flags;
ixoi1年前1
joyce0818 共回答了24个问题 | 采纳率91.7%
这里的1意思是定义1个位的大小来存储1或0两中状态
c语言试题 急 1、若有以下程序段,则值为6的表达式是〈〉struct st{int n;struct st next;
c语言试题 急
1、若有以下程序段,则值为6的表达式是〈〉
struct st{int n;struct st next;};
static struct st a[3]={5,&[1],7,&a[2],9,' '},*p;p=&a[0];
A.p++->n
B.p->n++
C.(*p).n++
D.++p->n
2、若有定义int y=12,n=5;则计算表达式y%=(n%=2)后y的值为〈 〉
3.若有int a[3]={10,12,30};则a+1是〈 〉的地址,*(a+2)=〈 〉
4.int *p[4];则标识符p是〈 〉
5.int a[3]={10,12,30}则a+1是〈 〉的地址,*(a+2)=〈 〉
6.feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为〈 〉,否则为〈 〉
7.下面程序段的运行结果是〈 〉
x=2;
do{printf("*");x--;}while(!x==0);
8.当a=3,b=4,c=5时,写出下列各式的值.a
迦西莫多1年前1
ldz88668 共回答了19个问题 | 采纳率84.2%
1.D;
2.0;
3.12,30;
4.指向一个二维数组的指针;
5.12,30;
6.1,0;
7.**;
8.1,1;
9.i*m+(j+1)
(都是自己做的,望能相助,共勉!)
for(i=0;fread(&pil[i],sizeof(struct pilot),1,fp)!=0;i++)
for(i=0;fread(&pil[i],sizeof(struct pilot),1,fp)!=0;i++)
求整句话的示意,作用和功能!
&pil[i] 的意义
fp 的意思
sizeof(struct pilot) 的含义
应怜江上寒1年前1
不但丑而且穷 共回答了19个问题 | 采纳率94.7%
这个可以看出来定义了一个结构struct pilot,这句的功能就是把pil[]数组中的内容从 FILE 文件指针的fp中读出.具体的你可以去看fread()函数的用法.
fp是定义FILE类型的指针.应该是打开了一个文件.
sizeof()这个函数是求struct pilot的大小、
还有什么不懂可以嗨我.
Our teachers think Jim the best student. The sentence struct
Our teachers think Jim the best student. The sentence structure is _______
A.S+V+DO B.S+V C.S+V+P D.S+V+DO+OC
20011017zm1年前1
最毒曼陀罗 共回答了20个问题 | 采纳率85%
D

如果s1和s2是被定义了的struct student变量,如下哪个表达式是正确的( )
如果s1和s2是被定义了的struct student变量,如下哪个表达式是正确的( )
A) s1=s2 B) s1= =s2 C) s1=s1-s2 D) s2=s1+3
difiofe1年前1
cx324_2000 共回答了15个问题 | 采纳率86.7%
A 是正确的.
BCD三个中,分别使用了三个运算符:==,- ,+
如果是在 C++ 中,struct student 的定义中没有重载如上3个运算符的话,那么这三个是不对的.
在线等cleardevice();structsales*next;
在线等cleardevice();structsales*next;
nsignedchar*out,unsignedcharf_num ;if(f_num==1)ihead=ip1;
扫垃圾的人1年前1
waterfish_2004 共回答了21个问题 | 采纳率95.2%
eturn0;nResult=recv(sc,mess,M,0);/bListen=TRUE;对比break;break;
#include #include #include using namespace std;struct node{f
#include
#include
#include
using namespace std;
struct node
{
friend bool operator< (node n1,node n2)
{
return n2.cost < n1.cost;
}
int index,cap,cost;
};
priority_queue q;
bool mark[1001][101];
int p[1001];
int map[1001][1001];
vector list[1001];
int main()
{
//freopen("debug \in.txt","r",stdin);
int i,j,x,y,num,total,repeat,m,n;
node s,t;
cin>>m>>n;
for(i=0;i
qxcjl1年前1
七度空间 共回答了21个问题 | 采纳率95.2%
ZOJ2881的题目...
BFS+优先队列.用整数index标记搜索城市.路径列表是已知的,只要搜索所有可能的路径,然后比较
取最小值就行了.
以下是注释:
#include
#include
#include
using namespace std;
struct node //节点node结构体记录了当前的城市index、capcity和cost.
{
friend bool operator< (node n1,node n2) //operator>m>>n; //输入城市数和路径数.
for(i=0;i
(1/2)已知有如下声明,则sizeof(test)的值是_____?struct {int i; char c; fl
(1/2)已知有如下声明,则sizeof(test)的值是_____?struct {int i; char c; float a; }tes
tfji1年前1
lgh2005 共回答了18个问题 | 采纳率88.9%
32位机 vc6.0里面的值是12;不同的编译器会不同的.记得以前学的是int 占2字节,char 占1字节,float占4字节.
如有定义struct{int x;int y;}s[2]={{1,6},{3,9}},*p=s;printf("%d",
如有定义struct{int x;int y;}s[2]={{1,6},{3,9}},*p=s;printf("%d",p->y++);printf("%d",(++p)->x);
我运行过了
宛九1年前1
蝴蝶伤心的泪 共回答了17个问题 | 采纳率82.4%
哪儿不明白? 你给的题目不完整啊.
我给你改了i一下,你说吧(PS:注意分号的全角半角问题)
#include
struct mystruct
{
x09int x;
x09int y;
};
mystruct s[2]={{1,6},{3,9}};
void main()
{
mystruct *p=s;
printf("%dn",p->y++); //->优先级比++高,所以等价为p-y;y++,此时p指向s[0],只不过执行完后,s[0]的y加了1 所以6
printf("%dn",(++p)->x); //加了括号了,先算括号p++,p指向s[1], 所以 3
}